linux-stable/fs
Kemeng Shi db044fa740 fs/writeback: bail out if there is no more inodes for IO and queued once
[ Upstream commit d92109891f ]

For case there is no more inodes for IO in io list from last wb_writeback,
We may bail out early even there is inode in dirty list should be written
back. Only bail out when we queued once to avoid missing dirtied inode.

This is from code reading...

Signed-off-by: Kemeng Shi <shikemeng@huaweicloud.com>
Link: https://lore.kernel.org/r/20240228091958.288260-3-shikemeng@huaweicloud.com
Reviewed-by: Jan Kara <jack@suse.cz>
[brauner@kernel.org: fold in memory corruption fix from Jan in [1]]
Link: https://lore.kernel.org/r/20240405132346.bid7gibby3lxxhez@quack3 [1]
Signed-off-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-06-27 13:52:11 +02:00
..
9p 9p: add missing locking around taking dentry fid list 2024-06-16 13:51:01 +02:00
adfs mm, slab: remove last vestiges of SLAB_MEM_SPREAD 2024-03-12 20:32:19 -07:00
affs
afs afs: Don't cross .backup mountpoint from backup volume 2024-06-16 13:50:54 +02:00
autofs
bcachefs bcachefs: Add missing sched_annotate_sleep() in bch2_journal_flush_seq_async() 2024-05-07 11:02:37 -04:00
befs mm, slab: remove last vestiges of SLAB_MEM_SPREAD 2024-03-12 20:32:19 -07:00
bfs mm, slab: remove last vestiges of SLAB_MEM_SPREAD 2024-03-12 20:32:19 -07:00
btrfs btrfs: zoned: fix use-after-free due to race with dev replace 2024-06-21 14:40:37 +02:00
cachefiles cachefiles: flush all requests after setting CACHEFILES_DEAD 2024-06-21 14:40:16 +02:00
ceph ceph: switch to use cap_delay_lock for the unlink delay list 2024-04-11 22:56:28 +02:00
coda mm, slab: remove last vestiges of SLAB_MEM_SPREAD 2024-03-12 20:32:19 -07:00
configfs
cramfs fs,block: yield devices early 2024-03-27 13:17:15 +01:00
crypto fscrypt updates for 6.9 2024-03-12 13:17:36 -07:00
debugfs
devpts
dlm dlm: fix user space lock decision to copy lvb 2024-05-30 09:44:15 +02:00
ecryptfs ecryptfs: Fix buffer size for tag 66 packet 2024-05-30 09:44:04 +02:00
efivarfs
efs
erofs erofs: avoid allocating DEFLATE streams before mounting 2024-06-16 13:50:54 +02:00
exfat exfat: zero the reserved fields of file and stream extension dentries 2024-04-25 21:59:59 +09:00
exportfs
ext2 \n 2024-03-13 14:30:58 -07:00
ext4 ext4: fix mb_cache_entry's e_refcnt leak in ext4_xattr_block_cache_find() 2024-06-16 13:51:10 +02:00
f2fs f2fs: fix to do sanity check on i_xattr_nid in sanity_check_inode() 2024-06-16 13:50:54 +02:00
fat - Kuan-Wei Chiu has developed the well-named series "lib min_heap: Min 2024-03-14 18:03:09 -07:00
freevxfs mm, slab: remove last vestiges of SLAB_MEM_SPREAD 2024-03-12 20:32:19 -07:00
fuse fuse: clear FR_SENT when re-adding requests into pending list 2024-06-12 11:39:21 +02:00
gfs2 gfs2: do_xmote fixes 2024-05-30 09:44:24 +02:00
hfs
hfsplus
hostfs
hpfs mm, slab: remove last vestiges of SLAB_MEM_SPREAD 2024-03-12 20:32:19 -07:00
hugetlbfs
iomap iomap: fault in smaller chunks for non-large folio mappings 2024-06-16 13:51:04 +02:00
isofs mm, slab: remove last vestiges of SLAB_MEM_SPREAD 2024-03-12 20:32:19 -07:00
jbd2
jffs2 jffs2: prevent xattr node from overflowing the eraseblock 2024-05-30 09:44:06 +02:00
jfs jfs: xattr: fix buffer overflow for invalid xattr 2024-06-21 14:40:13 +02:00
kernfs kernfs: annotate different lockdep class for of->mutex of writable files 2024-04-14 06:55:46 -04:00
lockd NFSD 6.9 Release Notes 2024-03-12 14:27:37 -07:00
minix
netfs netfs: Fix setting of BDP_ASYNC from iocb flags 2024-06-12 11:39:44 +02:00
nfs NFS: add barriers when testing for NFS_FSDATA_BLOCKED 2024-06-21 14:40:17 +02:00
nfs_common
nfsd knfsd: LOOKUP can return an illegal error value 2024-06-21 14:40:33 +02:00
nilfs2 nilfs2: fix nilfs_empty_dir() misjudgment and long loop on I/O errors 2024-06-16 13:51:15 +02:00
nls
notify
ntfs3 fs/ntfs3: Use variable length array instead of fixed size 2024-06-12 11:39:29 +02:00
ocfs2 ocfs2: fix races between hole punching and AIO+DIO 2024-06-21 14:40:34 +02:00
omfs
openpromfs openpromfs: finish conversion to the new mount API 2024-05-30 09:44:03 +02:00
orangefs
overlayfs ovl: remove upper umask handling from ovl_create_upper() 2024-06-12 11:39:15 +02:00
proc fs/proc: fix softlockup in __read_vmcore 2024-06-21 14:40:33 +02:00
pstore
qnx4 mm, slab: remove last vestiges of SLAB_MEM_SPREAD 2024-03-12 20:32:19 -07:00
qnx6
quota mm, slab: remove last vestiges of SLAB_MEM_SPREAD 2024-03-12 20:32:19 -07:00
ramfs
reiserfs fs,block: yield devices early 2024-03-27 13:17:15 +01:00
romfs fs,block: yield devices early 2024-03-27 13:17:15 +01:00
smb ksmbd: fix missing use of get_write in in smb2_set_ea() 2024-06-21 14:40:26 +02:00
squashfs Squashfs: check the inode number is not the invalid value of zero 2024-04-16 15:39:50 -07:00
sysfs fs: sysfs: Fix reference leak in sysfs_break_active_protection() 2024-04-11 15:16:48 +02:00
sysv
tracefs eventfs: Update all the eventfs_inodes from the events descriptor 2024-06-21 14:40:11 +02:00
ubifs This pull request contains updates for UBI and UBIFS: 2024-03-21 15:09:29 -07:00
udf udf: Convert udf_expand_file_adinicb() to use a folio 2024-06-12 11:39:14 +02:00
ufs mm, slab: remove last vestiges of SLAB_MEM_SPREAD 2024-03-12 20:32:19 -07:00
unicode
vboxsf vboxsf: explicitly deny setlease attempts 2024-04-03 16:06:39 +02:00
verity fsverity: use register_sysctl_init() to avoid kmemleak warning 2024-06-16 13:50:56 +02:00
xfs Bug fixes for 6.9-rc3: 2024-04-06 09:14:18 -07:00
zonefs zonefs: Use str_plural() to fix Coccinelle warning 2024-04-10 07:23:47 +09:00
aio.c aio: Fix null ptr deref in aio_complete() wakeup 2024-04-05 11:20:28 +02:00
anon_inodes.c
attr.c lsm/stable-6.9 PR 20240312 2024-03-12 20:03:34 -07:00
backing-file.c
bad_inode.c
binfmt_elf.c
binfmt_elf_fdpic.c binfmt: replace deprecated strncpy 2024-03-21 20:20:52 -07:00
binfmt_elf_test.c
binfmt_flat.c
binfmt_misc.c
binfmt_script.c
buffer.c vfs-6.9.iomap 2024-03-11 10:07:03 -07:00
char_dev.c
compat_binfmt_elf.c
coredump.c
d_path.c
dax.c
dcache.c
direct-io.c
drop_caches.c
eventfd.c
eventpoll.c epoll: be better about file lifetimes 2024-05-05 14:00:48 -07:00
exec.c mm/ksm: fix ksm exec support for prctl 2024-05-30 09:44:56 +02:00
fcntl.c vfs-6.9.iomap 2024-03-11 10:07:03 -07:00
fhandle.c
file.c
file_table.c lsm/stable-6.9 PR 20240312 2024-03-12 20:03:34 -07:00
filesystems.c
fs-writeback.c fs/writeback: bail out if there is no more inodes for IO and queued once 2024-06-27 13:52:11 +02:00
fs_context.c
fs_parser.c
fs_pin.c
fs_struct.c
fs_types.c
fsopen.c
init.c
inode.c bcachefs updates for 6.9 2024-03-15 09:00:09 -07:00
internal.h pidfs: remove config option 2024-03-13 12:53:53 -07:00
ioctl.c fs: Return ENOTTY directly if FS_IOC_GETUUID or FS_IOC_GETFSSYSFSPATH fail 2024-04-09 12:03:49 +02:00
Kconfig - Sumanth Korikkar has taught s390 to allocate hotplug-time page frames 2024-03-14 17:43:30 -07:00
Kconfig.binfmt
kernel_read_file.c
libfs.c shmem: Fix shmem_rename2() 2024-05-30 09:44:06 +02:00
locks.c
Makefile vfs-6.9.pidfd 2024-03-11 10:21:06 -07:00
mbcache.c
mnt_idmapping.c
mount.h
mpage.c
namei.c security: Place security_path_post_mknod() where the original IMA call was 2024-04-03 10:21:32 -07:00
namespace.c
nsfs.c pidfs: remove config option 2024-03-13 12:53:53 -07:00
open.c lsm/stable-6.9 PR 20240312 2024-03-12 20:03:34 -07:00
pidfs.c pidfs: remove config option 2024-03-13 12:53:53 -07:00
pipe.c
pnode.c
pnode.h
posix_acl.c lsm/stable-6.9 PR 20240312 2024-03-12 20:03:34 -07:00
proc_namespace.c
read_write.c
readdir.c
remap_range.c
select.c
seq_file.c
signalfd.c
splice.c
stack.c
stat.c
statfs.c
super.c fs,block: yield devices early 2024-03-27 13:17:15 +01:00
sync.c
sysctls.c
timerfd.c
userfaultfd.c mm/userfaultfd: reset ptes when close() for wr-protected ones 2024-05-05 17:28:04 -07:00
utimes.c
xattr.c