linux/fs/bcachefs
Kent Overstreet 51c804ed2a bcachefs: Punt btree writes to workqueue to submit
We don't want to be submitting IO with btree locks held, and btree
writes usually aren't latency sensitive.

Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2023-10-22 17:09:01 -04:00
..
acl.c bcachefs: Require all btree iterators to be freed 2023-10-22 17:08:56 -04:00
acl.h bcachefs: Kill ei_str_hash 2023-10-22 17:08:55 -04:00
alloc_background.c bcachefs: Allocator refactoring 2023-10-22 17:09:01 -04:00
alloc_background.h bcachefs: Fix for copygc getting stuck waiting for reserve to be filled 2023-10-22 17:08:54 -04:00
alloc_foreground.c bcachefs: Allocator refactoring 2023-10-22 17:09:01 -04:00
alloc_foreground.h bcachefs: Don't let copygc buckets be stolen by other threads 2023-10-22 17:08:43 -04:00
alloc_types.h bcachefs: Add allocator thread state to sysfs 2023-10-22 17:08:54 -04:00
bcachefs_format.h bcachefs: Inode backpointers 2023-10-22 17:08:58 -04:00
bcachefs_ioctl.h bcachefs: Add code to scan for/rewite old btree nodes 2023-10-22 17:08:54 -04:00
bcachefs.h bcachefs: gc shouldn't care about owned_by_allocator 2023-10-22 17:09:01 -04:00
bkey_buf.h bcachefs: Reduce/kill BKEY_PADDED use 2023-10-22 17:08:50 -04:00
bkey_methods.c bcachefs: Check that keys are in the correct btrees 2023-10-22 17:09:01 -04:00
bkey_methods.h bcachefs: Kill bkey ops->debugcheck method 2023-10-22 17:08:56 -04:00
bkey_sort.c bcachefs: Drop bkey noops 2023-10-22 17:08:57 -04:00
bkey_sort.h bcachefs: Kill support for !BTREE_NODE_NEW_EXTENT_OVERWRITE() 2023-10-22 17:08:55 -04:00
bkey.c bcachefs: Start using bpos.snapshot field 2023-10-22 17:08:57 -04:00
bkey.h bcachefs: Start using bpos.snapshot field 2023-10-22 17:08:57 -04:00
bset.c bcachefs: kill bset_tree->max_key 2023-10-22 17:08:59 -04:00
bset.h bcachefs: Increase BSET_CACHELINE to 256 bytes 2023-10-22 17:08:59 -04:00
btree_cache.c bcachefs: Improve bset compaction 2023-10-22 17:08:59 -04:00
btree_cache.h bcachefs: Fix BTREE_FOREGROUND_MERGE_HYSTERESIS 2023-10-22 17:08:58 -04:00
btree_gc.c bcachefs: gc shouldn't care about owned_by_allocator 2023-10-22 17:09:01 -04:00
btree_gc.h bcachefs: gc shouldn't care about owned_by_allocator 2023-10-22 17:09:01 -04:00
btree_io.c bcachefs: Punt btree writes to workqueue to submit 2023-10-22 17:09:01 -04:00
btree_io.h bcachefs: Punt btree writes to workqueue to submit 2023-10-22 17:09:01 -04:00
btree_iter.c bcachefs: Fix transaction restarts due to upgrading of cloned iterators 2023-10-22 17:09:00 -04:00
btree_iter.h bcachefs: Improve bch2_btree_iter_traverse_all() 2023-10-22 17:09:00 -04:00
btree_key_cache.c bcachefs: Don't flush btree writes more aggressively because of btree key cache 2023-10-22 17:08:59 -04:00
btree_key_cache.h bcachefs: Don't flush btree writes more aggressively because of btree key cache 2023-10-22 17:08:59 -04:00
btree_locking.h bcachefs: Drop trans->nounlock 2023-10-22 17:08:58 -04:00
btree_types.h bcachefs: Fix BTREE_ITER_NOT_EXTENTS 2023-10-22 17:08:59 -04:00
btree_update_interior.c bcachefs: Fix a use after free 2023-10-22 17:09:01 -04:00
btree_update_interior.h bcachefs: Improve bset compaction 2023-10-22 17:08:59 -04:00
btree_update_leaf.c bcachefs: Fix for btree_gc repairing interior btree ptrs 2023-10-22 17:09:01 -04:00
btree_update.h bcachefs: Improved check_directory_structure() 2023-10-22 17:09:00 -04:00
buckets_types.h bcachefs: Fix bch2_trans_mark_dev_sb() 2023-10-22 17:09:00 -04:00
buckets.c bcachefs: Handle errors in bch2_trans_mark_update() 2023-10-22 17:09:01 -04:00
buckets.h bcachefs: gc shouldn't care about owned_by_allocator 2023-10-22 17:09:01 -04:00
chardev.c bcachefs: Refactor dev usage 2023-10-22 17:08:52 -04:00
chardev.h
checksum.c bcachefs: Track incompressible data 2023-10-22 17:08:34 -04:00
checksum.h bcachefs: Use x-macros for more enums 2023-10-22 17:08:55 -04:00
clock_types.h bcachefs: Persist 64 bit io clocks 2023-10-22 17:08:52 -04:00
clock.c bcachefs: Persist 64 bit io clocks 2023-10-22 17:08:52 -04:00
clock.h bcachefs: Convert various code to printbuf 2023-10-22 17:08:43 -04:00
compress.c bcachefs: Work around a zstd bug 2023-10-22 17:08:50 -04:00
compress.h
debug.c bcachefs: Eliminate more PAGE_SIZE uses 2023-10-22 17:08:59 -04:00
debug.h bcachefs: Drop sysfs interface to debug parameters 2023-10-22 17:08:45 -04:00
dirent.c bcachefs: Move some dirent checks to bch2_dirent_invalid() 2023-10-22 17:08:59 -04:00
dirent.h bcachefs: Inode backpointers 2023-10-22 17:08:58 -04:00
disk_groups.c bcachefs: Fix a couple null ptr derefs when no disk groups exist 2023-10-22 17:08:43 -04:00
disk_groups.h bcachefs: Fix disk groups not being updated when set via sysfs 2023-10-22 17:08:43 -04:00
ec_types.h bcachefs: Have fsck check for stripe pointers matching stripe 2023-10-22 17:08:55 -04:00
ec.c bcachefs: Replace bch2_btree_iter_next() calls with bch2_btree_iter_advance 2023-10-22 17:08:56 -04:00
ec.h bcachefs: Have fsck check for stripe pointers matching stripe 2023-10-22 17:08:55 -04:00
error.c bcachefs: Use x-macros for more enums 2023-10-22 17:08:55 -04:00
error.h bcachefs: Improve some IO error messages 2023-10-22 17:08:49 -04:00
extent_update.c bcachefs: Rename BTREE_ID enums for consistency with other enums 2023-10-22 17:08:55 -04:00
extent_update.h bcachefs: Move extent overwrite handling out of core btree code 2023-10-22 17:08:36 -04:00
extents_types.h bcachefs: Limit pointers to being in only one stripe 2023-10-22 17:08:29 -04:00
extents.c bcachefs: Start using bpos.snapshot field 2023-10-22 17:08:57 -04:00
extents.h bcachefs: Split out bpos_cmp() and bkey_cmp() 2023-10-22 17:08:57 -04:00
eytzinger.h bcachefs: Fix check for if extent update is allocating 2023-10-22 17:08:14 -04:00
fifo.h bcachefs: Convert bucket invalidation to key marking path 2023-10-22 17:08:16 -04:00
fs-common.c bcachefs: Improved check_directory_structure() 2023-10-22 17:09:00 -04:00
fs-common.h bcachefs: Update directory timestamps during link 2023-10-22 17:08:33 -04:00
fs-io.c bcachefs: Refactor bchfs_fallocate() to not nest btree_trans on stack 2023-10-22 17:09:01 -04:00
fs-io.h bcachefs: Kill bchfs_extent_update() 2023-10-22 17:08:29 -04:00
fs-ioctl.c bcachefs: Kill ei_str_hash 2023-10-22 17:08:55 -04:00
fs-ioctl.h bcachefs: Fix mtime/ctime updates 2023-10-22 17:08:07 -04:00
fs.c bcachefs: Replace bch2_btree_iter_next() calls with bch2_btree_iter_advance 2023-10-22 17:08:56 -04:00
fs.h bcachefs: Kill ei_str_hash 2023-10-22 17:08:55 -04:00
fsck.c bcachefs: Fix an unused var warning in userspace 2023-10-22 17:09:01 -04:00
fsck.h bcachefs: Drop bch2_fsck_inode_nlink() 2023-10-22 17:08:59 -04:00
inode.c bcachefs: Improved check_directory_structure() 2023-10-22 17:09:00 -04:00
inode.h bcachefs: Improved check_directory_structure() 2023-10-22 17:09:00 -04:00
io_types.h bcachefs: Fix read retry path for indirect extents 2023-10-22 17:08:56 -04:00
io.c bcachefs: Start using bpos.snapshot field 2023-10-22 17:08:57 -04:00
io.h bcachefs: Fix read retry path for indirect extents 2023-10-22 17:08:56 -04:00
journal_io.c bcachefs: Start using bpos.snapshot field 2023-10-22 17:08:57 -04:00
journal_io.h bcachefs: Fix compat code for superblock 2023-10-22 17:08:55 -04:00
journal_reclaim.c bcachefs: Fix journal reclaim loop 2023-10-22 17:09:00 -04:00
journal_reclaim.h bcachefs: Fix race between journal_seq_copy() and journal_seq_drop() 2023-10-22 17:08:50 -04:00
journal_seq_blacklist.c bcachefs: Don't require flush/fua on every journal write 2023-10-22 17:08:49 -04:00
journal_seq_blacklist.h bcachefs: Fix a bug with the journal_seq_blacklist mechanism 2023-10-22 17:08:43 -04:00
journal_types.h bcachefs: Don't flush btree writes more aggressively because of btree key cache 2023-10-22 17:08:59 -04:00
journal.c bcachefs: Simplify bch2_set_nr_journal_buckets() 2023-10-22 17:09:00 -04:00
journal.h bcachefs: Fix for btree_gc repairing interior btree ptrs 2023-10-22 17:09:01 -04:00
Kconfig bcachefs: Take a SRCU lock in btree transactions 2023-10-22 17:08:47 -04:00
keylist_types.h
keylist.c bcachefs: Interior btree updates are now fully transactional 2023-10-22 17:08:40 -04:00
keylist.h bcachefs: Interior btree updates are now fully transactional 2023-10-22 17:08:40 -04:00
Makefile bcachefs: New varints 2023-10-22 17:08:46 -04:00
migrate.c bcachefs: Replace bch2_btree_iter_next() calls with bch2_btree_iter_advance 2023-10-22 17:08:56 -04:00
migrate.h
move_types.h bcachefs: Improve warning for copygc failing to move data 2023-10-22 17:08:40 -04:00
move.c bcachefs: Preallocate trans mem in bch2_migrate_index_update() 2023-10-22 17:09:01 -04:00
move.h bcachefs: Scan for old btree nodes if necessary on mount 2023-10-22 17:08:54 -04:00
movinggc.c bcachefs: Add allocator thread state to sysfs 2023-10-22 17:08:54 -04:00
movinggc.h bcachefs: Make copygc thread global 2023-10-22 17:08:42 -04:00
opts.c bcachefs: Use x-macros for more enums 2023-10-22 17:08:55 -04:00
opts.h bcachefs: Kill reflink option 2023-10-22 17:08:56 -04:00
quota_types.h bcachefs: bch2_fs_quota_transfer 2023-10-22 17:08:13 -04:00
quota.c bcachefs: Require all btree iterators to be freed 2023-10-22 17:08:56 -04:00
quota.h bcachefs: more project quota fixes 2023-10-22 17:08:14 -04:00
rebalance_types.h bcachefs: Persist 64 bit io clocks 2023-10-22 17:08:52 -04:00
rebalance.c bcachefs: Use bch2_bpos_to_text() more consistently 2023-10-22 17:08:55 -04:00
rebalance.h bcachefs: Convert various code to printbuf 2023-10-22 17:08:43 -04:00
recovery.c bcachefs: Fix bch2_trans_mark_dev_sb() 2023-10-22 17:09:00 -04:00
recovery.h bcachefs: Add support for doing btree updates prior to journal replay 2023-10-22 17:08:52 -04:00
reflink.c bcachefs: Require all btree iterators to be freed 2023-10-22 17:08:56 -04:00
reflink.h bcachefs: Indirect inline data extents 2023-10-22 17:08:45 -04:00
replicas_types.h bcachefs: Switch replicas to mark_lock 2023-10-22 17:08:13 -04:00
replicas.c bcachefs: Fix some small memory leaks 2023-10-22 17:09:01 -04:00
replicas.h bcachefs: Kill bch2_fs_usage_scratch_get() 2023-10-22 17:08:59 -04:00
siphash.c
siphash.h
six.c
six.h
str_hash.h bcachefs: Use x-macros for more enums 2023-10-22 17:08:55 -04:00
super_types.h bcachefs: Eliminate more PAGE_SIZE uses 2023-10-22 17:08:59 -04:00
super-io.c bcachefs: Eliminate more PAGE_SIZE uses 2023-10-22 17:08:59 -04:00
super-io.h bcachefs: Fix compat code for superblock 2023-10-22 17:08:55 -04:00
super.c bcachefs: Fix bch2_trans_mark_dev_sb() 2023-10-22 17:09:00 -04:00
super.h bcachefs: Use x-macros for more enums 2023-10-22 17:08:55 -04:00
sysfs.c bcachefs: Drop old style btree node coalescing 2023-10-22 17:09:00 -04:00
sysfs.h
tests.c bcachefs: Add a perf test for multiple updates per commit 2023-10-22 17:09:00 -04:00
tests.h bcachefs: Add error handling to unit & perf tests 2023-10-22 17:08:48 -04:00
trace.c
trace.h bcachefs: Allocator refactoring 2023-10-22 17:09:01 -04:00
util.c bcachefs: Eliminate more PAGE_SIZE uses 2023-10-22 17:08:59 -04:00
util.h bcachefs: Check for duplicate device ptrs in bch2_bkey_ptrs_invalid() 2023-10-22 17:08:50 -04:00
varint.c bcachefs: New varints 2023-10-22 17:08:46 -04:00
varint.h bcachefs: New varints 2023-10-22 17:08:46 -04:00
vstructs.h
xattr.c bcachefs: Require all btree iterators to be freed 2023-10-22 17:08:56 -04:00
xattr.h bcachefs: Make bkey types globally unique 2023-10-22 17:08:12 -04:00