Whamcloud - gitweb
LU-7861 osp: replace the hot spinlock with atomic trackers
[fs/lustre-release.git] / lustre / llite / xattr_cache.c
index 031a470..a619db3 100644 (file)
@@ -24,7 +24,7 @@
 /*
  * Copyright 2012 Xyratex Technology Limited
  *
- * Copyright (c) 2013, 2014, Intel Corporation.
+ * Copyright (c) 2013, 2015, Intel Corporation.
  *
  * Author: Andrew Perepechko <Andrew_Perepechko@xyratex.com>
  *
@@ -312,7 +312,7 @@ static int ll_xattr_find_get_lock(struct inode *inode,
                                  struct lookup_intent *oit,
                                  struct ptlrpc_request **req)
 {
-       ldlm_mode_t mode;
+       enum ldlm_mode mode;
        struct lustre_handle lockh = { 0 };
        struct md_op_data *op_data;
        struct ll_inode_info *lli = ll_i2info(inode);
@@ -337,8 +337,8 @@ static int ll_xattr_find_get_lock(struct inode *inode,
                                        LCK_PR);
                if (mode != 0) {
                        /* fake oit in mdc_revalidate_lock() manner */
-                       oit->d.lustre.it_lock_handle = lockh.cookie;
-                       oit->d.lustre.it_lock_mode = mode;
+                       oit->it_lock_handle = lockh.cookie;
+                       oit->it_lock_mode = mode;
                        goto out;
                }
        }
@@ -363,7 +363,7 @@ static int ll_xattr_find_get_lock(struct inode *inode,
                RETURN(rc);
        }
 
-       *req = (struct ptlrpc_request *)oit->d.lustre.it_data;
+       *req = oit->it_request;
 out:
        down_write(&lli->lli_xattrs_list_rwsem);
        mutex_unlock(&lli->lli_xattrs_enq_lock);
@@ -410,10 +410,10 @@ static int ll_xattr_cache_refill(struct inode *inode, struct lookup_intent *oit)
                GOTO(out_maybe_drop, rc = -EIO);
        }
 
-       if (oit->d.lustre.it_status < 0) {
+       if (oit->it_status < 0) {
                CDEBUG(D_CACHE, "getxattr intent returned %d for fid "DFID"\n",
-                      oit->d.lustre.it_status, PFID(ll_inode2fid(inode)));
-               rc = oit->d.lustre.it_status;
+                      oit->it_status, PFID(ll_inode2fid(inode)));
+               rc = oit->it_status;
                /* xattr data is so large that we don't want to cache it */
                if (rc == -ERANGE)
                        rc = -EAGAIN;
@@ -499,8 +499,8 @@ out_destroy:
        up_write(&lli->lli_xattrs_list_rwsem);
 
        ldlm_lock_decref_and_cancel((struct lustre_handle *)
-                                       &oit->d.lustre.it_lock_handle,
-                                       oit->d.lustre.it_lock_mode);
+                                       &oit->it_lock_handle,
+                                       oit->it_lock_mode);
 
        goto out_no_unlock;
 }