Re: [RFC] klibc requirements, round 2

Andreas Dilger (adilger@turbolabs.com)
Mon, 14 Jan 2002 16:58:49 -0700


On Jan 14, 2002 15:57 -0600, Oliver Xymoron wrote:
> On Mon, 14 Jan 2002, Theodore Tso wrote:
> > The development sources for e2fsprogs will already work with diet
> > libc. Unfortunately, diet libc doesn't do shared libraries, so
> > resulting binaries are sufficiently big that I doubt they would be
> > interesting for initrd and rescue floppy applications (which is why I
> > tried the experiment in the first place).
>
> For normal boot (which is what we are talking about, as all booting is
> moving to initramfs), we want enough code to get to the point where we
> mount root read-only (no fsck!) and that means enough to load modules and
> possibly get NFS up. And whatever else that's already in the kernel simply
> for boot that can be moved to userspace. Nothing else.

Actually, the whole point of Juan's suggestion was that you _don't_ want
to fsck a filesystem that is currently mounted. There is always a
potential problem that fsck will change the on-disk data of the filesystem
in a way that is not coherent with what the kernel has in-memory, which
should force a system reboot before continuing (which most initscripts
don't do). For ext2/ext3 this may be relatively safe (data/metadata don't
move around much), but reiserfsck cannot (or will not) fsck a mounted
filesystem at all.

It would be interesting to see if e2fsck could be linked into busybox or
another multi-call binary to avoid the overhead of the static libc linking.
I don't think there are any technical obstacles, just a matter of someone
sitting down and doing it. It would still be pretty big (150kB or so).

Cheers, Andreas

--
Andreas Dilger
http://sourceforge.net/projects/ext2resize/
http://www-mddsp.enel.ucalgary.ca/People/adilger/

- 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/