mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-13 05:54:23 +08:00
nfsd41: clear DRC cache on free_session
Signed-off-by: Andy Adamson<andros@netapp.com> Signed-off-by: Benny Halevy <bhalevy@panasas.com> Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
This commit is contained in:
parent
da3846a286
commit
14778a133e
@ -441,12 +441,19 @@ release_session(struct nfsd4_session *ses)
|
||||
nfsd4_put_session(ses);
|
||||
}
|
||||
|
||||
static void nfsd4_release_respages(struct page **respages, short resused);
|
||||
|
||||
void
|
||||
free_session(struct kref *kref)
|
||||
{
|
||||
struct nfsd4_session *ses;
|
||||
int i;
|
||||
|
||||
ses = container_of(kref, struct nfsd4_session, se_ref);
|
||||
for (i = 0; i < ses->se_fnumslots; i++) {
|
||||
struct nfsd4_cache_entry *e = &ses->se_slots[i].sl_cache_entry;
|
||||
nfsd4_release_respages(e->ce_respages, e->ce_resused);
|
||||
}
|
||||
kfree(ses->se_slots);
|
||||
kfree(ses);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user