Merge tag 'tag-chrome-platform-for-v4.21' of git://git.kernel.org/pub/scm/linux/kerne...
[linux-2.6-block.git] / fs / nfs / delegation.c
index 6ec2f78c1e191ef3b7b3666fe458856d1fc547bc..885363ca8569909d96b15f8480fd4d57be1d0119 100644 (file)
 
 static void nfs_free_delegation(struct nfs_delegation *delegation)
 {
-       if (delegation->cred) {
-               put_rpccred(delegation->cred);
-               delegation->cred = NULL;
-       }
+       put_cred(delegation->cred);
+       delegation->cred = NULL;
        kfree_rcu(delegation, rcu);
 }
 
@@ -178,13 +176,13 @@ again:
  * @pagemod_limit: write delegation "space_limit"
  *
  */
-void nfs_inode_reclaim_delegation(struct inode *inode, struct rpc_cred *cred,
+void nfs_inode_reclaim_delegation(struct inode *inode, const struct cred *cred,
                                  fmode_t type,
                                  const nfs4_stateid *stateid,
                                  unsigned long pagemod_limit)
 {
        struct nfs_delegation *delegation;
-       struct rpc_cred *oldcred = NULL;
+       const struct cred *oldcred = NULL;
 
        rcu_read_lock();
        delegation = rcu_dereference(NFS_I(inode)->delegation);
@@ -195,12 +193,12 @@ void nfs_inode_reclaim_delegation(struct inode *inode, struct rpc_cred *cred,
                        delegation->type = type;
                        delegation->pagemod_limit = pagemod_limit;
                        oldcred = delegation->cred;
-                       delegation->cred = get_rpccred(cred);
+                       delegation->cred = get_cred(cred);
                        clear_bit(NFS_DELEGATION_NEED_RECLAIM,
                                  &delegation->flags);
                        spin_unlock(&delegation->lock);
                        rcu_read_unlock();
-                       put_rpccred(oldcred);
+                       put_cred(oldcred);
                        trace_nfs4_reclaim_delegation(inode, type);
                        return;
                }
@@ -341,7 +339,7 @@ nfs_update_inplace_delegation(struct nfs_delegation *delegation,
  *
  * Returns zero on success, or a negative errno value.
  */
-int nfs_inode_set_delegation(struct inode *inode, struct rpc_cred *cred,
+int nfs_inode_set_delegation(struct inode *inode, const struct cred *cred,
                                  fmode_t type,
                                  const nfs4_stateid *stateid,
                                  unsigned long pagemod_limit)
@@ -360,7 +358,7 @@ int nfs_inode_set_delegation(struct inode *inode, struct rpc_cred *cred,
        delegation->type = type;
        delegation->pagemod_limit = pagemod_limit;
        delegation->change_attr = inode_peek_iversion_raw(inode);
-       delegation->cred = get_rpccred(cred);
+       delegation->cred = get_cred(cred);
        delegation->inode = inode;
        delegation->flags = 1<<NFS_DELEGATION_REFERENCED;
        spin_lock_init(&delegation->lock);
@@ -1047,7 +1045,7 @@ void nfs_reap_expired_delegations(struct nfs_client *clp)
        struct nfs_delegation *delegation;
        struct nfs_server *server;
        struct inode *inode;
-       struct rpc_cred *cred;
+       const struct cred *cred;
        nfs4_stateid stateid;
 
 restart:
@@ -1069,7 +1067,7 @@ restart:
                                nfs_sb_deactive(server->super);
                                goto restart;
                        }
-                       cred = get_rpccred_rcu(delegation->cred);
+                       cred = get_cred_rcu(delegation->cred);
                        nfs4_stateid_copy(&stateid, &delegation->stateid);
                        clear_bit(NFS_DELEGATION_TEST_EXPIRED, &delegation->flags);
                        rcu_read_unlock();
@@ -1078,7 +1076,7 @@ restart:
                                nfs_revoke_delegation(inode, &stateid);
                                nfs_inode_find_state_and_recover(inode, &stateid);
                        }
-                       put_rpccred(cred);
+                       put_cred(cred);
                        if (nfs4_server_rebooted(clp)) {
                                nfs_inode_mark_test_expired_delegation(server,inode);
                                iput(inode);
@@ -1173,7 +1171,7 @@ out:
  * otherwise "false" is returned.
  */
 bool nfs4_copy_delegation_stateid(struct inode *inode, fmode_t flags,
-               nfs4_stateid *dst, struct rpc_cred **cred)
+               nfs4_stateid *dst, const struct cred **cred)
 {
        struct nfs_inode *nfsi = NFS_I(inode);
        struct nfs_delegation *delegation;
@@ -1187,7 +1185,7 @@ bool nfs4_copy_delegation_stateid(struct inode *inode, fmode_t flags,
                nfs4_stateid_copy(dst, &delegation->stateid);
                nfs_mark_delegation_referenced(delegation);
                if (cred)
-                       *cred = get_rpccred(delegation->cred);
+                       *cred = get_cred(delegation->cred);
        }
        rcu_read_unlock();
        return ret;