diff options
author | J. Bruce Fields <bfields@citi.umich.edu> | 2008-11-20 14:36:17 -0600 |
---|---|---|
committer | J. Bruce Fields <bfields@citi.umich.edu> | 2008-11-24 10:12:48 -0600 |
commit | 2c5e76158fcea6e3b9536a74efa7b5e2e846d374 (patch) | |
tree | dca1fcd75e3091b9ffe14b5461714fed1542dbba /fs/lockd/svc.c | |
parent | b726e923ea4d216027e466aa602d914e4b4a63af (diff) | |
download | op-kernel-dev-2c5e76158fcea6e3b9536a74efa7b5e2e846d374.zip op-kernel-dev-2c5e76158fcea6e3b9536a74efa7b5e2e846d374.tar.gz |
nfsd: clean up grace period on early exit
If nfsd was shut down before the grace period ended, we could end up
with a freed object still on grace_list. Thanks to Jeff Moyer for
reporting the resulting list corruption warnings.
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Tested-by: Jeff Moyer <jmoyer@redhat.com>
Diffstat (limited to 'fs/lockd/svc.c')
-rw-r--r-- | fs/lockd/svc.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/lockd/svc.c b/fs/lockd/svc.c index c631a83..56b07673 100644 --- a/fs/lockd/svc.c +++ b/fs/lockd/svc.c @@ -181,6 +181,7 @@ lockd(void *vrqstp) } flush_signals(current); cancel_delayed_work_sync(&grace_period_end); + locks_end_grace(&lockd_manager); if (nlmsvc_ops) nlmsvc_invalidate_all(); nlm_shutdown_hosts(); |