Josef Sipek wrote:
On Wed, Jan 17, 2007 at 11:13:15AM -0500, Shaya Potter wrote:
Josef Sipek wrote:
On Fri, Jan 12, 2007 at 11:28:21AM -0500, Shaya Potter wrote:
Here's my optimization patch (quick and dirty, looks bigger than it is, most of it is changing indenting of already existing code within if() statements I added) w/ postmark numbers. I'm a little confused as now unionfs on backing store is faster than plain backing store (albiet not many test iterations and my methodology might be suspect, any thoughts?)
Hrm, I just tried to run the regression suite on the patched code (which got
commited last night) and it failed on create.sh. I am looking into it now.
the bug is (I beleive, haven't tested it yet) that I did bstart != bend based on dentry
The symptom is that we are not removing whiteouts on create. The first test
case of create.sh leaves 2 whiteouts behind:

/n/lower/b0/d1/.wh.x
/n/lower/b2/d1/d2/d3/d4/.wh.d
except that dentry in this case is the entry we want to create.

That dentry should still have the right b{start,end,opaque}, as someone
looked it up, no?

no, remember unionfs operates on namespaces not data. Directories are namespaces, files are data.

I've fixed the first case by switching to getting the data from the parent. (patch attached)

However, it doesn't fix the d4 case, as d4 only exists in one branch, so the whiteout is somewhat pointless, as there's nothing to white out. (in the b0/d1 case, b1/d1 contained an x directory so the whiteout accomplished something)

also, all your regressions scripts are bash dependent, so should use /bin/bash, not /bin/sh
_______________________________________________
unionfs mailing list
[email protected]
http://www.fsl.cs.sunysb.edu/mailman/listinfo/unionfs

Reply via email to