On Fri, 19 Feb 2016, Al Viro wrote: > On Fri, Feb 19, 2016 at 05:11:29PM -0500, Mike Marshall wrote: > > > Boo! Now a new problem is uncovered, I don't have a handle on it yet. > > Now it is possible to create a broken file on the orangefs server > > across a restart of the client-core. > > I suspect that it's your "getattr after create and leave dentry negative if > that getattr fails". Might make sense to d_drop() the sucker in case of > such late failure - or mark it so that subsequent d_revalidate() would > *not* skip getattr, despite NULL ->d_inode. > > Incidentally, why does your ->d_revalidate() bother with d_drop()? Just > have it return 0 and let the caller DTRT... > However I'm not so sure the kernel is at fault here. We see with a userspace tool which just opens a socket to the server that orangefs-readdir lists the file and orangefs-stat says ENOENT. Looks like the server's database is corrupt. -- Martin -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html