From: Miklos Szeredi Date: Wed, 26 Apr 2006 08:49:06 +0000 (+0200) Subject: [fuse] fix deadlock between fuse_put_super() and request_end(), try #2 X-Git-Tag: v2.6.17-rc3~15 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6dbbcb120570d747b00783820ee02d1e1bcf63de;p=pandora-kernel.git [fuse] fix deadlock between fuse_put_super() and request_end(), try #2 A deadlock was possible, when the last reference to the superblock was held due to a background request containing a file reference. Releasing the file would release the vfsmount which in turn would release the superblock. Since sbput_sem is held during the fput() and fuse_put_super() tries to acquire this same semaphore, a deadlock results. The solution is to move the fput() outside the region protected by sbput_sem. Signed-off-by: Miklos Szeredi --- Reading git-diff-tree failed