diff options
author | Tejun Heo <htejun@gmail.com> | 2008-01-16 03:06:14 (GMT) |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2008-01-16 17:54:03 (GMT) |
commit | e49452c67703d3647467d65275fb893589384fed (patch) | |
tree | 137d7dea836f16f4efc3c709981dee3d306aa757 /fs/fuse/control.c | |
parent | cbd9c883696da72b2b1f03f909dbacc04bbf8b58 (diff) | |
download | linux-e49452c67703d3647467d65275fb893589384fed.tar.xz |
sysfs: make sysfs_lookup() return ERR_PTR(-ENOENT) on failed lookup
sysfs tries to keep dcache a strict subset of sysfs_dirent tree by
shooting down dentries when a node is removed, that is, no negative
dentry for sysfs. However, the lookup function returned NULL and thus
created negative dentries when the target node didn't exist.
Make sysfs_lookup() return ERR_PTR(-ENOENT) on lookup failure. This
fixes the NULL dereference bug in sysfs_get_dentry() discovered by
bluetooth rfcomm device moving around.
Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/fuse/control.c')
0 files changed, 0 insertions, 0 deletions