Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c32f1041 authored by Trond Myklebust's avatar Trond Myklebust Committed by Greg Kroah-Hartman
Browse files

nfsd: cleanup nfsd_file_lru_dispose()



commit 36ebbdb96b694dd9c6b25ad98f2bbd263d022b63 upstream.

Signed-off-by: default avatarTrond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
Cc: Khazhy Kumykov <khazhy@google.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 055c4cf7
Loading
Loading
Loading
Loading
+6 −7
Original line number Diff line number Diff line
@@ -260,8 +260,6 @@ nfsd_file_do_unhash(struct nfsd_file *nf)
		nfsd_reset_boot_verifier(net_generic(nf->nf_net, nfsd_net_id));
	--nfsd_file_hashtbl[nf->nf_hashval].nfb_count;
	hlist_del_rcu(&nf->nf_node);
	if (!list_empty(&nf->nf_lru))
		list_lru_del(&nfsd_file_lru, &nf->nf_lru);
	atomic_long_dec(&nfsd_filecache_count);
}

@@ -270,6 +268,8 @@ nfsd_file_unhash(struct nfsd_file *nf)
{
	if (test_and_clear_bit(NFSD_FILE_HASHED, &nf->nf_flags)) {
		nfsd_file_do_unhash(nf);
		if (!list_empty(&nf->nf_lru))
			list_lru_del(&nfsd_file_lru, &nf->nf_lru);
		return true;
	}
	return false;
@@ -406,15 +406,14 @@ nfsd_file_lru_cb(struct list_head *item, struct list_lru_one *lru,
static void
nfsd_file_lru_dispose(struct list_head *head)
{
	while(!list_empty(head)) {
		struct nfsd_file *nf = list_first_entry(head,
				struct nfsd_file, nf_lru);
		list_del_init(&nf->nf_lru);
	struct nfsd_file *nf;

	list_for_each_entry(nf, head, nf_lru) {
		spin_lock(&nfsd_file_hashtbl[nf->nf_hashval].nfb_lock);
		nfsd_file_do_unhash(nf);
		spin_unlock(&nfsd_file_hashtbl[nf->nf_hashval].nfb_lock);
		nfsd_file_put_noref(nf);
	}
	nfsd_file_dispose_list(head);
}

static unsigned long