nfsd: remove dl_fh field from struct nfs4_delegation
authorJeff Layton <jlayton@primarydata.com>
Fri, 25 Jul 2014 11:34:27 +0000 (07:34 -0400)
committerJ. Bruce Fields <bfields@redhat.com>
Tue, 29 Jul 2014 18:49:58 +0000 (14:49 -0400)
Now that the nfs4_file has a filehandle in it, we no longer need to
keep a per-delegation copy of it. Switch to using the one in the
nfs4_file instead.

Signed-off-by: Jeff Layton <jlayton@primarydata.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
fs/nfsd/nfs4callback.c
fs/nfsd/nfs4state.c
fs/nfsd/state.h

index c393d6ca3fce838d9a9e47e3b7fbc3e299f81bb5..e9813389687b120271063835085e0c3241b1c2bc 100644 (file)
@@ -337,7 +337,7 @@ static void encode_cb_recall4args(struct xdr_stream *xdr,
        p = xdr_reserve_space(xdr, 4);
        *p++ = xdr_zero;                        /* truncate */
 
-       encode_nfs_fh4(xdr, &dp->dl_fh);
+       encode_nfs_fh4(xdr, &dp->dl_file->fi_fhandle);
 
        hdr->nops++;
 }
index ecfddca9b841e14770ff20cfba4a337d6220375c..b0f83beeca7541acc38c310f27cb6e58ce29907f 100644 (file)
@@ -604,7 +604,6 @@ alloc_init_deleg(struct nfs4_client *clp, struct svc_fh *current_fh)
        INIT_LIST_HEAD(&dp->dl_perclnt);
        INIT_LIST_HEAD(&dp->dl_recall_lru);
        dp->dl_type = NFS4_OPEN_DELEGATE_READ;
-       fh_copy_shallow(&dp->dl_fh, &current_fh->fh_handle);
        INIT_WORK(&dp->dl_recall.cb_work, nfsd4_run_cb_recall);
        return dp;
 out_dec:
@@ -3097,7 +3096,7 @@ void nfsd4_prepare_cb_recall(struct nfs4_delegation *dp)
        struct nfs4_client *clp = dp->dl_stid.sc_client;
        struct nfsd_net *nn = net_generic(clp->net, nfsd_net_id);
 
-       block_delegations(&dp->dl_fh);
+       block_delegations(&dp->dl_file->fi_fhandle);
 
        /*
         * We can't do this in nfsd_break_deleg_cb because it is
index 0097d4771521747c164b1e9d4c3012abc0ccdfb3..39747736e83b8e55020ca7afa193d785695558bd 100644 (file)
@@ -96,7 +96,6 @@ struct nfs4_delegation {
        u32                     dl_type;
        time_t                  dl_time;
 /* For recall: */
-       struct knfsd_fh         dl_fh;
        int                     dl_retries;
        struct nfsd4_callback   dl_recall;
 };