linux/fs/bcachefs
Kent Overstreet 2760bfe388 bcachefs: Fix reporting of freed objects from key cache shrinker
We count objects as freed when we move them to the srcu-pending lists
because we're doing the equivalent of a kfree_srcu(); the only
difference is managing the pending list ourself means we can allocate
from the pending list.

Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2024-06-10 13:17:16 -04:00
..
acl.c bcachefs: iter/update/trigger/str_hash flag cleanup 2024-05-08 17:29:18 -04:00
acl.h
alloc_background_format.h bcachefs: alloc_background_format.h 2024-01-21 13:27:10 -05:00
alloc_background.c bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
alloc_background.h bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
alloc_foreground.c bcachefs: Allocator prefers not to expand mi.btree_allocated bitmap 2024-05-08 17:29:24 -04:00
alloc_foreground.h bcachefs: ob_dev() 2024-05-08 17:29:23 -04:00
alloc_types.h bcachefs: Allocator prefers not to expand mi.btree_allocated bitmap 2024-05-08 17:29:24 -04:00
backpointers.c bcachefs: Fix uninitialized var warning 2024-05-28 18:21:51 -04:00
backpointers.h bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
bbpos_types.h bcachefs: Pin btree cache in ram for random access in fsck 2024-03-13 21:22:24 -04:00
bbpos.h
bcachefs_format.h bcachefs: Split out sb-errors_format.h 2024-05-28 17:33:45 -04:00
bcachefs_ioctl.h bcachefs: Replace zero-length array with flex-array member and use __counted_by 2024-01-01 11:47:41 -05:00
bcachefs.h bcachefs: Split out btree_write_submit_wq 2024-06-10 13:17:15 -04:00
bkey_buf.h
bkey_cmp.h
bkey_methods.c bcachefs: add no_invalid_checks flag 2024-05-09 16:24:30 -04:00
bkey_methods.h bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
bkey_sort.c bcachefs: Fix needs_whiteout BUG_ON() in bkey_sort() 2024-05-08 14:56:09 -04:00
bkey_sort.h bcachefs: Fix needs_whiteout BUG_ON() in bkey_sort() 2024-05-08 14:56:09 -04:00
bkey_types.h bcachefs: Split out bkey_types.h 2024-03-13 21:22:26 -04:00
bkey.c bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
bkey.h bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
bset.c bcachefs: for_each_bset() declares loop iter 2024-05-09 16:23:34 -04:00
bset.h bcachefs: for_each_bset() declares loop iter 2024-05-09 16:23:34 -04:00
btree_cache.c bcachefs: Enable automatic shrinking for rhashtables 2024-06-10 13:17:16 -04:00
btree_cache.h bcachefs: add counters for failed shrinker reclaim 2024-05-09 16:24:29 -04:00
btree_gc_types.h bcachefs: btree_gc can now handle unknown btrees 2024-05-28 11:29:26 -04:00
btree_gc.c bcachefs: Better fsck error message for key version 2024-05-28 11:29:26 -04:00
btree_gc.h bcachefs: btree_gc can now handle unknown btrees 2024-05-28 11:29:26 -04:00
btree_io.c bcachefs: Split out btree_write_submit_wq 2024-06-10 13:17:15 -04:00
btree_io.h bcachefs: for_each_bset() declares loop iter 2024-05-09 16:23:34 -04:00
btree_iter.c bcachefs: Delete incorrect BTREE_ID_NR assertion 2024-06-10 13:17:16 -04:00
btree_iter.h bcachefs: Fix missing parens in drop_locks_do() 2024-05-20 05:37:26 -04:00
btree_journal_iter.c bcachefs: bch2_journal_keys_dump() 2024-05-08 17:29:17 -04:00
btree_journal_iter.h bcachefs: bch2_journal_keys_dump() 2024-05-08 17:29:17 -04:00
btree_key_cache_types.h bcachefs: Btree key cache instrumentation 2024-05-08 17:29:20 -04:00
btree_key_cache.c bcachefs: Fix reporting of freed objects from key cache shrinker 2024-06-10 13:17:16 -04:00
btree_key_cache.h bcachefs; kill bch2_btree_key_cache_flush() 2024-01-01 11:47:41 -05:00
btree_locking.c bcachefs: Fix GFP_KERNEL allocation in break_cycle() 2024-06-05 10:44:08 -04:00
btree_locking.h bcachefs: bch2_btree_path_upgrade() checks nodes_locked, not uptodate 2024-05-08 17:29:19 -04:00
btree_node_scan_types.h bcachefs: btree node scan now fills in sectors_written 2024-04-28 21:34:29 -04:00
btree_node_scan.c bcachefs: Fix incorrect error handling found_btree_node_is_readable() 2024-06-10 13:17:15 -04:00
btree_node_scan.h bcachefs: Repair pass for scanning for btree nodes 2024-04-03 14:44:18 -04:00
btree_trans_commit.c bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
btree_types.h bcachefs: add counters for failed shrinker reclaim 2024-05-09 16:24:29 -04:00
btree_update_interior.c bcachefs: for_each_bset() declares loop iter 2024-05-09 16:23:34 -04:00
btree_update_interior.h bcachefs: bch2_btree_root_alloc_fake_trans() 2024-05-08 17:29:19 -04:00
btree_update.c bcachefs: x-macroize journal flags enums 2024-05-08 17:29:22 -04:00
btree_update.h bcachefs: bch2_trans_commit_flags_to_text() 2024-05-08 17:29:19 -04:00
btree_write_buffer_types.h bcachefs: Inline btree write buffer sort 2024-01-01 11:47:41 -05:00
btree_write_buffer.c bcachefs: iter/update/trigger/str_hash flag cleanup 2024-05-08 17:29:18 -04:00
btree_write_buffer.h bcachefs: __bch2_journal_key_to_wb -> bch2_journal_key_to_wb_slowpath 2024-01-05 23:24:19 -05:00
buckets_types.h bcachefs: bch_fs_usage_base 2024-01-21 06:01:45 -05:00
buckets_waiting_for_journal_types.h
buckets_waiting_for_journal.c
buckets_waiting_for_journal.h
buckets.c bcachefs: Fix uninitialized var warning 2024-05-28 18:21:51 -04:00
buckets.h bcachefs: ptr_stale() -> dev_ptr_stale() 2024-05-08 17:29:23 -04:00
chardev.c bcachefs: Convert to bch2_dev_tryget_noerror() 2024-05-08 17:29:22 -04:00
chardev.h
checksum.c bcachefs: Fix stack oob in __bch2_encrypt_bio() 2024-05-22 19:01:17 -04:00
checksum.h bcachefs: Standardize helpers for printing enum strs with bounds checks 2024-04-13 22:48:17 -04:00
clock_types.h
clock.c bcachefs: bch2_kthread_io_clock_wait() no longer sleeps until full amount 2024-01-21 13:27:09 -05:00
clock.h
compress.c bcachefs: kill kvpmalloc() 2024-03-13 18:39:12 -04:00
compress.h bcachefs: Standardize helpers for printing enum strs with bounds checks 2024-04-13 22:48:17 -04:00
darray.c bcachefs: DARRAY_PREALLOCATED() 2024-01-01 11:46:52 -05:00
darray.h bcachefs: Convert split_devs() to darray 2024-01-01 11:47:43 -05:00
data_update.c bcachefs: bch2_dev_have_ref() 2024-05-08 17:29:24 -04:00
data_update.h bcachefs: Data update path won't accidentaly grow replicas 2023-11-25 21:48:42 -05:00
debug.c bcachefs: bch2_dev_get_ioref() checks for device not present 2024-05-09 16:23:36 -04:00
debug.h
dirent_format.h bcachefs: dirent_format.h 2024-01-21 13:27:10 -05:00
dirent.c bcachefs: Fix unsafety in bch2_dirent_name_bytes() 2024-05-22 19:14:36 -04:00
dirent.h bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
disk_groups_format.h bcachefs: Split out disk_groups_format.h 2024-05-28 17:32:03 -04:00
disk_groups_types.h
disk_groups.c bcachefs: Plumb bch_validate_flags to sb_field_ops.validate() 2024-05-09 16:23:36 -04:00
disk_groups.h
ec_format.h bcachefs: ec_format.h 2024-01-21 13:27:11 -05:00
ec_types.h bcachefs: Rename bch_replicas_entry -> bch_replicas_entry_v1 2024-01-01 11:47:38 -05:00
ec.c bcachefs: btree_gc can now handle unknown btrees 2024-05-28 11:29:26 -04:00
ec.h bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
errcode.c bcachefs: Errcode tracepoint, documentation 2024-03-13 21:22:25 -04:00
errcode.h bcachefs: Add a better limit for maximum number of buckets 2024-05-06 10:58:17 -04:00
error.c bcachefs: allow for custom action in fsck error messages 2024-05-08 17:29:18 -04:00
error.h bcachefs: Improved topology repair checks 2024-03-31 20:36:11 -04:00
extent_update.c bcachefs: iter/update/trigger/str_hash flag cleanup 2024-05-08 17:29:18 -04:00
extent_update.h
extents_format.h bcachefs: reflink_format.h 2024-01-21 13:27:11 -05:00
extents_types.h
extents.c bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
extents.h bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
eytzinger.c bcachefs: Optimize eytzinger0_sort() with bottom-up heapsort 2024-05-08 17:29:18 -04:00
eytzinger.h bcachefs: fix eytzinger0_find_gt() 2024-04-08 22:56:37 -04:00
fifo.h bcachefs: kill kvpmalloc() 2024-03-13 18:39:12 -04:00
fs-common.c bcachefs: Fix error path of bch2_link_trans() 2024-05-08 17:29:21 -04:00
fs-common.h
fs-io-buffered.c bcachefs: Use copy_folio_from_iter_atomic() 2024-05-26 22:30:09 -04:00
fs-io-buffered.h
fs-io-direct.c bcachefs: Fix failure to return error on misaligned dio write 2024-05-29 16:40:30 -04:00
fs-io-direct.h
fs-io-pagecache.c bcachefs: iter/update/trigger/str_hash flag cleanup 2024-05-08 17:29:18 -04:00
fs-io-pagecache.h bcachefs: fix bch_folio_sector padding 2024-03-13 21:22:26 -04:00
fs-io.c bcachefs: fsync() should not return -EROFS 2024-05-09 16:23:36 -04:00
fs-io.h
fs-ioctl.c bcachefs: Correct the FS_IOC_GETFLAGS to FS_IOC32_GETFLAGS in bch2_compat_fs_ioctl() 2024-05-08 17:29:21 -04:00
fs-ioctl.h bcachefs: x-macro-ify inode flags enum 2023-11-05 13:12:18 -05:00
fs.c bcachefs: set sb->s_shrinker->seeks = 0 2024-06-10 13:17:16 -04:00
fs.h bcachefs: kill INODE_LOCK, use lock_two_nondirectories() 2024-01-01 11:47:36 -05:00
fsck.c bcachefs: fix stack frame size in fsck.c 2024-06-10 13:17:16 -04:00
fsck.h bcachefs: bch2_check_subvolume_structure() 2024-03-13 21:22:25 -04:00
inode_format.h bcachefs: inode_format.h 2024-01-21 13:27:10 -05:00
inode.c bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
inode.h bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
io_misc.c bcachefs: iter/update/trigger/str_hash flag cleanup 2024-05-08 17:29:18 -04:00
io_misc.h
io_read.c bcachefs: Enable automatic shrinking for rhashtables 2024-06-10 13:17:16 -04:00
io_read.h
io_write_types.h bcachefs: Move nocow unlock to bch2_write_endio() 2024-05-08 17:29:24 -04:00
io_write.c bcachefs: bch2_dev_get_ioref() checks for device not present 2024-05-09 16:23:36 -04:00
io_write.h closures: CLOSURE_CALLBACK() to fix type punning 2023-11-24 00:29:58 -05:00
journal_io.c bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
journal_io.h bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
journal_reclaim.c bcachefs: x-macroize journal flags enums 2024-05-08 17:29:22 -04:00
journal_reclaim.h bcachefs: btree write buffer now slurps keys from journal 2024-01-01 11:47:41 -05:00
journal_sb.c bcachefs: Plumb bch_validate_flags to sb_field_ops.validate() 2024-05-09 16:23:36 -04:00
journal_sb.h
journal_seq_blacklist_format.h bcachefs: Split out journal_seq_blacklist_format.h 2024-05-28 17:32:03 -04:00
journal_seq_blacklist.c bcachefs: Plumb bch_validate_flags to sb_field_ops.validate() 2024-05-09 16:23:36 -04:00
journal_seq_blacklist.h bcachefs: journal seq blacklist gc no longer has to walk btree 2024-05-08 17:29:20 -04:00
journal_types.h bcachefs: x-macroize journal flags enums 2024-05-08 17:29:22 -04:00
journal.c bcachefs: bch2_print_allocator_stuck() 2024-05-08 17:29:22 -04:00
journal.h bcachefs: x-macroize journal flags enums 2024-05-08 17:29:22 -04:00
Kconfig bcachefs: optimize __bch2_trans_get(), kill DEBUG_TRANSACTIONS 2024-01-01 11:47:44 -05:00
keylist_types.h
keylist.c bcachefs: for_each_keylist_key() declares loop iter 2024-01-01 11:47:43 -05:00
keylist.h bcachefs: for_each_keylist_key() declares loop iter 2024-01-01 11:47:43 -05:00
logged_ops_format.h bcachefs: logged_ops_format.h 2024-01-21 13:27:11 -05:00
logged_ops.c bcachefs: iter/update/trigger/str_hash flag cleanup 2024-05-08 17:29:18 -04:00
logged_ops.h
lru.c bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
lru.h bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
Makefile bcachefs: Repair pass for scanning for btree nodes 2024-04-03 14:44:18 -04:00
mean_and_variance_test.c bcachefs: add missing MODULE_DESCRIPTION() 2024-05-28 11:29:26 -04:00
mean_and_variance.c bcachefs: mean_and_variance: put struct mean_and_variance_weighted on a diet 2024-03-13 21:37:58 -04:00
mean_and_variance.h bcachefs: mean_and_variance: put struct mean_and_variance_weighted on a diet 2024-03-13 21:37:58 -04:00
migrate.c bcachefs: iter/update/trigger/str_hash flag cleanup 2024-05-08 17:29:18 -04:00
migrate.h
move_types.h
move.c bcachefs: Fix trans->locked assert 2024-06-05 10:44:08 -04:00
move.h bcachefs: rebalance should wakeup on shutdown if disabled 2024-01-01 11:47:39 -05:00
movinggc.c bcachefs: Enable automatic shrinking for rhashtables 2024-06-10 13:17:16 -04:00
movinggc.h
nocow_locking_types.h
nocow_locking.c
nocow_locking.h
opts.c bcachefs: Standardize helpers for printing enum strs with bounds checks 2024-04-13 22:48:17 -04:00
opts.h bcachefs: Kill opts.buckets_nouse 2024-05-08 17:29:22 -04:00
printbuf.c bcachefs: Fix shutdown ordering 2024-05-22 19:54:03 -04:00
printbuf.h bcachefs: printbuf improvements 2024-05-08 17:29:17 -04:00
quota_format.h bcachefs; quota_format.h 2024-01-21 13:27:10 -05:00
quota_types.h
quota.c bcachefs: Plumb bch_validate_flags to sb_field_ops.validate() 2024-05-09 16:23:36 -04:00
quota.h bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
rebalance_types.h
rebalance.c bcachefs: bch2_trans_unlock() must always be followed by relock() or begin() 2024-05-08 17:29:19 -04:00
rebalance.h
recovery_passes_types.h bcachefs: Reconstruct missing snapshot nodes 2024-04-03 14:46:51 -04:00
recovery_passes.c bcachefs: Sync journal when we complete a recovery pass 2024-05-08 17:29:20 -04:00
recovery_passes.h bcachefs: bch2_run_explicit_recovery_pass_persistent() 2024-03-31 20:36:12 -04:00
recovery.c bcachefs: Ensure we're RW before journalling 2024-05-22 20:17:33 -04:00
recovery.h bcachefs: Flag btrees with missing data 2024-04-03 14:46:51 -04:00
reflink_format.h bcachefs: reflink_format.h 2024-01-21 13:27:11 -05:00
reflink.c bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
reflink.h bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
replicas_format.h bcachefs: Split out replicas_format.h 2024-05-28 17:32:03 -04:00
replicas_types.h bcachefs: Replace zero-length arrays with flexible-array members 2024-01-01 11:47:39 -05:00
replicas.c bcachefs: Fix bogus verify_replicas_entry() assert 2024-05-22 19:01:17 -04:00
replicas.h bcachefs: Rename bch_replicas_entry -> bch_replicas_entry_v1 2024-01-01 11:47:38 -05:00
sb-clean.c bcachefs: Plumb bch_validate_flags to sb_field_ops.validate() 2024-05-09 16:23:36 -04:00
sb-clean.h
sb-counters_format.h bcachefs: sb-counters_format.h 2024-01-21 13:27:10 -05:00
sb-counters.c bcachefs: Plumb bch_validate_flags to sb_field_ops.validate() 2024-05-09 16:23:36 -04:00
sb-counters.h bcachefs: counters.c -> sb-counters.c 2024-01-21 13:27:10 -05:00
sb-downgrade_format.h bcachefs: split out sb-downgrade_format.h 2024-05-28 17:32:03 -04:00
sb-downgrade.c bcachefs: Fix sb-downgrade validation 2024-05-26 12:44:12 -04:00
sb-downgrade.h bcachefs: Upgrades now specify errors to fix, like downgrades 2024-01-05 23:24:20 -05:00
sb-errors_format.h bcachefs: Split out sb-errors_format.h 2024-05-28 17:33:45 -04:00
sb-errors_types.h bcachefs: Split out sb-errors_format.h 2024-05-28 17:33:45 -04:00
sb-errors.c bcachefs: Plumb bch_validate_flags to sb_field_ops.validate() 2024-05-09 16:23:36 -04:00
sb-errors.h bcachefs: bch_sb.recovery_passes_required 2024-01-01 11:47:07 -05:00
sb-members_format.h bcachefs: split out sb-members_format.h 2024-05-28 17:32:03 -04:00
sb-members_types.h bcachefs: bucket_valid() 2024-05-08 17:29:19 -04:00
sb-members.c bcachefs: Plumb bch_validate_flags to sb_field_ops.validate() 2024-05-09 16:23:36 -04:00
sb-members.h bcachefs: kill bch2_dev_bkey_exists() in bch2_check_fix_ptrs() 2024-05-09 16:23:36 -04:00
seqmutex.h
siphash.c
siphash.h
six.c bcachefs: six locks: Simplify optimistic spinning 2024-01-01 11:47:38 -05:00
six.h bcachefs: six lock: fix typos 2024-01-01 11:47:40 -05:00
snapshot_format.h bcachefs: snapshot_format.h 2024-01-21 13:27:10 -05:00
snapshot.c bcachefs: Run check_key_has_snapshot in snapshot_delete_keys() 2024-05-28 11:29:26 -04:00
snapshot.h bcachefs: Run check_key_has_snapshot in snapshot_delete_keys() 2024-05-28 11:29:26 -04:00
str_hash.h bcachefs: iter/update/trigger/str_hash flag cleanup 2024-05-08 17:29:18 -04:00
subvolume_format.h bcachefs: bch_subvolume::fs_path_parent 2024-03-13 21:22:24 -04:00
subvolume_types.h bcachefs: Move snapshot table size to struct snapshot_table 2024-03-31 20:36:11 -04:00
subvolume.c bcachefs: Check for subvolues with bogus snapshot/inode fields 2024-05-20 05:37:26 -04:00
subvolume.h bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
super_types.h bcachefs: bucket_valid() 2024-05-08 17:29:19 -04:00
super-io.c bcachefs: fix the display format for show-super 2024-06-10 13:17:16 -04:00
super-io.h bcachefs: Plumb bch_validate_flags to sb_field_ops.validate() 2024-05-09 16:23:36 -04:00
super.c bcachefs: Split out btree_write_submit_wq 2024-06-10 13:17:15 -04:00
super.h bcachefs: convert bch_fs_flags to x-macro 2024-01-01 11:47:38 -05:00
sysfs.c bcachefs: add counters for failed shrinker reclaim 2024-05-09 16:24:29 -04:00
sysfs.h
tests.c bcachefs: iter/update/trigger/str_hash flag cleanup 2024-05-08 17:29:18 -04:00
tests.h
thread_with_file_types.h bcachefs: thread_with_stdio: convert to darray 2024-03-13 18:39:13 -04:00
thread_with_file.c bcachefs: Fix null ptr deref in twf from BCH_IOCTL_FSCK_OFFLINE 2024-04-16 19:11:49 -04:00
thread_with_file.h bcachefs: Fix null ptr deref in twf from BCH_IOCTL_FSCK_OFFLINE 2024-04-16 19:11:49 -04:00
time_stats.c bcachefs: time_stats: split stats-with-quantiles into a separate structure 2024-03-13 21:38:01 -04:00
time_stats.h bcachefs: time_stats: shrink time_stat_buffer for better alignment 2024-03-13 21:38:03 -04:00
trace.c
trace.h tracing/treewide: Remove second parameter of __assign_str() 2024-05-22 20:14:47 -04:00
two_state_shared_lock.c
two_state_shared_lock.h
util.c bcachefs: prt_printf() now respects \r\n\t 2024-05-08 17:29:17 -04:00
util.h bcachefs: remove dead function bdev_sectors() 2024-05-03 02:28:28 -04:00
varint.c
varint.h
vstructs.h bcachefs: vstruct_for_each() now declares loop iter 2024-01-01 11:47:42 -05:00
xattr_format.h bcachefs: xattr_format.h 2024-01-21 13:27:10 -05:00
xattr.c bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00
xattr.h bcachefs: s/bkey_invalid_flags/bch_validate_flags 2024-05-09 16:23:36 -04:00