Because of the changes made in dcache.h header file, files that use
the d_lock and d_count fields of the dentry structure need to be
changed accordingly.  All the d_lock's spin_lock() and spin_unlock()
calls are replaced by the corresponding d_lock() and d_unlock() calls.
References to d_count are replaced by the d_ret_count() calls.
There is no change in logic and everything should just work.

Signed-off-by: Waiman Long <[email protected]>
---
 fs/locks.c         |    2 +-
 include/linux/fs.h |    4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/fs/locks.c b/fs/locks.c
index cb424a4..558f83a 100644
--- a/fs/locks.c
+++ b/fs/locks.c
@@ -1351,7 +1351,7 @@ int generic_add_lease(struct file *filp, long arg, struct 
file_lock **flp)
        if ((arg == F_RDLCK) && (atomic_read(&inode->i_writecount) > 0))
                goto out;
        if ((arg == F_WRLCK)
-           && ((dentry->d_count > 1)
+           && ((d_ret_count(dentry) > 1)
                || (atomic_read(&inode->i_count) > 1)))
                goto out;
 
diff --git a/include/linux/fs.h b/include/linux/fs.h
index 65c2be2..68679b6 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -2588,9 +2588,9 @@ static inline ino_t parent_ino(struct dentry *dentry)
         * Don't strictly need d_lock here? If the parent ino could change
         * then surely we'd have a deeper race in the caller?
         */
-       spin_lock(&dentry->d_lock);
+       d_lock(dentry);
        res = dentry->d_parent->d_inode->i_ino;
-       spin_unlock(&dentry->d_lock);
+       d_unlock(dentry);
        return res;
 }
 
-- 
1.7.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to