diff options
author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2009-06-11 12:58:01 +0400 |
---|---|---|
committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2009-06-11 12:58:01 +0400 |
commit | 4894e4aca82aca927d0404ce61f021f790de4b1e (patch) | |
tree | bbe0d083829f5858295298f188d885367cf4b1f6 /fs/lockd | |
parent | 05e882f890038c702a4f15d385135d03cf74ad48 (diff) | |
parent | 07a2039b8eb0af4ff464efd3dfd95de5c02648c6 (diff) | |
download | linux-4894e4aca82aca927d0404ce61f021f790de4b1e.tar.xz |
Merge commit 'v2.6.30' into next
Diffstat (limited to 'fs/lockd')
-rw-r--r-- | fs/lockd/svc.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/fs/lockd/svc.c b/fs/lockd/svc.c index abf83881f68a..1a54ae14a192 100644 --- a/fs/lockd/svc.c +++ b/fs/lockd/svc.c @@ -104,6 +104,16 @@ static void set_grace_period(void) schedule_delayed_work(&grace_period_end, grace_period); } +static void restart_grace(void) +{ + if (nlmsvc_ops) { + cancel_delayed_work_sync(&grace_period_end); + locks_end_grace(&lockd_manager); + nlmsvc_invalidate_all(); + set_grace_period(); + } +} + /* * This is the lockd kernel thread */ @@ -149,10 +159,7 @@ lockd(void *vrqstp) if (signalled()) { flush_signals(current); - if (nlmsvc_ops) { - nlmsvc_invalidate_all(); - set_grace_period(); - } + restart_grace(); continue; } |