fs: change d_hash for rcu-walk
[cascardo/linux.git] / Documentation / filesystems / Locking
index 7686e76..a15ee20 100644 (file)
@@ -10,8 +10,11 @@ be able to use diff(1).
 --------------------------- dentry_operations --------------------------
 prototypes:
        int (*d_revalidate)(struct dentry *, int);
-       int (*d_hash) (struct dentry *, struct qstr *);
-       int (*d_compare) (struct dentry *, struct qstr *, struct qstr *);
+       int (*d_hash)(const struct dentry *, const struct inode *,
+                       struct qstr *);
+       int (*d_compare)(const struct dentry *, const struct inode *,
+                       const struct dentry *, const struct inode *,
+                       unsigned int, const char *, const struct qstr *);
        int (*d_delete)(struct dentry *);
        void (*d_release)(struct dentry *);
        void (*d_iput)(struct dentry *, struct inode *);
@@ -20,7 +23,7 @@ prototypes:
 locking rules:
                dcache_lock     rename_lock     ->d_lock        may block
 d_revalidate:  no              no              no              yes
-d_hash         no              no              no              yes
+d_hash         no              no              no              no
 d_compare:     no              yes             no              no 
 d_delete:      yes             no              yes             no
 d_release:     no              no              no              yes
@@ -115,7 +118,6 @@ prototypes:
        ssize_t (*quota_read)(struct super_block *, int, char *, size_t, loff_t);
        ssize_t (*quota_write)(struct super_block *, int, const char *, size_t, loff_t);
        int (*bdev_try_to_free_page)(struct super_block*, struct page*, gfp_t);
-       int (*trim_fs) (struct super_block *, struct fstrim_range *);
 
 locking rules:
        All may block [not true, see below]
@@ -138,7 +140,6 @@ show_options:               no              (namespace_sem)
 quota_read:            no              (see below)
 quota_write:           no              (see below)
 bdev_try_to_free_page: no              (see below)
-trim_fs:               no
 
 ->statfs() has s_umount (shared) when called by ustat(2) (native or
 compat), but that's an accident of bad API; s_umount is used to pin