Looking for competent nullfs/umapfs/unionfs testers..

Ulrich Spoerlein q at uni.de
Thu Jan 27 07:04:44 PST 2005


On Thu, 27.01.2005 at 11:44:57 +0100, Poul-Henning Kamp wrote:
>     - will spend the time producing a minimal testcase for the failures
>       they encounter.

Well, I can only report a problem with NFS + Unionfs on 5.3. It is very
easily reproduceable, though it's definitely not a minimal test or a
regression test.

Steps needed:
# mount -t unionfs /vol /usr/ports
# mount -t nfs
coyote:/usr/ports on /usr/ports (nfs, read-only)
# mount -t unionfs
<above>:/vol on /usr/ports (unionfs, noclusterw)
# cd /usr/ports/emulators/linux_base-8
# make WRKDIRPREFIX="" install
...
brandelf: error opening file /usr/ports/emulators/linux_base-8/work/linux_base-8-8.0/sbin/ldconfig: Text file busy
*** Error code 1

Stop in /usr/ports/emulators/linux_base-8.
# brandelf -t Linux /usr/ports/emulators/linux_base-8/work/linux_base-8-8.0/sbin/*
brandelf: error opening file /usr/ports/emulators/linux_base-8/work/linux_base-8-8.0/sbin/install-info: Text file busy
brandelf: error opening file /usr/ports/emulators/linux_base-8/work/linux_base-8-8.0/sbin/ldconfig: Text file busy
# brandelf -t Linux /usr/ports/emulators/linux_base-8/work/linux_base-8-8.0/bin/*
brandelf: error opening file /usr/ports/emulators/linux_base-8/work/linux_base-8-8.0/bin/bash: Text file busy
brandelf: error opening file /usr/ports/emulators/linux_base-8/work/linux_base-8-8.0/bin/bash2: Text file busy
brandelf: error opening file /usr/ports/emulators/linux_base-8/work/linux_base-8-8.0/bin/chown: Text file busy
brandelf: file '/usr/ports/emulators/linux_base-8/work/linux_base-8-8.0/bin/egrep' is not ELF format
brandelf: file '/usr/ports/emulators/linux_base-8/work/linux_base-8-8.0/bin/fgrep' is not ELF format
brandelf: error opening file /usr/ports/emulators/linux_base-8/work/linux_base-8-8.0/bin/grep: Text file busy
brandelf: error opening file /usr/ports/emulators/linux_base-8/work/linux_base-8-8.0/bin/mv: Text file busy
brandelf: error opening file /usr/ports/emulators/linux_base-8/work/linux_base-8-8.0/bin/sh: Text file busy
# brandelf -t Linux /vol/emulators/linux_base-8/work/linux_base-8-8.0/bin/*
brandelf: file '/vol/emulators/linux_base-8/work/linux_base-8-8.0/bin/egrep' is not ELF format
brandelf: file '/vol/emulators/linux_base-8/work/linux_base-8-8.0/bin/fgrep' is not ELF format

So, trying to brandelf the files in the upper layer will fail on some
files (deterministically) and brandelfing the same files in the lower
layer succeeds (egrep and fgrep are false positives).

I have no clue what's wrong here, and if this is already fixed in 6.0 or
P4, even better! Just wanted to share a scenario where unionfs fails on
5.3.

Ulrich Spoerlein
-- 
 PGP Key ID: F0DB9F44				Encrypted mail welcome!
Fingerprint: F1CE D062 0CA9 ADE3 349B  2FE8 980A C6B5 F0DB 9F44
Ok, which part of "Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn."
didn't you understand?


More information about the freebsd-current mailing list