On Mon, Apr 16, 2007 at 11:24:37PM +0200, [EMAIL PROTECTED] wrote:
> Zitat von Vivek Goyal <[EMAIL PROTECTED]>:
> 
> > On Mon, Apr 16, 2007 at 04:44:37PM +0900, Simon Horman wrote:
> > > On Mon, Apr 16, 2007 at 10:59:12AM +0530, Vivek Goyal wrote:
> > > > On Mon, Apr 16, 2007 at 07:13:19AM +0200, Thomas Meyer wrote:
> > > > > Vivek Goyal schrieb:
> > > > > > On Sun, Apr 15, 2007 at 01:38:25PM +0200, Thomas Meyer wrote:
> > > > > >   
> > > > > >> Hi.
> > > > > >>
> > > > > >> Kexec fails with this error message:
> > > > > >>
> > > > > >> "Could not find a free area of memory of 9000 bytes...
> > > > > >> locate_hole failed"
> > > > > >>
> > > > > >> Kexec version is 1.101-r4 (gentoo)
> > > > > >> Linux kernel version is: 2.6.21-rc6
> > > > > >>
> > > > > >> cat /proc/iomem:
> > > > > >> cat iomem
> > > > > >> 00000000-0008efff : Conventional Memory
> > > > > >>   00000000-00000000 : Crash kernel
> > > > > >> 0008f000-0008ffff : ACPI NVS
> > > > > >> 00090000-0009ffff : Conventional Memory
> > > > > >> 000a0000-000bffff : Video RAM area
> > > > > >> 00100000-002fffff : Loader Data
> > > > > >> 00300000-3cc8cfff : Conventional Memory
> > > > > >> 3cc8d000-3ccd4fff : BootServices Data
> > > > > >> 3ccd5000-3d84efff : Conventional Memory
> > > > > >> [...]
> > > > > >>
> > > > > >> i've no clue what's wrong here.
> > > > > >>
> > > > > >> any ideas?
> > > > > >>     
> > > > > >
> > > > > > What architecture is this? 
> > > > > x86 and efi.
> > > > > > I think kexec does not find any suitable
> > > > > > RAM area to load segments that's why it is giving error. And the
> > reason
> > > > > > could be that while parsing /proc/iomem,  kexec looks for string
> > "System RAM"
> > > > > > to find out vaild RAM areas. In this case there are no "System RAM"
> > regions.
> > > > > >
> > > > > > What is "Conventional Memory"? Has there been some kernel changes
> > recently
> > > > > > or some other arch exports it in a different manner?
> > > > > >   
> > > > > No recent kernel changes. kexec never worked on this x86 efi machine
> > and
> > > > > i just wanted to find out why is that. the question is what to do
> > next,
> > > > > so it's going to work?
> > > > > 
> > > > 
> > > > I think kexec-tools can be modifed to be able to parse EFI style memory
> > > > map.
> > > 
> > > Isn't the problem that the kernel can't place the crash kernel region?
> > > 
> > 
> > Might be. I don't know. I think he is trying to first do a plain "kexec -l"
> > and not "kexec -p".
> Yes. This is true. I wanted to do "kexec -l"
> 
> 
> > Secondly, even if we reserve a memory for crashed kernel, I think
> > kexec-tools
> > is not aware of EFI style /proc/iomem export. So while launching into 
> > new kernel, it might try to boot a kenrel without any RAM area as it can't 
> > detect any...
> 
> I'm not sure about this...
> 
> I think linux should export a memory map under /proc/memmap (or something like
> that) and not misuse /proc/iomem for this. also the /proc/memmap should define
> a well-defined type for each memory region, let's say type 01 for "System ram"
> or like it's called on efi Conventional Memory...
> 
> because checking for "System Ram" doens't feel well for me...
> 

I think checking for "System RAM" is better than looking for numbers like
"01". Can't EFI memory regions map to existing conventions like "System RAM"
"Video RAM"? If yes, that would be the easiest solution otherwise I would
think putting support in kexec-tools to be able to parse and use EFI style
memory map. What to give it a shot?

Whether to use /proc/iomem or create a new entry /proc/phymem is a different
issue altogether. In fact in the past we wanted to create two such entries.
One which represents the memory present in the system as reported by BIOS
and other which represents the physical memory currently used by kernel
(kernel might boot in less memory if passed with mem= option).

Thanks
Vivek
_______________________________________________
fastboot mailing list
fastboot@lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/fastboot

Reply via email to