|
@@ -1129,6 +1129,11 @@ destroy_client(struct nfs4_client *clp)
|
|
|
dp = list_entry(reaplist.next, struct nfs4_delegation, dl_recall_lru);
|
|
|
destroy_delegation(dp);
|
|
|
}
|
|
|
+ list_splice_init(&clp->cl_revoked, &reaplist);
|
|
|
+ while (!list_empty(&reaplist)) {
|
|
|
+ dp = list_entry(reaplist.next, struct nfs4_delegation, dl_recall_lru);
|
|
|
+ destroy_revoked_delegation(dp);
|
|
|
+ }
|
|
|
while (!list_empty(&clp->cl_openowners)) {
|
|
|
oo = list_entry(clp->cl_openowners.next, struct nfs4_openowner, oo_perclient);
|
|
|
release_openowner(oo);
|