diff options
Diffstat (limited to 'fs/nfsd/nfs4state.c')
-rw-r--r-- | fs/nfsd/nfs4state.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c index 0e7e174de209..bc2fc9f076fc 100644 --- a/fs/nfsd/nfs4state.c +++ b/fs/nfsd/nfs4state.c | |||
@@ -3230,6 +3230,8 @@ nfs4_laundromat(struct nfsd_net *nn) | |||
3230 | spin_lock(&recall_lock); | 3230 | spin_lock(&recall_lock); |
3231 | list_for_each_safe(pos, next, &del_recall_lru) { | 3231 | list_for_each_safe(pos, next, &del_recall_lru) { |
3232 | dp = list_entry (pos, struct nfs4_delegation, dl_recall_lru); | 3232 | dp = list_entry (pos, struct nfs4_delegation, dl_recall_lru); |
3233 | if (net_generic(dp->dl_stid.sc_client->net, nfsd_net_id) != nn) | ||
3234 | continue; | ||
3233 | if (time_after((unsigned long)dp->dl_time, (unsigned long)cutoff)) { | 3235 | if (time_after((unsigned long)dp->dl_time, (unsigned long)cutoff)) { |
3234 | u = dp->dl_time - cutoff; | 3236 | u = dp->dl_time - cutoff; |
3235 | if (test_val > u) | 3237 | if (test_val > u) |
@@ -4922,6 +4924,8 @@ __nfs4_state_shutdown(struct net *net) | |||
4922 | spin_lock(&recall_lock); | 4924 | spin_lock(&recall_lock); |
4923 | list_for_each_safe(pos, next, &del_recall_lru) { | 4925 | list_for_each_safe(pos, next, &del_recall_lru) { |
4924 | dp = list_entry (pos, struct nfs4_delegation, dl_recall_lru); | 4926 | dp = list_entry (pos, struct nfs4_delegation, dl_recall_lru); |
4927 | if (dp->dl_stid.sc_client->net != net) | ||
4928 | continue; | ||
4925 | list_move(&dp->dl_recall_lru, &reaplist); | 4929 | list_move(&dp->dl_recall_lru, &reaplist); |
4926 | } | 4930 | } |
4927 | spin_unlock(&recall_lock); | 4931 | spin_unlock(&recall_lock); |