|Summary:||unionfs+nullfs strange behaviour|
|Component:||kern||Assignee:||freebsd-fs (Nobody) <fs>|
|Severity:||Affects Only Me||CC:||swills|
Description root 2016-11-08 14:33:21 UTC
Created attachment 176786 [details] An experimental patch for unionfs internal cache(Nov 8, 2016) ** This report may be related to, or duplicate of Bug #186360 ** With unionfs+nullfs, I saw a strange behaviour. # mkdir mountfrom1 mountfrom2 mountto # mkdir mountfrom1/a # touch mountfrom2/b # mount -t unionfs mountfrom1 mountto # mount -t nullfs mountfrom2 mountto/a # ls mountto/a/b ls: mountto/a/b: No such file or directory # ls mountto/a b # ls mountto/a/b mountto/a/b I digged into unionfs module, and found 'unionfs_lookup' is returning different vnode for same single object 'a', for mount and later "ls" command. It is caused by a bug in unionfs's internal cache (I think), and I solved it with an attached patch. Well, my patch omits a check for 'ISLASTCN', but I don't know why the check is needed.