summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVasily Averin <vvs@virtuozzo.com>2017-11-06 08:23:24 -0500
committerJ. Bruce Fields <bfields@redhat.com>2017-11-27 16:45:10 -0500
commita3152f1440c762128a626d90718ba6535c81c1b4 (patch)
treeb9479ae1bddeec6d78fc7536c53a756cb9b1f646
parentb872285751c1af010e12d02bce7069e2061a58ca (diff)
lockd: added cleanup checks in exit_net hook
Signed-off-by: Vasily Averin <vvs@virtuozzo.com> Signed-off-by: J. Bruce Fields <bfields@redhat.com>
-rw-r--r--fs/lockd/svc.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/fs/lockd/svc.c b/fs/lockd/svc.c
index e28796bd7375..cb659ef789c0 100644
--- a/fs/lockd/svc.c
+++ b/fs/lockd/svc.c
@@ -677,6 +677,17 @@ static int lockd_init_net(struct net *net)
677 677
678static void lockd_exit_net(struct net *net) 678static void lockd_exit_net(struct net *net)
679{ 679{
680 struct lockd_net *ln = net_generic(net, lockd_net_id);
681
682 WARN_ONCE(!list_empty(&ln->lockd_manager.list),
683 "net %x %s: lockd_manager.list is not empty\n",
684 net->ns.inum, __func__);
685 WARN_ONCE(!list_empty(&ln->nsm_handles),
686 "net %x %s: nsm_handles list is not empty\n",
687 net->ns.inum, __func__);
688 WARN_ONCE(delayed_work_pending(&ln->grace_period_end),
689 "net %x %s: grace_period_end was not cancelled\n",
690 net->ns.inum, __func__);
680} 691}
681 692
682static struct pernet_operations lockd_net_ops = { 693static struct pernet_operations lockd_net_ops = {