[buildd-tools-devel] Filesystem union v3
Jan-Marek Glogowski
glogow at fbihome.de
Tue Jun 30 18:05:38 UTC 2009
Hi everybody
This version incorporates most changes from
http://git.debian.org/?p=users/rleigh/schroot.git;a=shortlog;h=refs/heads/fs-union
It's based on my v2 patch-set. The patches from 02 to 08 just got a little
cleanup based on the comments from Roger Leigh at the beginning of this month.
3.1% debian/
8.5% etc/setup.d/
69.8% sbuild/
16.6% test/
59 files changed, 2075 insertions(+), 387 deletions(-)
> - fixed-length buffers
This is minimized to one occation now to read the pipe to get the filename.
> - passing pointers to objects rather than references
Should be fixed.
> + 'chroot_fs_union *overlay = 0;'
Fixed - this was C'n'P from the chroot_lvm_snapshot code just above.
> - use of dynamic cast in sbuild-session for chroot_plain. String
> comparisons are slower than dynamic cast and are *not* type-safe.
As chroot_directory is based on chroot_plain, dynamic cast won't work, as we
only want to skip the plain but not the directoty chroot. I'm now using
get_run_setup_scripts() instead of the string comparison.
> + The changes to run_parts break compatiblity with run-parts(8).
The current code reruns the failing script. The fs-union code doesn't depend
on this feature, as this is just a fix for the problem with loopback chroots
without fs-union, where the stop-skript 15killprocs killed the running chroot
when starting a second session, which failed and killed the first session.
Some comments for the individual patches:
[01] For me make check fails without it.
[02] The session_id from chroot is never set. chroot -b / -e don't work for me
as the group in the session file is empty.
[03-08] The previous patches with a little cleanup.
[09-10] From the rleigh/fs-union branch to drop chroot inheritance from
chroot_mountable.
[11] Is there a reason left, why it should be setable from outide the object?
I even tried to make the value a constructor parameter, which turned out
to become a code mess.
[12] Drop chroot inheritance from chroot_source, as 09/10 did for
chroot_mountable
[13] This simplifies fs-union support by introducing the underlay directory.
Based on the underlay changes in the rleigh/fs-union branch.
[14] As 13 - make union support binary configurable
[15] Fix for dh_prep
[16] As a consequence of the chroot inheritance drops - not finihed, but gets
you the idea.
[17] Remove the backup header file
Regards,
Jan-Marek Glogowski
More information about the Buildd-tools-devel
mailing list