[PATCH] fuse: fix Oops in lookup
commit3cc15f4f6e5dbd44a0994f3a1fb5346a0260b8c9
authorMiklos Szeredi <miklos@szeredi.hu>
Sat, 25 Nov 2006 19:09:20 +0000 (25 11:09 -0800)
committerChris Wright <chrisw@sous-sol.org>
Sat, 2 Dec 2006 00:12:37 +0000 (1 16:12 -0800)
treef23e97ef26d70f4d9c30bb8ce2187b045a94d839
parent00e7bb6cc1034c0240c7e4474a79c51b6a1a8cbe
[PATCH] fuse: fix Oops in lookup

Fix bug in certain error paths of lookup routines.  The request object was
reused for sending FORGET, which is illegal.  This bug could cause an Oops
in 2.6.18.  In earlier versions it might silently corrupt memory, but this
is very unlikely.

These error paths are never triggered by libfuse, so this wasn't noticed
even with the 2.6.18 kernel, only with a filesystem using the raw kernel
interface.

Thanks to Russ Cox for the bug report and test filesystem.

Signed-off-by: Miklos Szeredi <miklos@szeredi.hu>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
[chrisw: backport to 2.6.18 -stable]
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
fs/fuse/dir.c