Hi Erez,

Our project has been using unionfs for many years, and we recently moved from 
Linux 3.2.y to 3.16.y (3.16.43) .

The "   unionfs-2.6_for_3.16.1.diff.gz" applied surprisingly clean, and works 
properly after one week of testing.
Note, with this tweak to compile: 
http://www.fsl.cs.sunysb.edu/pipermail/unionfs/2016-November/006195.html

Though there is one corner case that is causing problems, which worked fine 
with Linux 3.2.88 .

A brief example:

We mount unionfs via an initrd as:
--
none on / type unionfs 
(rw,relatime,dirs=/oldroot/mnt/asturw=rw:/oldroot/mnt/asturo=ro)
--

Given this "ro" structure:
--
/oldroot/mnt/asturo/usr/share/file1
/oldroot/mnt/asturo/usr/share/file2
--

I can "touch /usr/share/foo" and this is added to the "rw" structure:
--
/oldroot/mnt/asturw/usr
/oldroot/mnt/asturw/usr/share
/oldroot/mnt/asturw/usr/share/foo
--

All works perfectly, so far.

In all previous unionfs version on 3.2.y and earlier I could then do:
--
rm -r /oldroot/mnt/asturw/usr
--
to basically "undo" the touch command, and not effect any active open "ro" 
files shining through, only effected /oldroot/mnt/asturw/ entries.

But with Linux 3.16.43, this has the side-effect of closing (in a general 
sense) all active files in the /usr/ path.  So if /usr/share/file1 was a 
running background script it would longer be alive, and unionfs segfault would 
appear soon thereafter.

Additionally, a "ls -l /usr" should not show any files or directories.  If I 
then do
--
mount -o remount -t unionfs /
--
the files reappear, but the originally open /usr/share/file1 now dead, is 
problematic.

Do you have any patch-sets later than "unionfs-2.6_for_3.16.1.diff.gz" that 
might fix this ?

Thanks so much for your work on unionfs !

Lonnie


_______________________________________________
unionfs mailing list: http://unionfs.filesystems.org/
[email protected]
http://www.fsl.cs.sunysb.edu/mailman/listinfo/unionfs

Reply via email to