linux/fs/fuse
Miklos Szeredi 9efe56738f fuse: fix hang of single threaded fuseblk filesystem
commit 5a18ec176c upstream.

Single threaded NTFS-3G could get stuck if a delayed RELEASE reply
triggered a DESTROY request via path_put().

Fix this by

 a) making RELEASE requests synchronous, whenever possible, on fuseblk
 filesystems

 b) if not possible (triggered by an asynchronous read/write) then do
 the path_put() in a separate thread with schedule_work().

Reported-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-03-07 15:17:53 -08:00
..
control.c fuse: add fusectl interface to max_background 2009-09-16 14:15:29 +02:00
cuse.c CUSE: implement CUSE - Character device in Userspace 2009-06-09 11:24:11 +02:00
dev.c fuse: flush background queue on connection close 2010-09-20 13:17:46 -07:00
dir.c fuse: reject O_DIRECT flag also in fuse_create 2009-11-27 16:37:13 +01:00
file.c fuse: fix hang of single threaded fuseblk filesystem 2011-03-07 15:17:53 -08:00
fuse_i.h fuse: fix hang of single threaded fuseblk filesystem 2011-03-07 15:17:53 -08:00
inode.c truncate: use new helpers 2009-09-24 08:41:47 -04:00
Kconfig fs/Kconfig: move fuse out 2009-01-22 13:15:55 +03:00
Makefile CUSE: implement CUSE - Character device in Userspace 2009-06-09 11:24:11 +02:00