android_kernel_xiaomi_sm8350/fs/udf
Dan Bastone 95f8797f42 [PATCH] initialize parts of udf inode earlier in create
Eric says:

> I saw an oops down this path when trying to create a new file on a UDF
> filesystem which was internally marked as readonly, but mounted rw:
>
> udf_create
>         udf_new_inode
>                 new_inode
>                         alloc_inode
>                         	udf_alloc_inode
>                 udf_new_block
>                         returns EIO due to readonlyness
>                 iput (on error)

I ran into the same issue today, but when listing a directory with
invalid/corrupt entries:

udf_lookup
        udf_iget
                get_new_inode_fast
                        alloc_inode
                                udf_alloc_inode
                __udf_read_inode
                        fails for any reason
                iput (on error)
                        ...

The following patch to udf_alloc_inode() should take care of both (and
other similar) cases, but I've only tested it with udf_lookup().

Signed-off-by: Dan Bastone <dan@pwienterprises.com>
Cc: Eric Sandeen <sandeen@sandeen.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-08-14 12:54:28 -07:00
..
balloc.c [PATCH] sem2mutex: UDF 2006-03-23 07:38:14 -08:00
crc.c remove pointers to the defunct UDF mailing list 2006-01-03 13:19:13 +01:00
dir.c [PATCH] Make most file operations structs in fs/ const 2006-03-28 09:16:06 -08:00
directory.c remove pointers to the defunct UDF mailing list 2006-01-03 13:19:13 +01:00
ecma_167.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
file.c [PATCH] mark address_space_operations const 2006-06-28 14:59:04 -07:00
fsync.c remove pointers to the defunct UDF mailing list 2006-01-03 13:19:13 +01:00
ialloc.c [PATCH] udf: initialize parts of inode earlier in create 2006-08-06 08:57:49 -07:00
inode.c [PATCH] mark address_space_operations const 2006-06-28 14:59:04 -07:00
lowlevel.c remove pointers to the defunct UDF mailing list 2006-01-03 13:19:13 +01:00
Makefile Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
misc.c remove pointers to the defunct UDF mailing list 2006-01-03 13:19:13 +01:00
namei.c [PATCH] UDF: Fix issues reported by Coverity in namei.c 2006-02-03 08:32:11 -08:00
osta_udf.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
partition.c remove pointers to the defunct UDF mailing list 2006-01-03 13:19:13 +01:00
super.c [PATCH] initialize parts of udf inode earlier in create 2006-08-14 12:54:28 -07:00
symlink.c [PATCH] mark address_space_operations const 2006-06-28 14:59:04 -07:00
truncate.c remove pointers to the defunct UDF mailing list 2006-01-03 13:19:13 +01:00
udf_i.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
udf_sb.h [PATCH] udf: fix uid/gid options and add uid/gid=ignore and forget options 2006-03-08 14:14:00 -08:00
udfdecl.h Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
udfend.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
udftime.c [PATCH] UDF filesystem: array '__mon_yday' declared as not static 2005-05-31 14:54:18 -07:00
unicode.c remove pointers to the defunct UDF mailing list 2006-01-03 13:19:13 +01:00