linux-next: manual merge of the vfs tree with Linus' tree

From: Stephen Rothwell
Date: Wed Sep 04 2013 - 22:59:30 EST


Hi Al,

Today's linux-next merge of the vfs tree got a conflict in fs/dcache.c
between commit 98474236f72e ("vfs: make the dentry cache use the lockref
infrastructure") from Linus' tree and commit 590fb51f1cf9 ("vfs: call
d_op->d_prune() before unhashing dentry") from the vfs tree.

I fixed it up (see below) and can carry the fix as necessary (no action
is required).

--
Cheers,
Stephen Rothwell sfr@xxxxxxxxxxxxxxxx

diff --cc fs/dcache.c
index 96655f4,2e5f9ca..0000000
--- a/fs/dcache.c
+++ b/fs/dcache.c
@@@ -726,7 -718,15 +726,15 @@@ restart
spin_lock(&inode->i_lock);
hlist_for_each_entry(dentry, &inode->i_dentry, d_alias) {
spin_lock(&dentry->d_lock);
- if (!dentry->d_count) {
+ if (!dentry->d_lockref.count) {
+ /*
+ * inform the fs via d_prune that this dentry
+ * is about to be unhashed and destroyed.
+ */
+ if ((dentry->d_flags & DCACHE_OP_PRUNE) &&
+ !d_unhashed(dentry))
+ dentry->d_op->d_prune(dentry);
+
__dget_dlock(dentry);
__d_drop(dentry);
spin_unlock(&dentry->d_lock);

Attachment: pgp00000.pgp
Description: PGP signature