diff options
Diffstat (limited to 'fs/autofs/waitq.c')
-rw-r--r-- | fs/autofs/waitq.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/autofs/waitq.c b/fs/autofs/waitq.c index f6385c6ef..44ba0cd4e 100644 --- a/fs/autofs/waitq.c +++ b/fs/autofs/waitq.c @@ -35,8 +35,9 @@ void autofs_catatonic_mode(struct autofs_sb_info *sbi) wq->status = -ENOENT; /* Magic is gone - report failure */ kfree(wq->name.name); wq->name.name = NULL; - wq->wait_ctr--; wake_up_interruptible(&wq->queue); + if (!--wq->wait_ctr) + kfree(wq); wq = nwq; } fput(sbi->pipe); /* Close the pipe */ |