OpenCloudOS-Kernel/fs/hfsplus
Eric Sesterhenn 706322496b Fix hfsplus oops on image without extents
Fix an oops with a corrupted hfs+ image.

See http://bugzilla.kernel.org/show_bug.cgi?id=10548 for details.

Problem is that we call hfs_btree_open() from hfsplus_fill_super() to set
HFSPLUS_SB(sb).[ext_tree|cat_tree] Both trees are still NULL at this moment.
If hfs_btree_open() fails for any reason it calls iput() on the page, which
gets to hfsplus_releasepage() which tries to access HFSPLUS_SB(sb).* which is
still NULL and oopses while dereferencing it.

[akpm@linux-foundation.org: build fix]
Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Cc: Roman Zippel <zippel@linux-m68k.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-05-13 08:02:24 -07:00
..
Makefile Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
bfind.c [PATCH] hfs: cleanup HFS+ prints 2006-01-18 19:20:22 -08:00
bitmap.c [PATCH] read_mapping_page for address space 2006-06-23 07:43:02 -07:00
bnode.c [PATCH] fs: Conversions from kmalloc+memset to k(z|c)alloc 2006-09-27 08:26:10 -07:00
brec.c [PATCH] hfs: cleanup HFS+ prints 2006-01-18 19:20:22 -08:00
btree.c hfsplus: fix warning with 64k PAGE_SIZE 2008-04-30 08:29:52 -07:00
catalog.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
dir.c HFS+: fix unlink of links 2008-04-10 13:37:51 -07:00
extents.c hfsplus: convert to new aops 2007-10-16 09:42:56 -07:00
hfsplus_fs.h fs/hfsplus/: proper externs 2008-04-29 08:06:00 -07:00
hfsplus_raw.h [PATCH] extend the set of "__attribute__" shortcut macros 2007-02-11 10:51:35 -08:00
inode.c Fix hfsplus oops on image without extents 2008-05-13 08:02:24 -07:00
ioctl.c [PATCH] r/o bind mounts: elevate write count for ioctls() 2008-04-19 00:29:24 -04:00
options.c hfsplus: handle match_strdup failure 2008-04-29 08:06:02 -07:00
part_tbl.c fix file specification in comments 2006-10-03 23:01:26 +02:00
super.c hfs/hfsplus: be*_add_cpu conversion 2008-04-30 08:29:51 -07:00
tables.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
unicode.c fs/hfsplus/unicode.c: fix uninitialized var warning 2008-02-08 09:22:36 -08:00
wrapper.c hfsplus: use get/put_unaligned_* helpers 2008-04-29 08:06:28 -07:00