android_kernel_xiaomi_sm8350/fs
Qu Fuping 3d9b1cdd24 JFS: fsync wrong behavior when I/O failure occurs
This is half of a patch that Qu Fuping submitted in April.  The first part
was applied to fs/mpage.c in 2.6.12-rc4.

jfs_fsync should return error, but it doesn't wait for the metadata page to
be uptodate, e.g.:
jfs_fsync->jfs_commit_inode->txCommit->diWrite->read_metapage->
__get_metapage->read_cache_page reads a page from disk. Because read is
async, when read_cache_page: err = filler(data, page), filler will not
return error, it just submits I/O request and returns. So, page is not
uptodate.  Checking only if(IS_ERROR(mp->page)) is not enough, we should
add "|| !PageUptodate(mp->page)"

Signed-off-by: Dave Kleikamp <shaggy@austin.ibm.com>
2005-07-15 10:36:08 -05:00
..
adfs
affs
afs [PATCH] Cleanup patch for process freezing 2005-06-25 17:10:13 -07:00
autofs
autofs4 [PATCH] autofs4: mistake in debug print 2005-07-07 18:23:46 -07:00
befs
bfs
cifs [CIFS] Fix cifs update of page cache. Write at correct offset when out of memory 2005-06-09 14:44:07 -07:00
coda [PATCH] class: convert the remaining class_simple users in the kernel to usee the new class api 2005-06-20 15:15:11 -07:00
cramfs
debugfs [PATCH] remove duplicate get_dentry functions in various places 2005-06-23 09:45:20 -07:00
devfs
devpts
efs
exportfs
ext2 [PATCH] ext2: fix mount options parting 2005-07-12 16:01:01 -07:00
ext3 [PATCH] ext3: fix options parsing 2005-07-12 16:01:01 -07:00
fat [PATCH] fatfs sectioning fix 2005-06-30 22:29:48 -07:00
freevxfs [PATCH] freevxfs: minor cleanups 2005-06-30 08:45:12 -07:00
hfs
hfsplus
hostfs [PATCH] uml: hostfs: unuse ROOT_DEV 2005-07-14 09:00:25 -07:00
hpfs
hppfs [PATCH] uml: fix hppfs error path 2005-07-14 09:00:25 -07:00
hugetlbfs [PATCH] Avoiding mmap fragmentation 2005-06-21 18:46:16 -07:00
isofs [PATCH] isofs: show hidden files, add granularity for assoc/hidden files flags 2005-06-21 19:07:38 -07:00
jbd [PATCH] Cleanup patch for process freezing 2005-06-25 17:10:13 -07:00
jffs [PATCH] fs/jffs/: cleanups 2005-06-25 16:25:04 -07:00
jffs2 [JFFS2] Avoid compiler warnings when JFFS2_FS_WRITEBUFFER=n 2005-07-13 00:03:19 +02:00
jfs JFS: fsync wrong behavior when I/O failure occurs 2005-07-15 10:36:08 -05:00
lockd [PATCH] NFS: procfs/sysctl interfaces for lockd do not work on x86_64 2005-07-13 11:25:24 -07:00
minix
msdos
ncpfs [PATCH] fs/ncpfs/: remove unused #ifdef USE_OLD_SLOW_DIRECTORY_LISTING code 2005-06-25 16:25:04 -07:00
nfs [PATCH] really remove xattr_acl.h 2005-06-28 21:20:31 -07:00
nfs_common [PATCH] NFSD: Add server support for NFSv3 ACLs. 2005-06-22 16:07:23 -04:00
nfsd [PATCH] inotify 2005-07-12 20:38:38 -07:00
nls
ntfs
openpromfs
partitions [PATCH] small partitions/msdos cleanups 2005-06-25 16:24:59 -07:00
proc [PATCH] kdump: Parse elf32 headers and export through /proc/vmcore 2005-06-25 16:24:53 -07:00
qnx4 [PATCH] fs/qnx4/*: fix sparse warnings 2005-06-24 14:14:24 -07:00
ramfs
reiserfs reiserfs: run scripts/Lindent on reiserfs code 2005-07-12 20:21:28 -07:00
romfs
smbfs
sysfs [PATCH] inotify 2005-07-12 20:38:38 -07:00
sysv
udf [PATCH] udf_find_entry() cleanup 2005-06-30 08:45:11 -07:00
ufs
umsdos
vfat
xfs [PATCH] Cleanup patch for process freezing 2005-06-25 17:10:13 -07:00
aio.c [PATCH] aio-retry-fix: fix aio retry work queueing 2005-06-28 21:20:32 -07:00
attr.c [PATCH] inotify 2005-07-12 20:38:38 -07:00
bad_inode.c
binfmt_aout.c [PATCH] Avoiding mmap fragmentation 2005-06-21 18:46:16 -07:00
binfmt_elf_fdpic.c
binfmt_elf.c [PATCH] Avoiding mmap fragmentation 2005-06-21 18:46:16 -07:00
binfmt_em86.c
binfmt_flat.c [PATCH] binfmt_flat mmap flag fix 2005-06-06 14:57:51 -07:00
binfmt_misc.c
binfmt_script.c
binfmt_som.c
bio.c [PATCH] mostly_read data section 2005-07-07 18:23:46 -07:00
block_dev.c [PATCH] block: add unlocked_ioctl support for block devices 2005-06-23 09:45:32 -07:00
buffer.c [PATCH] page_uptodate locking scalability 2005-07-07 18:23:45 -07:00
char_dev.c [PATCH] cdev: cdev_put oops 2005-07-12 16:01:02 -07:00
compat_ioctl.c
compat.c [PATCH] inotify 2005-07-12 20:38:38 -07:00
dcache.c
dcookies.c [PATCH] dcookies.c: use proper refcounting functions 2005-07-07 18:23:52 -07:00
direct-io.c [PATCH] pass iocb to dio_iodone_t 2005-06-24 00:05:19 -07:00
dnotify.c
dquot.c [PATCH] list_for_each_entry: fs-dquot.c 2005-06-25 16:25:11 -07:00
eventpoll.c [PATCH] Remove eventpoll macro obfuscation 2005-06-23 09:45:30 -07:00
exec.c [PATCH] reset real_timer target on exec leader change 2005-07-12 16:01:01 -07:00
fcntl.c
fifo.c
file_table.c [PATCH] inotify 2005-07-12 20:38:38 -07:00
file.c
filesystems.c
fs-writeback.c [PATCH] O(1) sb list traversing on syncs 2005-06-23 09:45:27 -07:00
inode.c [PATCH] Fix soft lockup due to NTFS: VFS part and explanation 2005-07-13 11:25:24 -07:00
inotify.c [PATCH] inotify: misc cleanup 2005-07-13 11:09:31 -07:00
ioctl.c
ioprio.c [PATCH] move ioprio syscalls into syscalls.h 2005-07-07 18:23:37 -07:00
Kconfig [PATCH] inotify 2005-07-12 20:38:38 -07:00
Kconfig.binfmt
libfs.c [PATCH] fix fsync(dir) return value for ram-based filesystems 2005-06-25 16:24:38 -07:00
locks.c [PATCH] coverity: fs/locks.c flp null check 2005-07-07 18:23:47 -07:00
Makefile [PATCH] inotify 2005-07-12 20:38:38 -07:00
mbcache.c
mpage.c [PATCH] mpage_end_io_write() I/O error handling fix 2005-06-04 17:12:59 -07:00
namei.c [PATCH] inotify 2005-07-12 20:38:38 -07:00
namespace.c [PATCH] namespace: rename mnt_fslink to mnt_expire 2005-07-07 18:23:52 -07:00
nfsctl.c
open.c [PATCH] inotify 2005-07-12 20:38:38 -07:00
pipe.c
posix_acl.c
quota_v1.c
quota_v2.c
quota.c [PATCH] O(1) sb list traversing on syncs 2005-06-23 09:45:27 -07:00
read_write.c [PATCH] inotify 2005-07-12 20:38:38 -07:00
readdir.c
select.c
seq_file.c
stat.c
super.c [PATCH] set mnt_namespace in the correct place 2005-07-07 18:23:52 -07:00
xattr_acl.c
xattr.c [PATCH] inotify 2005-07-12 20:38:38 -07:00