android_kernel_oneplus_msm8998/fs/xfs
Vratislav Bendel 22668f45d6 xfs: Correctly invert xfs_buftarg LRU isolation logic
commit 19957a181608d25c8f4136652d0ea00b3738972d upstream.

Due to an inverted logic mistake in xfs_buftarg_isolate()
the xfs_buffers with zero b_lru_ref will take another trip
around LRU, while isolating buffers with non-zero b_lru_ref.

Additionally those isolated buffers end up right back on the LRU
once they are released, because b_lru_ref remains elevated.

Fix that circuitous route by leaving them on the LRU
as originally intended.

Signed-off-by: Vratislav Bendel <vbendel@redhat.com>
Reviewed-by: Brian Foster <bfoster@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Alex Lyakas <alex@zadara.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-11-06 12:09:25 +01:00
..
libxfs xfs: don't fail when converting shortform attr to long form during ATTR_REPLACE 2019-01-26 09:42:52 +01:00
Kconfig
kmem.c xfs: remove kmem_zalloc_greedy 2017-10-08 10:14:20 +02:00
kmem.h xfs: remove kmem_zalloc_greedy 2017-10-08 10:14:20 +02:00
Makefile xfs: stats are no longer dependent on CONFIG_PROC_FS 2015-10-19 08:42:46 +11:00
mrlock.h
uuid.c
uuid.h
xfs.h
xfs_acl.c posix_acl: Clear SGID bit when setting file permissions 2016-10-31 04:13:58 -06:00
xfs_acl.h xfs: Fix error path in xfs_get_acl 2015-11-10 10:09:45 +11:00
xfs_aops.c xfs: ubsan fixes 2018-02-03 17:04:29 +01:00
xfs_aops.h xfs: DAX does not use IO completion callbacks 2015-11-03 12:37:02 +11:00
xfs_attr.h xfs: only return -errno or success from attr ->put_listent 2017-06-07 12:06:03 +02:00
xfs_attr_inactive.c Merge branch 'xfs-misc-fixes-for-4.2-3' into for-next 2015-06-23 08:49:01 +10:00
xfs_attr_list.c xfs: only return -errno or success from attr ->put_listent 2017-06-07 12:06:03 +02:00
xfs_bmap_util.c xfs: bad assertion for delalloc an extent that start at i_size 2017-06-07 12:06:02 +02:00
xfs_bmap_util.h xfs: Add support FALLOC_FL_INSERT_RANGE for fallocate 2015-03-25 15:08:56 +11:00
xfs_buf.c xfs: Correctly invert xfs_buftarg LRU isolation logic 2019-11-06 12:09:25 +01:00
xfs_buf.h xfs: fix up quotacheck buffer list error handling 2017-06-07 12:06:02 +02:00
xfs_buf_item.c Merge branch 'xfs-misc-fixes-for-4.3-3' into for-next 2015-08-25 10:13:35 +10:00
xfs_buf_item.h xfs: fix non-debug build warnings 2015-08-25 10:05:13 +10:00
xfs_dir2_readdir.c xfs: prevent multi-fsb dir readahead from reading random blocks 2017-06-07 12:06:02 +02:00
xfs_discard.c Force log to disk before reading the AGF during a fstrim 2018-05-30 07:49:07 +02:00
xfs_discard.h
xfs_dquot.c xfs: per-filesystem stats counter implementation 2015-10-12 18:21:22 +11:00
xfs_dquot.h
xfs_dquot_item.c
xfs_dquot_item.h
xfs_error.c xfs: print name of verifier if it fails 2016-06-07 18:14:38 -07:00
xfs_error.h xfs: remove inst_t 2015-06-22 09:44:02 +10:00
xfs_export.c VFS: normal filesystems (and lustre): d_inode() annotations 2015-04-15 15:06:57 -04:00
xfs_export.h
xfs_extent_busy.c
xfs_extent_busy.h
xfs_extfree_item.c xfs: add helper to conditionally remove items from the AIL 2015-08-19 10:01:08 +10:00
xfs_extfree_item.h xfs: fix efi/efd error handling to avoid fs shutdown hangs 2015-08-19 09:51:16 +10:00
xfs_file.c xfs: prevent creating negative-sized file via INSERT_RANGE 2018-05-16 10:06:48 +02:00
xfs_filestream.c xfs: clean up XFS_MIN_FREELIST macros 2015-06-22 10:13:30 +10:00
xfs_filestream.h
xfs_fsops.c xfs: Don't wrap growfs AGFL indexes 2016-06-07 18:14:38 -07:00
xfs_fsops.h
xfs_globals.c
xfs_icache.c xfs: update ag iterator to support wait on new inodes 2017-06-07 12:06:02 +02:00
xfs_icache.h xfs: update ag iterator to support wait on new inodes 2017-06-07 12:06:02 +02:00
xfs_icreate_item.c
xfs_icreate_item.h
xfs_inode.c xfs: skip stale inodes in xfs_iflush_cluster 2016-06-07 18:14:38 -07:00
xfs_inode.h xfs: support ability to wait on new inodes 2017-06-07 12:06:02 +02:00
xfs_inode_item.c xfs: optimise away log forces on timestamp updates for fdatasync 2015-11-03 13:14:59 +11:00
xfs_inode_item.h xfs: optimise away log forces on timestamp updates for fdatasync 2015-11-03 13:14:59 +11:00
xfs_ioctl.c xfs: in _attrlist_by_handle, copy the cursor back to userspace 2017-06-07 12:06:03 +02:00
xfs_ioctl.h
xfs_ioctl32.c xfs: prefix XATTR_LIST_MAX with XFS_ 2015-10-12 16:02:56 +11:00
xfs_ioctl32.h
xfs_iomap.c Merge branch 'xfs-dax-updates' into for-next 2015-11-03 13:28:41 +11:00
xfs_iomap.h
xfs_iops.c xfs: per-filesystem stats counter implementation 2015-10-12 18:21:22 +11:00
xfs_iops.h
xfs_itable.c xfs: remove kmem_zalloc_greedy 2017-10-08 10:14:20 +02:00
xfs_itable.h
xfs_linux.h xfs: XFS_IS_REALTIME_INODE() should be false if no rt device present 2017-09-13 14:09:46 -07:00
xfs_log.c xfs: fix incorrect log_flushed on fsync 2018-06-13 16:15:27 +02:00
xfs_log.h xfs: validate metadata LSNs against log on v5 superblocks 2015-10-12 15:59:25 +11:00
xfs_log_cil.c xfs: close xc_cil list_empty() races with cil commit sequence 2015-07-29 11:51:01 +10:00
xfs_log_priv.h xfs: validate metadata LSNs against log on v5 superblocks 2015-10-12 15:59:25 +11:00
xfs_log_recover.c xfs: fix log block underflow during recovery cycle verification 2017-12-20 10:04:59 +01:00
xfs_message.c xfs: more info from kmem deadlocks and high-level error msgs 2015-10-12 16:04:45 +11:00
xfs_message.h
xfs_mount.c Merge branch 'xfs-misc-fixes-for-4.4-2' into for-next 2015-11-03 13:27:58 +11:00
xfs_mount.h xfs: detect agfl count corruption and reset agfl 2018-06-06 16:46:20 +02:00
xfs_mru_cache.c xfs: xfs_mru_cache_insert() should use GFP_NOFS 2015-03-25 14:57:53 +11:00
xfs_mru_cache.h
xfs_pnfs.c xfs: add missing ilock around dio write last extent alignment 2015-10-12 15:34:20 +11:00
xfs_pnfs.h xfs: unlock i_mutex in xfs_break_layouts 2015-04-13 11:38:29 +10:00
xfs_qm.c xfs: quota: check result of register_shrinker() 2018-03-03 10:19:44 +01:00
xfs_qm.h xfs: Convert to using ->get_state callback 2015-03-04 16:06:36 +01:00
xfs_qm_bhv.c
xfs_qm_syscalls.c xfs: wait on new inodes during quotaoff dquot release 2017-06-07 12:06:02 +02:00
xfs_quota.h xfs: fix quota block reservation leak when tp allocates and frees blocks 2015-06-01 07:15:37 +10:00
xfs_quotaops.c xfs: Add support for Q_SETINFO 2015-03-04 16:06:38 +01:00
xfs_rtalloc.c xfs: add missing bmap cancel calls in error paths 2015-08-19 10:01:40 +10:00
xfs_rtalloc.h
xfs_stats.c xfs: stats are no longer dependent on CONFIG_PROC_FS 2015-10-19 08:42:46 +11:00
xfs_stats.h xfs: per-filesystem stats counter implementation 2015-10-12 18:21:22 +11:00
xfs_super.c xfs: clear sb->s_fs_info on mount failure 2019-10-17 13:41:06 -07:00
xfs_super.h
xfs_symlink.c Merge branch 'xfs-misc-fixes-for-4.3-2' into for-next 2015-08-20 09:28:45 +10:00
xfs_symlink.h
xfs_sysctl.c xfs: pass xfsstats structures to handlers and macros 2015-10-12 05:19:45 +11:00
xfs_sysctl.h
xfs_sysfs.c xfs: pass xfsstats structures to handlers and macros 2015-10-12 05:19:45 +11:00
xfs_sysfs.h xfs: create global stats and stats_clear in sysfs 2015-10-12 05:15:45 +11:00
xfs_trace.c
xfs_trace.h xfs: detect agfl count corruption and reset agfl 2018-06-06 16:46:20 +02:00
xfs_trans.c xfs: per-filesystem stats counter implementation 2015-10-12 18:21:22 +11:00
xfs_trans.h xfs: ensure EFD trans aborts on log recovery extent free failure 2015-08-19 09:51:43 +10:00
xfs_trans_ail.c Revert "xfs: clear PF_NOFREEZE for xfsaild kthread" 2016-02-25 12:01:24 -08:00
xfs_trans_buf.c
xfs_trans_dquot.c xfs: Clean up xfs_trans_dup_dqinfo 2015-06-01 10:50:00 +10:00
xfs_trans_extfree.c xfs: ensure EFD trans aborts on log recovery extent free failure 2015-08-19 09:51:43 +10:00
xfs_trans_inode.c xfs: optimise away log forces on timestamp updates for fdatasync 2015-11-03 13:14:59 +11:00
xfs_trans_priv.h xfs: add helper to conditionally remove items from the AIL 2015-08-19 10:01:08 +10:00
xfs_xattr.c Make __xfs_xattr_put_listen preperly report errors. 2017-06-14 13:16:27 +02:00