diff options
Diffstat (limited to 'fs/nfsd')
-rw-r--r-- | fs/nfsd/nfs4state.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c index a90949aefe80..21eb6788cb33 100644 --- a/fs/nfsd/nfs4state.c +++ b/fs/nfsd/nfs4state.c | |||
@@ -1129,6 +1129,11 @@ destroy_client(struct nfs4_client *clp) | |||
1129 | dp = list_entry(reaplist.next, struct nfs4_delegation, dl_recall_lru); | 1129 | dp = list_entry(reaplist.next, struct nfs4_delegation, dl_recall_lru); |
1130 | destroy_delegation(dp); | 1130 | destroy_delegation(dp); |
1131 | } | 1131 | } |
1132 | list_splice_init(&clp->cl_revoked, &reaplist); | ||
1133 | while (!list_empty(&reaplist)) { | ||
1134 | dp = list_entry(reaplist.next, struct nfs4_delegation, dl_recall_lru); | ||
1135 | destroy_revoked_delegation(dp); | ||
1136 | } | ||
1132 | while (!list_empty(&clp->cl_openowners)) { | 1137 | while (!list_empty(&clp->cl_openowners)) { |
1133 | oo = list_entry(clp->cl_openowners.next, struct nfs4_openowner, oo_perclient); | 1138 | oo = list_entry(clp->cl_openowners.next, struct nfs4_openowner, oo_perclient); |
1134 | release_openowner(oo); | 1139 | release_openowner(oo); |