All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] nfs: fix bdi_unregister() before sb kill
@ 2009-09-17 12:42 Jens Axboe
  2009-09-17 19:40 ` Jens Axboe
  0 siblings, 1 reply; 19+ messages in thread
From: Jens Axboe @ 2009-09-17 12:42 UTC (permalink / raw)
  To: Linux Kernel; +Cc: a.p.zijlstra, trond.myklebust

Hi,

This can cause a hang on NFS umount, since the bdi gets pruned before we
flush any pending dirty IO. Peter, can you check whether it fixes your
issue?

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>

diff --git a/fs/nfs/super.c b/fs/nfs/super.c
index de93569..f1cc058 100644
--- a/fs/nfs/super.c
+++ b/fs/nfs/super.c
@@ -2190,8 +2190,8 @@ static void nfs_kill_super(struct super_block *s)
 {
 	struct nfs_server *server = NFS_SB(s);
 
-	bdi_unregister(&server->backing_dev_info);
 	kill_anon_super(s);
+	bdi_unregister(&server->backing_dev_info);
 	nfs_fscache_release_super_cookie(s);
 	nfs_free_server(server);
 }

-- 
Jens Axboe


^ permalink raw reply related	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2009-09-18 20:44 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-09-17 12:42 [PATCH] nfs: fix bdi_unregister() before sb kill Jens Axboe
2009-09-17 19:40 ` Jens Axboe
2009-09-17 19:47   ` Peter Zijlstra
2009-09-17 19:48     ` Jens Axboe
2009-09-17 23:16   ` Trond Myklebust
2009-09-18  6:40     ` Jens Axboe
2009-09-18 15:02       ` Jens Axboe
2009-09-18 16:19         ` Trond Myklebust
2009-09-18 17:36           ` Jens Axboe
2009-09-18 18:32             ` Jens Axboe
2009-09-18 18:40               ` Trond Myklebust
2009-09-18 18:46                 ` Jens Axboe
2009-09-18 20:01                   ` Jens Axboe
2009-09-18 20:05                     ` Jens Axboe
2009-09-18 20:11                       ` Trond Myklebust
2009-09-18 20:16               ` Peter Zijlstra
2009-09-18 20:22                 ` Jens Axboe
2009-09-18 20:38                   ` Peter Zijlstra
2009-09-18 20:44                     ` Jens Axboe

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.