aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeilBrown <neilb@cse.unsw.edu.au>2005-06-24 01:04:17 -0400
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-06-24 03:06:35 -0400
commitea1da636e956ad1591a74904f23d98bbc26a644b (patch)
tree193d0667adad25b094e209856dfcc1300d1d85dc
parent21ab45a480ec7705d177e959ebf452d62340c004 (diff)
[PATCH] knfsd: nfsd4: rename state list fields
Trivial renaming patch: I can never remember, while looking at various lists relating the nfsd4 state structures, which are the "heads" and which are items on other lists, or which structures are actually on the various lists. The following convention helps me: given structures foo and bar, with foo containing the head of a list of bars, use "bars" for the name of the head of the list contained in the struct foo, and use "per_foo" for the entries in the struct bars. Already done for struct nfs4_file; go ahead and do it for the other nfsd4 state structures. Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--fs/nfsd/nfs4state.c78
-rw-r--r--include/linux/nfsd/state.h18
2 files changed, 48 insertions, 48 deletions
diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
index 884115198116..22e76e3f06a5 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
@@ -154,8 +154,8 @@ alloc_init_deleg(struct nfs4_client *clp, struct nfs4_stateid *stp, struct svc_f
154 dp = kmem_cache_alloc(deleg_slab, GFP_KERNEL); 154 dp = kmem_cache_alloc(deleg_slab, GFP_KERNEL);
155 if (dp == NULL) 155 if (dp == NULL)
156 return dp; 156 return dp;
157 INIT_LIST_HEAD(&dp->dl_del_perfile); 157 INIT_LIST_HEAD(&dp->dl_perfile);
158 INIT_LIST_HEAD(&dp->dl_del_perclnt); 158 INIT_LIST_HEAD(&dp->dl_perclnt);
159 INIT_LIST_HEAD(&dp->dl_recall_lru); 159 INIT_LIST_HEAD(&dp->dl_recall_lru);
160 dp->dl_client = clp; 160 dp->dl_client = clp;
161 get_nfs4_file(fp); 161 get_nfs4_file(fp);
@@ -176,8 +176,8 @@ alloc_init_deleg(struct nfs4_client *clp, struct nfs4_stateid *stp, struct svc_f
176 current_fh->fh_handle.fh_size); 176 current_fh->fh_handle.fh_size);
177 dp->dl_time = 0; 177 dp->dl_time = 0;
178 atomic_set(&dp->dl_count, 1); 178 atomic_set(&dp->dl_count, 1);
179 list_add(&dp->dl_del_perfile, &fp->fi_delegations); 179 list_add(&dp->dl_perfile, &fp->fi_delegations);
180 list_add(&dp->dl_del_perclnt, &clp->cl_del_perclnt); 180 list_add(&dp->dl_perclnt, &clp->cl_delegations);
181 return dp; 181 return dp;
182} 182}
183 183
@@ -214,8 +214,8 @@ nfs4_close_delegation(struct nfs4_delegation *dp)
214static void 214static void
215unhash_delegation(struct nfs4_delegation *dp) 215unhash_delegation(struct nfs4_delegation *dp)
216{ 216{
217 list_del_init(&dp->dl_del_perfile); 217 list_del_init(&dp->dl_perfile);
218 list_del_init(&dp->dl_del_perclnt); 218 list_del_init(&dp->dl_perclnt);
219 spin_lock(&recall_lock); 219 spin_lock(&recall_lock);
220 list_del_init(&dp->dl_recall_lru); 220 list_del_init(&dp->dl_recall_lru);
221 spin_unlock(&recall_lock); 221 spin_unlock(&recall_lock);
@@ -345,11 +345,11 @@ expire_client(struct nfs4_client *clp)
345 345
346 INIT_LIST_HEAD(&reaplist); 346 INIT_LIST_HEAD(&reaplist);
347 spin_lock(&recall_lock); 347 spin_lock(&recall_lock);
348 while (!list_empty(&clp->cl_del_perclnt)) { 348 while (!list_empty(&clp->cl_delegations)) {
349 dp = list_entry(clp->cl_del_perclnt.next, struct nfs4_delegation, dl_del_perclnt); 349 dp = list_entry(clp->cl_delegations.next, struct nfs4_delegation, dl_perclnt);
350 dprintk("NFSD: expire client. dp %p, fp %p\n", dp, 350 dprintk("NFSD: expire client. dp %p, fp %p\n", dp,
351 dp->dl_flock); 351 dp->dl_flock);
352 list_del_init(&dp->dl_del_perclnt); 352 list_del_init(&dp->dl_perclnt);
353 list_move(&dp->dl_recall_lru, &reaplist); 353 list_move(&dp->dl_recall_lru, &reaplist);
354 } 354 }
355 spin_unlock(&recall_lock); 355 spin_unlock(&recall_lock);
@@ -361,8 +361,8 @@ expire_client(struct nfs4_client *clp)
361 list_del(&clp->cl_idhash); 361 list_del(&clp->cl_idhash);
362 list_del(&clp->cl_strhash); 362 list_del(&clp->cl_strhash);
363 list_del(&clp->cl_lru); 363 list_del(&clp->cl_lru);
364 while (!list_empty(&clp->cl_perclient)) { 364 while (!list_empty(&clp->cl_openowners)) {
365 sop = list_entry(clp->cl_perclient.next, struct nfs4_stateowner, so_perclient); 365 sop = list_entry(clp->cl_openowners.next, struct nfs4_stateowner, so_perclient);
366 release_stateowner(sop); 366 release_stateowner(sop);
367 } 367 }
368 put_nfs4_client(clp); 368 put_nfs4_client(clp);
@@ -380,8 +380,8 @@ create_client(struct xdr_netobj name, char *recdir) {
380 clp->cl_callback.cb_parsed = 0; 380 clp->cl_callback.cb_parsed = 0;
381 INIT_LIST_HEAD(&clp->cl_idhash); 381 INIT_LIST_HEAD(&clp->cl_idhash);
382 INIT_LIST_HEAD(&clp->cl_strhash); 382 INIT_LIST_HEAD(&clp->cl_strhash);
383 INIT_LIST_HEAD(&clp->cl_perclient); 383 INIT_LIST_HEAD(&clp->cl_openowners);
384 INIT_LIST_HEAD(&clp->cl_del_perclnt); 384 INIT_LIST_HEAD(&clp->cl_delegations);
385 INIT_LIST_HEAD(&clp->cl_lru); 385 INIT_LIST_HEAD(&clp->cl_lru);
386out: 386out:
387 return clp; 387 return clp;
@@ -1074,13 +1074,13 @@ alloc_init_open_stateowner(unsigned int strhashval, struct nfs4_client *clp, str
1074 INIT_LIST_HEAD(&sop->so_idhash); 1074 INIT_LIST_HEAD(&sop->so_idhash);
1075 INIT_LIST_HEAD(&sop->so_strhash); 1075 INIT_LIST_HEAD(&sop->so_strhash);
1076 INIT_LIST_HEAD(&sop->so_perclient); 1076 INIT_LIST_HEAD(&sop->so_perclient);
1077 INIT_LIST_HEAD(&sop->so_perfilestate); 1077 INIT_LIST_HEAD(&sop->so_stateids);
1078 INIT_LIST_HEAD(&sop->so_perlockowner); /* not used */ 1078 INIT_LIST_HEAD(&sop->so_perstateid); /* not used */
1079 INIT_LIST_HEAD(&sop->so_close_lru); 1079 INIT_LIST_HEAD(&sop->so_close_lru);
1080 sop->so_time = 0; 1080 sop->so_time = 0;
1081 list_add(&sop->so_idhash, &ownerid_hashtbl[idhashval]); 1081 list_add(&sop->so_idhash, &ownerid_hashtbl[idhashval]);
1082 list_add(&sop->so_strhash, &ownerstr_hashtbl[strhashval]); 1082 list_add(&sop->so_strhash, &ownerstr_hashtbl[strhashval]);
1083 list_add(&sop->so_perclient, &clp->cl_perclient); 1083 list_add(&sop->so_perclient, &clp->cl_openowners);
1084 sop->so_is_open_owner = 1; 1084 sop->so_is_open_owner = 1;
1085 sop->so_id = current_ownerid++; 1085 sop->so_id = current_ownerid++;
1086 sop->so_client = clp; 1086 sop->so_client = clp;
@@ -1098,10 +1098,10 @@ release_stateid_lockowners(struct nfs4_stateid *open_stp)
1098{ 1098{
1099 struct nfs4_stateowner *lock_sop; 1099 struct nfs4_stateowner *lock_sop;
1100 1100
1101 while (!list_empty(&open_stp->st_perlockowner)) { 1101 while (!list_empty(&open_stp->st_lockowners)) {
1102 lock_sop = list_entry(open_stp->st_perlockowner.next, 1102 lock_sop = list_entry(open_stp->st_lockowners.next,
1103 struct nfs4_stateowner, so_perlockowner); 1103 struct nfs4_stateowner, so_perstateid);
1104 /* list_del(&open_stp->st_perlockowner); */ 1104 /* list_del(&open_stp->st_lockowners); */
1105 BUG_ON(lock_sop->so_is_open_owner); 1105 BUG_ON(lock_sop->so_is_open_owner);
1106 release_stateowner(lock_sop); 1106 release_stateowner(lock_sop);
1107 } 1107 }
@@ -1116,10 +1116,10 @@ unhash_stateowner(struct nfs4_stateowner *sop)
1116 list_del(&sop->so_strhash); 1116 list_del(&sop->so_strhash);
1117 if (sop->so_is_open_owner) 1117 if (sop->so_is_open_owner)
1118 list_del(&sop->so_perclient); 1118 list_del(&sop->so_perclient);
1119 list_del(&sop->so_perlockowner); 1119 list_del(&sop->so_perstateid);
1120 while (!list_empty(&sop->so_perfilestate)) { 1120 while (!list_empty(&sop->so_stateids)) {
1121 stp = list_entry(sop->so_perfilestate.next, 1121 stp = list_entry(sop->so_stateids.next,
1122 struct nfs4_stateid, st_perfilestate); 1122 struct nfs4_stateid, st_perstateowner);
1123 if (sop->so_is_open_owner) 1123 if (sop->so_is_open_owner)
1124 release_stateid(stp, OPEN_STATE); 1124 release_stateid(stp, OPEN_STATE);
1125 else 1125 else
@@ -1141,11 +1141,11 @@ init_stateid(struct nfs4_stateid *stp, struct nfs4_file *fp, struct nfsd4_open *
1141 unsigned int hashval = stateid_hashval(sop->so_id, fp->fi_id); 1141 unsigned int hashval = stateid_hashval(sop->so_id, fp->fi_id);
1142 1142
1143 INIT_LIST_HEAD(&stp->st_hash); 1143 INIT_LIST_HEAD(&stp->st_hash);
1144 INIT_LIST_HEAD(&stp->st_perfilestate); 1144 INIT_LIST_HEAD(&stp->st_perstateowner);
1145 INIT_LIST_HEAD(&stp->st_perlockowner); 1145 INIT_LIST_HEAD(&stp->st_lockowners);
1146 INIT_LIST_HEAD(&stp->st_perfile); 1146 INIT_LIST_HEAD(&stp->st_perfile);
1147 list_add(&stp->st_hash, &stateid_hashtbl[hashval]); 1147 list_add(&stp->st_hash, &stateid_hashtbl[hashval]);
1148 list_add(&stp->st_perfilestate, &sop->so_perfilestate); 1148 list_add(&stp->st_perstateowner, &sop->so_stateids);
1149 list_add(&stp->st_perfile, &fp->fi_stateids); 1149 list_add(&stp->st_perfile, &fp->fi_stateids);
1150 stp->st_stateowner = sop; 1150 stp->st_stateowner = sop;
1151 get_nfs4_file(fp); 1151 get_nfs4_file(fp);
@@ -1167,7 +1167,7 @@ release_stateid(struct nfs4_stateid *stp, int flags)
1167 1167
1168 list_del(&stp->st_hash); 1168 list_del(&stp->st_hash);
1169 list_del(&stp->st_perfile); 1169 list_del(&stp->st_perfile);
1170 list_del(&stp->st_perfilestate); 1170 list_del(&stp->st_perstateowner);
1171 if (flags & OPEN_STATE) { 1171 if (flags & OPEN_STATE) {
1172 release_stateid_lockowners(stp); 1172 release_stateid_lockowners(stp);
1173 stp->st_vfs_file = NULL; 1173 stp->st_vfs_file = NULL;
@@ -1201,7 +1201,7 @@ release_state_owner(struct nfs4_stateid *stp, int flag)
1201 * released by the laundromat service after the lease period 1201 * released by the laundromat service after the lease period
1202 * to enable us to handle CLOSE replay 1202 * to enable us to handle CLOSE replay
1203 */ 1203 */
1204 if (sop->so_confirmed && list_empty(&sop->so_perfilestate)) 1204 if (sop->so_confirmed && list_empty(&sop->so_stateids))
1205 move_to_close_lru(sop); 1205 move_to_close_lru(sop);
1206} 1206}
1207 1207
@@ -1548,7 +1548,7 @@ find_delegation_file(struct nfs4_file *fp, stateid_t *stid)
1548{ 1548{
1549 struct nfs4_delegation *dp; 1549 struct nfs4_delegation *dp;
1550 1550
1551 list_for_each_entry(dp, &fp->fi_delegations, dl_del_perfile) { 1551 list_for_each_entry(dp, &fp->fi_delegations, dl_perfile) {
1552 if (dp->dl_stateid.si_stateownerid == stid->si_stateownerid) 1552 if (dp->dl_stateid.si_stateownerid == stid->si_stateownerid)
1553 return dp; 1553 return dp;
1554 } 1554 }
@@ -1892,7 +1892,7 @@ nfsd4_renew(clientid_t *clid)
1892 } 1892 }
1893 renew_client(clp); 1893 renew_client(clp);
1894 status = nfserr_cb_path_down; 1894 status = nfserr_cb_path_down;
1895 if (!list_empty(&clp->cl_del_perclnt) 1895 if (!list_empty(&clp->cl_delegations)
1896 && !atomic_read(&clp->cl_callback.cb_set)) 1896 && !atomic_read(&clp->cl_callback.cb_set))
1897 goto out; 1897 goto out;
1898 status = nfs_ok; 1898 status = nfs_ok;
@@ -2634,13 +2634,13 @@ alloc_init_lock_stateowner(unsigned int strhashval, struct nfs4_client *clp, str
2634 INIT_LIST_HEAD(&sop->so_idhash); 2634 INIT_LIST_HEAD(&sop->so_idhash);
2635 INIT_LIST_HEAD(&sop->so_strhash); 2635 INIT_LIST_HEAD(&sop->so_strhash);
2636 INIT_LIST_HEAD(&sop->so_perclient); 2636 INIT_LIST_HEAD(&sop->so_perclient);
2637 INIT_LIST_HEAD(&sop->so_perfilestate); 2637 INIT_LIST_HEAD(&sop->so_stateids);
2638 INIT_LIST_HEAD(&sop->so_perlockowner); 2638 INIT_LIST_HEAD(&sop->so_perstateid);
2639 INIT_LIST_HEAD(&sop->so_close_lru); /* not used */ 2639 INIT_LIST_HEAD(&sop->so_close_lru); /* not used */
2640 sop->so_time = 0; 2640 sop->so_time = 0;
2641 list_add(&sop->so_idhash, &lock_ownerid_hashtbl[idhashval]); 2641 list_add(&sop->so_idhash, &lock_ownerid_hashtbl[idhashval]);
2642 list_add(&sop->so_strhash, &lock_ownerstr_hashtbl[strhashval]); 2642 list_add(&sop->so_strhash, &lock_ownerstr_hashtbl[strhashval]);
2643 list_add(&sop->so_perlockowner, &open_stp->st_perlockowner); 2643 list_add(&sop->so_perstateid, &open_stp->st_lockowners);
2644 sop->so_is_open_owner = 0; 2644 sop->so_is_open_owner = 0;
2645 sop->so_id = current_ownerid++; 2645 sop->so_id = current_ownerid++;
2646 sop->so_client = clp; 2646 sop->so_client = clp;
@@ -2664,11 +2664,11 @@ alloc_init_lock_stateid(struct nfs4_stateowner *sop, struct nfs4_file *fp, struc
2664 goto out; 2664 goto out;
2665 INIT_LIST_HEAD(&stp->st_hash); 2665 INIT_LIST_HEAD(&stp->st_hash);
2666 INIT_LIST_HEAD(&stp->st_perfile); 2666 INIT_LIST_HEAD(&stp->st_perfile);
2667 INIT_LIST_HEAD(&stp->st_perfilestate); 2667 INIT_LIST_HEAD(&stp->st_perstateowner);
2668 INIT_LIST_HEAD(&stp->st_perlockowner); /* not used */ 2668 INIT_LIST_HEAD(&stp->st_lockowners); /* not used */
2669 list_add(&stp->st_hash, &lockstateid_hashtbl[hashval]); 2669 list_add(&stp->st_hash, &lockstateid_hashtbl[hashval]);
2670 list_add(&stp->st_perfile, &fp->fi_stateids); 2670 list_add(&stp->st_perfile, &fp->fi_stateids);
2671 list_add(&stp->st_perfilestate, &sop->so_perfilestate); 2671 list_add(&stp->st_perstateowner, &sop->so_stateids);
2672 stp->st_stateowner = sop; 2672 stp->st_stateowner = sop;
2673 get_nfs4_file(fp); 2673 get_nfs4_file(fp);
2674 stp->st_file = fp; 2674 stp->st_file = fp;
@@ -3081,8 +3081,8 @@ nfsd4_release_lockowner(struct svc_rqst *rqstp, struct nfsd4_release_lockowner *
3081 /* check for any locks held by any stateid 3081 /* check for any locks held by any stateid
3082 * associated with the (lock) stateowner */ 3082 * associated with the (lock) stateowner */
3083 status = nfserr_locks_held; 3083 status = nfserr_locks_held;
3084 list_for_each_entry(stp, &local->so_perfilestate, 3084 list_for_each_entry(stp, &local->so_stateids,
3085 st_perfilestate) { 3085 st_perstateowner) {
3086 if (check_for_locks(stp->st_vfs_file, local)) 3086 if (check_for_locks(stp->st_vfs_file, local))
3087 goto out; 3087 goto out;
3088 } 3088 }
diff --git a/include/linux/nfsd/state.h b/include/linux/nfsd/state.h
index 0e18ae22127d..f4f27b76ee64 100644
--- a/include/linux/nfsd/state.h
+++ b/include/linux/nfsd/state.h
@@ -72,8 +72,8 @@ struct nfs4_cb_recall {
72}; 72};
73 73
74struct nfs4_delegation { 74struct nfs4_delegation {
75 struct list_head dl_del_perfile; /* nfs4_file->fi_del_perfile */ 75 struct list_head dl_perfile;
76 struct list_head dl_del_perclnt; /* nfs4_client->cl_del_perclnt*/ 76 struct list_head dl_perclnt;
77 struct list_head dl_recall_lru; /* delegation recalled */ 77 struct list_head dl_recall_lru; /* delegation recalled */
78 atomic_t dl_count; /* ref count */ 78 atomic_t dl_count; /* ref count */
79 struct nfs4_client *dl_client; 79 struct nfs4_client *dl_client;
@@ -119,8 +119,8 @@ struct nfs4_callback {
119struct nfs4_client { 119struct nfs4_client {
120 struct list_head cl_idhash; /* hash by cl_clientid.id */ 120 struct list_head cl_idhash; /* hash by cl_clientid.id */
121 struct list_head cl_strhash; /* hash by cl_name */ 121 struct list_head cl_strhash; /* hash by cl_name */
122 struct list_head cl_perclient; /* list: stateowners */ 122 struct list_head cl_openowners;
123 struct list_head cl_del_perclnt; /* list: delegations */ 123 struct list_head cl_delegations;
124 struct list_head cl_lru; /* tail queue */ 124 struct list_head cl_lru; /* tail queue */
125 struct xdr_netobj cl_name; /* id generated by client */ 125 struct xdr_netobj cl_name; /* id generated by client */
126 char cl_recdir[HEXDIR_LEN]; /* recovery dir */ 126 char cl_recdir[HEXDIR_LEN]; /* recovery dir */
@@ -195,9 +195,9 @@ struct nfs4_stateowner {
195 struct kref so_ref; 195 struct kref so_ref;
196 struct list_head so_idhash; /* hash by so_id */ 196 struct list_head so_idhash; /* hash by so_id */
197 struct list_head so_strhash; /* hash by op_name */ 197 struct list_head so_strhash; /* hash by op_name */
198 struct list_head so_perclient; /* nfs4_client->cl_perclient */ 198 struct list_head so_perclient;
199 struct list_head so_perfilestate; /* list: nfs4_stateid */ 199 struct list_head so_stateids;
200 struct list_head so_perlockowner; /* nfs4_stateid->st_perlockowner */ 200 struct list_head so_perstateid; /* for lockowners only */
201 struct list_head so_close_lru; /* tail queue */ 201 struct list_head so_close_lru; /* tail queue */
202 time_t so_time; /* time of placement on so_close_lru */ 202 time_t so_time; /* time of placement on so_close_lru */
203 int so_is_open_owner; /* 1=openowner,0=lockowner */ 203 int so_is_open_owner; /* 1=openowner,0=lockowner */
@@ -240,8 +240,8 @@ struct nfs4_file {
240struct nfs4_stateid { 240struct nfs4_stateid {
241 struct list_head st_hash; 241 struct list_head st_hash;
242 struct list_head st_perfile; 242 struct list_head st_perfile;
243 struct list_head st_perfilestate; 243 struct list_head st_perstateowner;
244 struct list_head st_perlockowner; 244 struct list_head st_lockowners;
245 struct nfs4_stateowner * st_stateowner; 245 struct nfs4_stateowner * st_stateowner;
246 struct nfs4_file * st_file; 246 struct nfs4_file * st_file;
247 stateid_t st_stateid; 247 stateid_t st_stateid;