Commit be98d1bb authored by Andy Adamson's avatar Andy Adamson Committed by J. Bruce Fields
Browse files

nfsd41: reclaim DRC memory on session free



This fixes a leak which would eventually lock out new clients.

Signed-off-by: default avatarAndy Adamson <andros@netapp.com>
Signed-off-by: default avatarJ. Bruce Fields <bfields@citi.umich.edu>
parent 413d63d7
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -585,6 +585,9 @@ free_session(struct kref *kref)
		struct nfsd4_cache_entry *e = &ses->se_slots[i].sl_cache_entry;
		nfsd4_release_respages(e->ce_respages, e->ce_resused);
	}
	spin_lock(&nfsd_drc_lock);
	nfsd_drc_pages_used -= ses->se_fchannel.maxreqs * NFSD_PAGES_PER_SLOT;
	spin_unlock(&nfsd_drc_lock);
	kfree(ses);
}