]> git.baikalelectronics.ru Git - kernel.git/commit
[PATCH] fuse: ensure FLUSH reaches userspace
authorMiklos Szeredi <miklos@szeredi.hu>
Sun, 25 Jun 2006 12:48:52 +0000 (05:48 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Sun, 25 Jun 2006 17:01:19 +0000 (10:01 -0700)
commit7ec67f06d6127e8e0b51d8fd25bc8a97b9ac2297
tree1ee4871a65f2b37a931c796463eb39737a32cbaa
parent98b1401fb13f5138b49eae2594bd567c39bd1809
[PATCH] fuse: ensure FLUSH reaches userspace

All POSIX locks owned by the current task are removed on close().  If the
FLUSH request resulting initiated by close() fails to reach userspace, there
might be locks remaining, which cannot be removed.

The only reason it could fail, is if allocating the request fails.  In this
case use the request reserved for RELEASE, or if that is currently used by
another FLUSH, wait for it to become available.

Signed-off-by: Miklos Szeredi <miklos@szeredi.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
fs/fuse/dev.c
fs/fuse/file.c
fs/fuse/fuse_i.h