Re: vmalloc kernel parameter

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

 



Followup to:  <[email protected]>
By author:    Sergey Vlasov <[email protected]>
In newsgroup: linux.dev.kernel
> 
> > Hi, I'm having troubles when using the vmalloc kernel parameter.
> > 
> > My grub config looks as shown below. If I set vmalloc to anything
> > bigger than 128M (the default) then the kernel will not boot and it
> > will log the following on the console:
> > 
> > VFS: Cannot open root device "LABEL=/" or unknown-block(0,0)
> > Please append a correct "root=" boot option
> > Kernel Panic - not syncing: VFS Unable to mount root fs on
> > unknown-block(0,0)
> > 
> > If I specify 128M or less then the kernel will boot just fine and
> > /proc/meminfo will show the effect in VmallocTotal.
> > 
> > Any hint on what I'm crashing with?
> 
> This is a known problem with GRUB: it tries to put initrd at the highest
> possible address in memory, and assumes the standard vmalloc area size.
> You need to trick GRUB into thinking that your machine has less memory
> by using "uppermem 524288" (512M) or even lower - then the initrd data
> will still be accessible for the kernel even with larger vmalloc area.
> 

Grub is just following protocol in that way.  The kernel really ought
to move the initrd to the spot that it wants, preferrably as early as
possible in the boot.  On i386, it could do it in assembly before even
enabling paging; on x86-64 none of this is an issue...

	-hpa

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux