[unionfs] deadlocking a 9-STABLE machine with two unionfs mounts onto the same mountpoint
Andre Albsmeier
andre at fbsd.ata.myota.org
Mon Feb 9 14:23:26 UTC 2015
Retrying here as -fs didn't show up any results...
----- Forwarded message -----
I can reliably deadlock a 9.3-STABLE by the following procedure:
Let's assume that /tmp is a standard swap-backed file system
already. First let's set up what we need:
mkdir /tmp/1 /tmp/2
mount -v -t unionfs /tmp/1 /usr/local
mount -v -t unionfs /tmp/2 /usr/local
No let's lock the system:
mkdir /tmp/2/bla
while :; do
echo go
tar -cC /usr/src/etc -f - . | tar -xpC /tmp/2/bla -f -
done
It survives about 3 or 4 rounds, sometimes more, sometimes
only 2. It is important to use tar to copy the stuff. If
we replace the tar line by e.g.
cp -pR /usr/src/etc/* /tmp/2/bla
things are all well.
The system doesn't lock up entirely, you can move the mouse
and ping it but no fs access is possible anymore. One can
switch to the console and enter the debugger but a reboot
with ctrl-alt-del doesn't work...
The interesting part is that all this worked pretty well on
9-STABLE until approx. 2 months ago. But nothing had been
committed to unionfs for a long time so I really have no
idea what's going on.
It also reminds us of
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=161511
but this stuff had been merged to 9-STABLE already...
Anything I can do to get this fixed?
----- End forwarded message -----
More information about the freebsd-hackers
mailing list