[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
AW: Re: Booting a kernel inside a large file, out of memory?
From: |
Sebert, Holger.ext |
Subject: |
AW: Re: Booting a kernel inside a large file, out of memory? |
Date: |
Tue, 9 Mar 2021 16:41:16 +0000 |
Hi Andrei,
> How are you expecting kernel to access its root filesystem if this root
> filesystem is not loaded in memory?
The kernel has a minmal initrd whose only task it is to mount the squashfs-
container (could be a separate file somewhere on the hard drive) and does
a `switch_root` into it.
Best,
Holger
________________________________________
Von: Help-grub <help-grub-bounces+holger.sebert.ext=karlstorz.com@gnu.org> im
Auftrag von Andrei Borzenkov <arvidjaar@gmail.com>
Gesendet: Freitag, 5. März 2021 19:16:46
An: help-grub@gnu.org
Betreff: [Ext] Re: Booting a kernel inside a large file, out of memory?
On 04.03.2021 17:51, Sebert, Holger.ext wrote:
> Hi!
>
> When booting a bzImage which is contained in a bigger file, does Grub
> load the whole file into memory or does it only load the bzImage from
> the file containing it?
>
It loads the whole file. Also it needs uncompressed size (and may
additionally need compressed size e.g. on secure boot system, where file
is loaded and verified before being used).
> Here is some background:
>
> I have a file, say "myimage", which contains both a kernel (bzImage)
> and a root filesystem (squashfs). The kernel is configured in a way to
> automatically boot into that filesystem.
>
How are you expecting kernel to access its root filesystem if this root
filesystem is not loaded in memory?
> I am booting the kernel inside "myimage" successfully using the
> following command:
>
> linux ($root)/myimage
> boot
>
> The root filesystem being contained in "myimage" is currently not huge,
> so it should fit into memory, but I am worried that this might change
> in the future and I can get an out-of-memory-condition. Therefore my
> question at the beginning of this mail.
>
> Thanks!
>
> Best,
> Holger
>