From: Vivek Goyal <vgoyal@in.ibm.com>
To: "H. Peter Anvin" <hpa@zytor.com>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>,
Don Zickus <dzickus@redhat.com>,
fastboot@osdl.org, Horms <horms@verge.net.au>,
Jan Kratochvil <lace@jankratochvil.net>,
Magnus Damm <magnus.damm@gmail.com>,
linux-kernel@vger.kernel.org
Subject: Re: [Fastboot] [CFT] ELF Relocatable x86 and x86_64 bzImages
Date: Mon, 14 Aug 2006 14:11:18 -0400 [thread overview]
Message-ID: <20060814181118.GB2519@in.ibm.com> (raw)
In-Reply-To: <44E0AD1D.1040408@zytor.com>
On Mon, Aug 14, 2006 at 10:04:29AM -0700, H. Peter Anvin wrote:
> Vivek Goyal wrote:
> >On Thu, Aug 10, 2006 at 02:09:58PM -0600, Eric W. Biederman wrote:
> >>>I just reserved memory at non 2MB aligned location 65MB@15MB so that
> >>>kernel is loaded at 16MB and other smaller segments below the compressed
> >>>image, then I can successfully booted into the kdump kernel.
> >>:)
> >>
> >>>So basically kexec on panic path seems to be clean except stomping issue.
> >>>May be bzImage program header should reflect right "MemSize" which
> >>>takes into account extra memory space calculations.
> >>Yes. That sounds like the right thing to do.
> >>
> >>I remember trying to compute a good memsize when I created the bzImage
> >>header but it is completely possible I missed some part of the
> >>calculation or assumed that the kernels .bss section would always be
> >>larger than what I needed for decompression.
> >>
>
> Could someone please describe the intended semantics of this MemSize
> header, *and* its intended usage?
>
Now and ELF header(attached to bzImage) is being used to describe
the kernel executable. One program header of PT_LOAD type is being
created. The "p_filesz" field of program header is basically
describing the vmlinux file size and "p_memsz" is giving how
much memory will be consumed by kernel image at load time.
Ideally "p_memsz" should be "p_memsz" summation of all the program
headers of vmlinux file but I guess in this case we are stretching the
ELF specification a little bit and also taking into the account the
additional memory which will be used by decompressor and decompression
logic by the time execution is transferred to the actual kernel.
The intended usage is currently kexec/kdump. While pre-loading a
kernel in memory, kexec creates multiple segments and puts various
data into it. (like kernel image, initrd, parameters etc.) Kexec
needs to know how much memory is being used by the loaded kernel so
that it can place another segment after kernel at a safe distance.
By reading "p_memsz" from ELF header, kexec can determine it.
Currently problem we are facing in kdump case is that parameter
segment (command line and other bootloader parameters) is being
placed immediately after kernel which gets stomped over by decompressor
code and kernel boot fails.
Normal boot never faces this problem as parameter segment is always
loaded below where kernel image is loaded.
Thanks
Vivek
next prev parent reply other threads:[~2006-08-14 18:13 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <aec7e5c30606300145p441d8d0xd89fab5e87de5a22@mail.gmail.com>
[not found] ` <20060705222448.GC992@in.ibm.com>
[not found] ` <aec7e5c30607051932r49bbcc7eh2c190daa06859dcc@mail.gmail.com>
[not found] ` <20060706081520.GB28225@host0.dyn.jankratochvil.net>
[not found] ` <aec7e5c30607070147g657d2624qa93a145dd4515484@mail.gmail.com>
[not found] ` <20060707133518.GA15810@in.ibm.com>
[not found] ` <20060707143519.GB13097@host0.dyn.jankratochvil.net>
[not found] ` <20060710233219.GF16215@in.ibm.com>
[not found] ` <20060711010815.GB1021@host0.dyn.jankratochvil.net>
[not found] ` <m1d5c92yv4.fsf@ebiederm.dsl.xmission.com>
2006-07-31 16:19 ` Eric W. Biederman
2006-07-31 20:25 ` Vivek Goyal
2006-07-31 21:00 ` [Fastboot] " Vivek Goyal
2006-08-01 2:31 ` Eric W. Biederman
2006-08-01 2:34 ` H. Peter Anvin
2006-08-01 3:44 ` Eric W. Biederman
2006-08-01 4:25 ` Jan Kratochvil
2006-08-01 9:09 ` Eric W. Biederman
2006-08-01 9:43 ` Jan Kratochvil
2006-08-01 11:28 ` Eric W. Biederman
2006-08-04 21:08 ` Don Zickus
2006-08-04 21:25 ` Eric W. Biederman
2006-08-04 23:43 ` Don Zickus
2006-08-05 7:49 ` Eric W. Biederman
2006-08-05 16:07 ` Eric W. Biederman
2006-08-07 17:44 ` Don Zickus
2006-08-07 18:08 ` Eric W. Biederman
2006-08-07 23:57 ` Don Zickus
2006-08-08 5:01 ` Eric W. Biederman
2006-08-08 19:36 ` Don Zickus
2006-08-09 20:06 ` Don Zickus
2006-08-10 6:09 ` Eric W. Biederman
2006-08-10 13:13 ` Vivek Goyal
2006-08-10 17:05 ` Eric W. Biederman
2006-08-10 18:18 ` Vivek Goyal
2006-08-10 20:09 ` Eric W. Biederman
2006-08-11 21:25 ` Don Zickus
2006-08-12 7:20 ` Eric W. Biederman
2006-08-12 15:25 ` Don Zickus
2006-08-12 19:41 ` Eric W. Biederman
2006-08-13 20:06 ` Andi Kleen
2006-08-13 21:44 ` Eric W. Biederman
2006-08-14 16:51 ` [Fastboot] " Vivek Goyal
2006-08-14 17:04 ` H. Peter Anvin
2006-08-14 18:11 ` Vivek Goyal [this message]
2006-08-14 19:32 ` H. Peter Anvin
2006-08-14 19:42 ` Vivek Goyal
2006-08-14 19:45 ` H. Peter Anvin
2006-08-14 19:57 ` Vivek Goyal
2006-08-14 20:10 ` Eric W. Biederman
2006-08-14 20:59 ` Vivek Goyal
2006-08-14 21:15 ` Eric W. Biederman
2006-08-14 20:00 ` Eric W. Biederman
2006-08-08 23:36 ` Andi Kleen
2006-08-25 20:16 ` Vivek Goyal
[not found] <6EIOG-2xY-31@gated-at.bofh.it>
[not found] ` <6EIOG-2xY-33@gated-at.bofh.it>
[not found] ` <6EIOG-2xY-35@gated-at.bofh.it>
[not found] ` <6EIOG-2xY-37@gated-at.bofh.it>
[not found] ` <6EIOG-2xY-39@gated-at.bofh.it>
[not found] ` <6EIOG-2xY-19@gated-at.bofh.it>
[not found] ` <6Gf5M-2zt-23@gated-at.bofh.it>
[not found] ` <6Gfpt-30C-49@gated-at.bofh.it>
[not found] ` <6GhAA-6bP-19@gated-at.bofh.it>
[not found] ` <6Gx2C-436-5@gated-at.bofh.it>
[not found] ` <6HhoT-5E7-33@gated-at.bofh.it>
[not found] ` <6HhRQ-6uk-3@gated-at.bofh.it>
2006-08-09 12:40 ` [Fastboot] " Bodo Eggert
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20060814181118.GB2519@in.ibm.com \
--to=vgoyal@in.ibm.com \
--cc=dzickus@redhat.com \
--cc=ebiederm@xmission.com \
--cc=fastboot@osdl.org \
--cc=horms@verge.net.au \
--cc=hpa@zytor.com \
--cc=lace@jankratochvil.net \
--cc=linux-kernel@vger.kernel.org \
--cc=magnus.damm@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®