lkml.org 
[lkml]   [2006]   [Jul]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [klibc 30/31] Remove in-kernel resume-from-disk invocation code
Nigel Cunningham wrote:
> Hi again.
>
> (Excuse me replying to myself, but this might help someone else).
>
> On Thursday 06 July 2006 11:45, Nigel Cunningham wrote:
>> Is there a klibc howto somewhere? I tried googling for 'klibc howto',
>> reading the files in Documentation/ and browsing your klibc mailing list
>> archive before asking!
>
>> What I'm wondering specifically is: Say a user needs to run some commands
>> to set up access to encrypted storage before they can resume. At the
>> moment, we'd tell them to put these commands and the echo > do_resume in
>> their linuxrc (or init) script prior to mounting their root filesystem.
>> Forgive me if I'm asking a stupid question but it's not immediately obvious
>> to me how they would now do that. I'd much rather follow a simple howto
>> than spend a good amount of time tracing function calls etc. I still see
>> init/initramfs.c, and it mentions both CONFIG_BLK_DEV_INITRD and
>> CONFIG_BLK_DEV_RAM. Would I be right in surmising that you can still have
>> an initrd or ramfs to do such things as the above, after klibc has done its
>> work? If not, is there some other way I'm ignorant of?
>
> For the record, I've since discovered that what you really want is an
> initramfs howto. I think I stuck with those old-fangled initrds for too long.
> Better update my desktop from Mandrake 10 too :)... is there a pattern here?
>

Okay, let's try to start from the beginning...

initramfs is, indeed, a replacement for initrd, but it's not a 1:1 map.
Instead, initramfs contents -- which can come from multiple sources!
-- is simply extracted right into rootfs.

kinit is a replacement for the in-kernel root-handling code, as well as
other related in-kernel code like resume from disk. It is compiled as a
monolithic binary for size reasons.

klibc is a very small C library which *can* be used to produce initramfs
binaries; in particular, it's used to produce kinit, and is small enough
that it can be realistically included with the kernel distribution.

If you provide your own /init in an initramfs, it will override the
default, which is /init -> /kinit. You can then choose to invoke kinit
if you want to; for example, you could try to resume from suspend2, and
invoke kinit if that fails.

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

\
 
 \ /
  Last update: 2006-07-06 05:13    [W:0.069 / U:1.724 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site