linux/fs/xfs/scrub
Darrick J. Wong 6b48e5b8a2 xfs: directory scrub should check the null bestfree entries too
Teach the directory scrubber to check all the bestfree entries,
including the null ones.  We want to be able to detect the case where
the entry is null but there actually /is/ a directory data block.

Found by fuzzing lbests[0] = ones in xfs/391.

Fixes: df481968f3 ("xfs: scrub directory freespace")
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Chandan Babu R <chandanrlinux@gmail.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
2020-11-18 09:23:50 -08:00
..
agheader_repair.c xfs: support inode btree blockcounts in online repair 2020-09-15 20:52:40 -07:00
agheader.c xfs: support inode btree blockcounts in online scrub 2020-09-15 20:52:40 -07:00
alloc.c xfs: convert btree cursor ag-private member name 2020-03-13 10:37:14 -07:00
attr.c xfs: mark extended attr corrupt when lookup-by-hash fails 2020-03-12 07:58:13 -07:00
attr.h xfs: only allocate memory for scrubbing attributes when we need it 2019-07-05 10:29:56 -07:00
bitmap.c xfs: replace open-coded bitmap weight logic 2020-03-18 08:12:23 -07:00
bitmap.h xfs: replace open-coded bitmap weight logic 2020-03-18 08:12:23 -07:00
bmap.c xfs: strengthen rmap record flags checking 2020-11-18 09:23:50 -08:00
btree.c xfs: fix the minrecs logic when dealing with inode root child blocks 2020-11-18 09:23:50 -08:00
btree.h xfs: const-ify xfs_owner_info arguments 2018-12-12 08:47:16 -08:00
common.c xfs: remove unused header files 2019-06-28 19:30:43 -07:00
common.h xfs: periodically yield scrub threads to the scheduler 2019-11-07 13:00:53 -08:00
dabtree.c xfs: check dabtree node hash values when loading child blocks 2020-09-23 08:58:51 -07:00
dabtree.h xfs: refactor btree node scrubbing 2019-11-10 16:54:19 -08:00
dir.c xfs: directory scrub should check the null bestfree entries too 2020-11-18 09:23:50 -08:00
fscounters.c xfs: remove unnecessary null pointer checks from _read_agf callers 2020-01-26 14:32:27 -08:00
health.c xfs: fix missing header includes 2019-11-07 13:00:53 -08:00
health.h xfs: scrub should only cross-reference with healthy btrees 2019-04-16 10:01:57 -07:00
ialloc.c xfs: remove unused iget_flags param from xfs_imap_to_bp() 2020-05-07 08:27:49 -07:00
inode.c xfs: fix scrub flagging rtinherit even if there is no rt device 2020-11-04 08:52:47 -08:00
parent.c xfs: move the per-fork nextents fields into struct xfs_ifork 2020-05-19 09:40:58 -07:00
quota.c xfs: create xfs_dqtype_t to represent quota types 2020-07-28 20:24:14 -07:00
refcount.c xfs: fix brainos in the refcount scrubber's rmap fragment processor 2020-11-10 16:48:03 -08:00
repair.c xfs: create xfs_dqtype_t to represent quota types 2020-07-28 20:24:14 -07:00
repair.h xfs: create xfs_dqtype_t to represent quota types 2020-07-28 20:24:14 -07:00
rmap.c xfs: convert btree cursor ag-private member name 2020-03-13 10:37:14 -07:00
rtbitmap.c xfs: rtbitmap scrubber should check inode size 2020-07-07 07:15:09 -07:00
scrub.c xfs: prohibit fs freezing when using empty transactions 2020-03-26 08:19:24 -07:00
scrub.h xfs: add online scrub for superblock counters 2019-04-30 08:19:13 -07:00
symlink.c xfs: Remove kmem_zalloc_large() 2020-09-15 20:52:41 -07:00
trace.c xfs: convert btree cursor inode-private member names 2020-03-13 10:37:14 -07:00
trace.h xfs: convert btree cursor inode-private member names 2020-03-13 10:37:14 -07:00
xfs_scrub.h xfs: convert to SPDX license tags 2018-06-06 14:17:53 -07:00