[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#805965: boot-s390-common, d390.ins: initrd overwrites kernel due to a low offset



On Tue, Nov 24, 2015 at 05:39:16PM +0100, Hendrik Brueckner wrote:
>On Tue, Nov 24, 2015 at 01:00:13PM +0000, Steve McIntyre wrote:
>> On Tue, Nov 24, 2015 at 12:38:16PM +0100, Hendrik Brueckner wrote:
>> >
>> >To correct this problem, please update the memory location to which
>> >the initrd is loaded from 0x00800000 (8M) to 0x02000000 (32MB).
>> >
>> >The 0x02000000 memory location is the preferred and commonly used
>> >memory location.   As far as I could see, this affects all d390.ins
>> >files, as well as, the boot-s390-common files which create the
>> >root.off file.
>> 
>> ACK, thanks for your report. In fact, just 2 weeks back Philipp Kern
>> (in CC) has added some fixes in this exact area in debian-cd
>> git. He's moved the root.bin up to 0x01000000 (16MB); I'd be happy to
>> move it up to 0x02000000 as you suggest. Phil - what do you think?
>
>Actually, the best solution would be to calculate this offset dynamically,
>and write the modified root.off and d390.ins file.  For the initrd offset
>calcuation, take the size of the vmlinuz kernel image + 4MB (0x00400000).

OK, that's easy enough. Are there any alignment issues to worry about
on top of that - do we have to pad that to the next 1MB, say?

>The 4MB just adds some place for the kernel BSS section.  It is not
>strictly necessary, as the kernel moves the initrd out of its BSS
>section before it clearing it.
>
>This would be the better solution and it works even if the kernel grows
>over time.

Yup, it's more sustainable.

>> I'm also going to make sure the fixes are backported to our stable
>> build tree for the next point release.
>
>Thanks.  For backports, it should be sufficient to increase the offset
>for current and future, we might consider the dynamic approach above.

Definitely.

-- 
Steve McIntyre, Cambridge, UK.                                steve@einval.com
"Managing a volunteer open source project is a lot like herding
 kittens, except the kittens randomly appear and disappear because they
 have day jobs." -- Matt Mackall


Reply to: