public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Limit E820 map when specifying mem parameter
@ 2008-06-24 14:35 Bernhard Walle
  2008-06-24 14:35 ` [PATCH 1/3] e820_update_range(): Strip size of original region Bernhard Walle
                   ` (2 more replies)
  0 siblings, 3 replies; 12+ messages in thread
From: Bernhard Walle @ 2008-06-24 14:35 UTC (permalink / raw)
  To: x86; +Cc: vgoyal, linux-kernel, yhlu.kernel, Bernhard Walle

This patch modifies the E820 map when specifying the mem kernel command line
parameter. That's the behaviour i386 had before the merging work in the
current "tip" tree.

As Yinghai Lu pointed out in email discussion, e820_update_range() should be
used for the updating instead of an own function. Two modifications in
e820_update_range() are necessary:

 1. Fix a small bug that prevented the partically covered entry from
    being stripped (size is not updated).
 
 2. Small API extension to be able to specify size == ULLONG_MAX to 
    update the whole map from size to the end.

The modification is necessary that kexec can build the ELF core headers only
for the used memory. Once the exporting of the real, unmodified memory map is
in the kernel, kexec can use the raw map and still reboot with full memory
size.

The patch is against 2.6.26-rc7-tip and has been successfully tested on i386
and x86-64, with and without "mem" parameter.


Signed-off-by: Bernhard Walle <bwalle@suse.de>



^ permalink raw reply	[flat|nested] 12+ messages in thread
* Limit E820 map when specifying mem parameter
@ 2008-06-25 12:02 Bernhard Walle
  2008-06-25 12:02 ` [PATCH 2/3] e820_update_range(): Allow specifying ULLONG_MAX Bernhard Walle
  0 siblings, 1 reply; 12+ messages in thread
From: Bernhard Walle @ 2008-06-25 12:02 UTC (permalink / raw)
  To: x86; +Cc: linux-kernel, vgoyal, kexec, yhlu.kernel

This patch modifies the E820 map when specifying the mem kernel command line
parameter. That's the behaviour i386 had before the merging work in the
current "tip" tree.

As Yinghai Lu pointed out in email discussion, e820_update_range() should be
used for the updating instead of an own function. Two modifications in
e820_update_range() are necessary:

 1. Fix a small bug that prevented the partically covered entry from
    being stripped (size is not updated).
 
 2. Small API extension to be able to specify size == ULLONG_MAX to 
    update the whole map from size to the end.

The modification is necessary that kexec can build the ELF core headers only
for the used memory. Once the exporting of the real, unmodified memory map is
in the kernel, kexec can use the raw map and still reboot with full memory
size.

The patch is against 2.6.26-rc7-tip and has been successfully tested on i386
and x86-64, with and without "mem" parameter.




^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2008-06-25 15:45 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-06-24 14:35 Limit E820 map when specifying mem parameter Bernhard Walle
2008-06-24 14:35 ` [PATCH 1/3] e820_update_range(): Strip size of original region Bernhard Walle
2008-06-24 19:57   ` Yinghai Lu
2008-06-25 12:04     ` Bernhard Walle
2008-06-24 14:35 ` [PATCH 2/3] e820_update_range(): Allow specifying ULLONG_MAX Bernhard Walle
2008-06-24 20:01   ` Yinghai Lu
2008-06-24 20:21     ` Yinghai Lu
2008-06-25 12:05       ` Bernhard Walle
2008-06-25 15:44         ` Ingo Molnar
2008-06-24 14:35 ` [PATCH 3/3] Limit E820 map when a user-defined memory map is specified Bernhard Walle
2008-06-24 20:03   ` Yinghai Lu
  -- strict thread matches above, loose matches on Subject: below --
2008-06-25 12:02 Limit E820 map when specifying mem parameter Bernhard Walle
2008-06-25 12:02 ` [PATCH 2/3] e820_update_range(): Allow specifying ULLONG_MAX Bernhard Walle

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox