linux/fs/ufs
Evgeniy Dushistov 07a0cfec30 ufs proper handling of zero link case
This patch should fix or partly fix this bug:
http://bugzilla.kernel.org/show_bug.cgi?id=8276

The problem is:

- if we see "zero link case" during reading inode operation, we call
  ufs_error(which remount fs readonly), but not "mark" inode as bad (1)

- in readonly case we do not fill some data structures, which are used in
  read and write case (2)

- VFS call ufs_delete_inode if link count is zero (3)

so (1)->(3)->(2) cause oops, this patch should fix such scenario

Signed-off-by: Evgeniy Dushistov <dushistov@mail.ru>
Cc: Jim Paris <jim@jtan.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-04-17 16:36:27 -07:00
..
balloc.c [PATCH] ufs: zeroize the rest of block in truncate 2007-03-16 19:25:03 -07:00
cylinder.c [PATCH] ufs: easy debug 2006-06-25 10:01:03 -07:00
dir.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
file.c [PATCH] Streamline generic_file_* interfaces and filemap cleanups 2006-10-01 00:39:28 -07:00
ialloc.c [PATCH] ufs2: more correct work with time 2007-03-16 19:25:03 -07:00
inode.c ufs proper handling of zero link case 2007-04-17 16:36:27 -07:00
Makefile Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
namei.c [PATCH] mark struct inode_operations const 3 2007-02-12 09:48:46 -08:00
super.c [PATCH] Mark struct super_operations const 2007-02-12 09:48:47 -08:00
swab.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
symlink.c [PATCH] mark struct inode_operations const 3 2007-02-12 09:48:46 -08:00
truncate.c [PATCH] ufs2: tindirect truncate fix 2007-03-16 19:25:03 -07:00
util.c [PATCH] ufs endianness annotations 2006-10-10 16:15:34 -07:00
util.h [PATCH] ufs2 write: block allocation update 2007-02-12 09:48:40 -08:00