Release Engineering

Tasklist

FS#17237 - use blkid/mount instead of fstype

Attached to Project: Release Engineering
Opened by Sven-Hendrik Haase (Svenstaro) - Saturday, 21 November 2009, 19:27 GMT
Last edited by Dieter Plaetinck (Dieter_be) - Friday, 05 March 2010, 18:16 GMT
Task Type Feature Request
Category ArchISO
Status Closed
Assigned To Aaron Griffin (phrakture)
Thomas Bächler (brain0)
Architecture All
Severity Low
Priority Normal
Reported Version 2009.08
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

This suggestion is solely for the hooks/archiso hook. For some reason, fstype is used in there and it is giving trouble as it doesn't support a few important file systems. Missing vfat support gives trouble with mounting from USB ( FS#14919 ) and missing udf support gives trouble when sqfs files are bigger than 4GiB. I realize the latter is a problem that I am probably the only person ever to have but open-source is about getting personal gripes fixed, right? ;)

I suggest relying on mount's own fs detection ability (which in turn uses blkid when available) to ease the process of fs detection. mount can successfully detect vfat, iso9660, sqfs, udf, ext4 without any babysitting. Why not use it?

Also I realize that I might not be realizing what the reason for using fstype actually is. If it is that blkid is not available during hook-time then we might as well just put it in the initrd as a binary. This would solve some problems easily.

Before I get out a patch we should probably discuss this.
This task depends upon

Closed by  Dieter Plaetinck (Dieter_be)
Friday, 05 March 2010, 18:16 GMT
Reason for closing:  Fixed
Additional comments about closing:   FS#17298 
Comment by Aaron Griffin (phrakture) - Wednesday, 25 November 2009, 17:39 GMT
The mount that is in klibc is not the same mount as on a live system and does not use blkid. This can only happen when/if we complete the move away from klibc to uClibc.
Comment by Sven-Hendrik Haase (Svenstaro) - Wednesday, 25 November 2009, 18:11 GMT
I see. So the easiest thing probably is nagging the klibc project for integrating support into fstype that will allow us to properly discover all our filesystems?
Comment by Aaron Griffin (phrakture) - Wednesday, 25 November 2009, 18:15 GMT
Well, if you REALLY want to help here, I'm sure Thomas could use some help with the uClibc conversion. That's the more promising route, considering that klibc is largely unmaintained these days.
Comment by Thomas Bächler (brain0) - Wednesday, 25 November 2009, 18:18 GMT
FYI, mkinitcpio will move to glibc+busybox, plus a few tools like blkid and module-init-tools just taken from the real system (dynamically linked). Building the uclibc toolchain is not less pain than klibc if you want to compile things like blkid properly. Thus, I decided we will have much less maintenance effort with glibc.
Comment by Sven-Hendrik Haase (Svenstaro) - Wednesday, 25 November 2009, 18:28 GMT
So no klibc nor uclibc but straight glibc? Fair enough. Any rough estimate for this, Thomas? How can one help?
Comment by Aaron Griffin (phrakture) - Wednesday, 25 November 2009, 18:43 GMT
Erm... glibc is going to make this huge. Do you have any benchmarks to see how much this affects initial boot time?

Also, does the busybox mount support blkid?
Comment by Sven-Hendrik Haase (Svenstaro) - Wednesday, 25 November 2009, 18:56 GMT
Just did a small test on the size and our initcpio would grow by 5 to 7MB if we are to use lzma.
Comment by Sven-Hendrik Haase (Svenstaro) - Wednesday, 25 November 2009, 19:06 GMT
The current capabilities of busybox's own mount/blkid can be found here (yes it does support blkid): http://git.busybox.net/busybox/tree/e2fsprogs/blkid/probe.c?id=9aa7f2005d78f1b51376f66d639bd54a6396e915
It does vfat, udf, iso9660. However it doesn't do ext4.
Comment by Thomas Bächler (brain0) - Friday, 27 November 2009, 10:42 GMT
I didn't test yet because I'm really short on time right now. I thought we might have 4 to 5MB of initramfs, that should be fine. As for what needs to be done, see http://bugs.archlinux.org/task/17298.
Comment by Mark Pustjens (unknown) - Thursday, 18 February 2010, 11:37 GMT
Although  FS#17237  has been implemented, the archiso/archiso-early mkinitcpio hooks (part of archiso, not mkinitcpio) have not been fixed yet.
Comment by Thomas Bächler (brain0) - Thursday, 18 February 2010, 12:33 GMT
Fixes for this are applied to archiso git, and some are pending in Aaron's working tree, but he should push them to archiso master ASAP. This has also been tested by Gerardo, see the recent threads about it on arch-releng.

Size increase compared to the klibc images should be no more than 1MB from my experience. Our fears that glibc will make our images "huge" were unfounded - our average initramfs is still smaller than what I have seen in any other distribution so far.
Comment by Mark Pustjens (unknown) - Thursday, 18 February 2010, 13:29 GMT
Archiso-git now seems so use blkid.
Comment by Sven-Hendrik Haase (Svenstaro) - Friday, 26 February 2010, 23:12 GMT
Close this please

Loading...