diff options
author | Scott Mayhew <smayhew@redhat.com> | 2019-03-26 18:06:26 -0400 |
---|---|---|
committer | J. Bruce Fields <bfields@redhat.com> | 2019-04-24 09:46:34 -0400 |
commit | 6b1891052a3f8e3c3217e8512bbed2fd6252977b (patch) | |
tree | 4968ba406e795b3e4cd9fd7d245f1aede666f303 /fs/nfsd/state.h | |
parent | 9d69338c8c5fc68e9ae3ab23d01356ca024b789e (diff) |
nfsd: make nfs4_client_reclaim use an xdr_netobj instead of a fixed char array
This will allow the reclaim_str_hashtbl to store either the recovery
directory names used by the legacy client tracking code or the full
client strings used by the nfsdcld client tracking code.
Signed-off-by: Scott Mayhew <smayhew@redhat.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'fs/nfsd/state.h')
-rw-r--r-- | fs/nfsd/state.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/fs/nfsd/state.h b/fs/nfsd/state.h index 9d6cb246c6c5..0b74d371ed67 100644 --- a/fs/nfsd/state.h +++ b/fs/nfsd/state.h | |||
@@ -368,7 +368,7 @@ struct nfs4_client { | |||
368 | struct nfs4_client_reclaim { | 368 | struct nfs4_client_reclaim { |
369 | struct list_head cr_strhash; /* hash by cr_name */ | 369 | struct list_head cr_strhash; /* hash by cr_name */ |
370 | struct nfs4_client *cr_clp; /* pointer to associated clp */ | 370 | struct nfs4_client *cr_clp; /* pointer to associated clp */ |
371 | char cr_recdir[HEXDIR_LEN]; /* recover dir */ | 371 | struct xdr_netobj cr_name; /* recovery dir name */ |
372 | }; | 372 | }; |
373 | 373 | ||
374 | /* A reasonable value for REPLAY_ISIZE was estimated as follows: | 374 | /* A reasonable value for REPLAY_ISIZE was estimated as follows: |
@@ -620,7 +620,7 @@ void nfs4_put_stid(struct nfs4_stid *s); | |||
620 | void nfs4_inc_and_copy_stateid(stateid_t *dst, struct nfs4_stid *stid); | 620 | void nfs4_inc_and_copy_stateid(stateid_t *dst, struct nfs4_stid *stid); |
621 | void nfs4_remove_reclaim_record(struct nfs4_client_reclaim *, struct nfsd_net *); | 621 | void nfs4_remove_reclaim_record(struct nfs4_client_reclaim *, struct nfsd_net *); |
622 | extern void nfs4_release_reclaim(struct nfsd_net *); | 622 | extern void nfs4_release_reclaim(struct nfsd_net *); |
623 | extern struct nfs4_client_reclaim *nfsd4_find_reclaim_client(const char *recdir, | 623 | extern struct nfs4_client_reclaim *nfsd4_find_reclaim_client(struct xdr_netobj name, |
624 | struct nfsd_net *nn); | 624 | struct nfsd_net *nn); |
625 | extern __be32 nfs4_check_open_reclaim(clientid_t *clid, | 625 | extern __be32 nfs4_check_open_reclaim(clientid_t *clid, |
626 | struct nfsd4_compound_state *cstate, struct nfsd_net *nn); | 626 | struct nfsd4_compound_state *cstate, struct nfsd_net *nn); |
@@ -635,9 +635,9 @@ extern void nfsd4_destroy_callback_queue(void); | |||
635 | extern void nfsd4_shutdown_callback(struct nfs4_client *); | 635 | extern void nfsd4_shutdown_callback(struct nfs4_client *); |
636 | extern void nfsd4_shutdown_copy(struct nfs4_client *clp); | 636 | extern void nfsd4_shutdown_copy(struct nfs4_client *clp); |
637 | extern void nfsd4_prepare_cb_recall(struct nfs4_delegation *dp); | 637 | extern void nfsd4_prepare_cb_recall(struct nfs4_delegation *dp); |
638 | extern struct nfs4_client_reclaim *nfs4_client_to_reclaim(const char *name, | 638 | extern struct nfs4_client_reclaim *nfs4_client_to_reclaim(struct xdr_netobj name, |
639 | struct nfsd_net *nn); | 639 | struct nfsd_net *nn); |
640 | extern bool nfs4_has_reclaimed_state(const char *name, struct nfsd_net *nn); | 640 | extern bool nfs4_has_reclaimed_state(struct xdr_netobj name, struct nfsd_net *nn); |
641 | 641 | ||
642 | struct nfs4_file *find_file(struct knfsd_fh *fh); | 642 | struct nfs4_file *find_file(struct knfsd_fh *fh); |
643 | void put_nfs4_file(struct nfs4_file *fi); | 643 | void put_nfs4_file(struct nfs4_file *fi); |