linux/fs/bcachefs
Kent Overstreet e3e6940940 bcachefs: Revert lockless buffered IO path
We had a report of data corruption on nixos when building installer
images.

https://github.com/NixOS/nixpkgs/pull/321055#issuecomment-2184131334

It seems that writes are being dropped, but only when issued by QEMU,
and possibly only in snapshot mode. It's undetermined if it's write
calls are being dropped or dirty folios.

Further testing, via minimizing the original patch to just the change
that skips the inode lock on non appends/truncates, reveals that it
really is just not taking the inode lock that causes the corruption: it
has nothing to do with the other logic changes for preserving write
atomicity in corner cases.

It's also kernel config dependent: it doesn't reproduce with the minimal
kernel config that ktest uses, but it does reproduce with nixos's distro
config. Bisection the kernel config initially pointer the finger at page
migration or compaction, but it appears that was erroneous; we haven't
yet determined what kernel config option actually triggers it.

Sadly it appears this will have to be reverted since we're getting too
close to release and my plate is full, but we'd _really_ like to fully
debug it.

My suspicion is that this patch is exposing a preexisting bug - the
inode lock actually covers very little in IO paths, and we have a
different lock (the pagecache add lock) that guards against races with
truncate here.

Fixes: 7e64c86cdc ("bcachefs: Buffered write path now can avoid the inode lock")
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2024-08-31 19:26:08 -04:00
..
acl.c bcachefs: Switch to .get_inode_acl() 2024-08-08 15:14:02 -04:00
acl.h bcachefs: Switch to .get_inode_acl() 2024-08-08 15:14:02 -04:00
alloc_background_format.h bcachefs: Fix compat issue with old alloc_v4 keys 2024-08-22 02:07:23 -04:00
alloc_background.c bcachefs: Fix refcounting in discard path 2024-08-22 02:07:23 -04:00
alloc_background.h bcachefs: avoid overflowing LRU_TIME_BITS for cached data lru 2024-08-16 12:46:40 -04:00
alloc_foreground.c bcachefs: improve bch2_dev_usage_to_text() 2024-08-09 14:40:19 -04:00
alloc_foreground.h bcachefs: Make allocator stuck timeout configurable, ratelimit messages 2024-08-07 21:04:55 -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: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -04:00
backpointers.h bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -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: Fix rebalance_work accounting 2024-08-24 10:16:21 -04:00
bcachefs_ioctl.h bcachefs: BCH_IOCTL_QUERY_ACCOUNTING 2024-07-14 19:00:15 -04:00
bcachefs.h bcachefs: Add a time_stat for blocked on key cache flush 2024-08-13 23:00:50 -04:00
bkey_buf.h
bkey_cmp.h
bkey_methods.c bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -04:00
bkey_methods.h bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -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: Fix shift greater than integer size 2024-06-28 19:42:22 -04:00
bkey.h bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -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: fix failure to relock in btree_node_fill() 2024-08-22 02:07:23 -04:00
btree_cache.h bcachefs: fix failure to relock in bch2_btree_node_mem_alloc() 2024-08-22 02:07:23 -04:00
btree_gc_types.h bcachefs: bch2_gc_pos_to_text() 2024-07-14 19:00:15 -04:00
btree_gc.c bcachefs: Fix locking in __bch2_trans_mark_dev_sb() 2024-08-16 20:45:15 -04:00
btree_gc.h bcachefs: bch2_gc_pos_to_text() 2024-07-14 19:00:15 -04:00
btree_io.c bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -04:00
btree_io.h bcachefs: btree_ptr_sectors_written() now takes bkey_s_c 2024-07-14 19:00:12 -04:00
btree_iter.c bcachefs: Convert for_each_btree_node() to lockrestart_do() 2024-08-13 22:56:50 -04:00
btree_iter.h bcachefs: Fix compat issue with old alloc_v4 keys 2024-08-22 02:07:23 -04:00
btree_journal_iter.c bcachefs: Accumulate accounting keys in journal replay 2024-07-14 19:00:13 -04:00
btree_journal_iter.h bcachefs: Coalesce accounting keys before journal replay 2024-07-14 19:00:13 -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: don't use rht_bucket() in btree_key_cache_scan() 2024-08-22 10:04:41 -04:00
btree_key_cache.h bcachefs: Improve trans_blocked_journal_reclaim tracepoint 2024-08-13 23:00:34 -04:00
btree_locking.c bcachefs: Kill bch2_assert_btree_nodes_not_locked() 2024-07-14 19:59:12 -04:00
btree_locking.h bcachefs: Kill bch2_assert_btree_nodes_not_locked() 2024-07-14 19:59:12 -04:00
btree_node_scan_types.h bcachefs: btree node scan: fall back to comparing by journal seq 2024-07-14 19:00:16 -04:00
btree_node_scan.c bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -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: Kill __bch2_accounting_mem_mod() 2024-08-13 23:00:50 -04:00
btree_types.h bcachefs: Fix integer overflow on trans->nr_updates 2024-07-18 18:33:30 -04:00
btree_update_interior.c bcachefs: fix failure to relock in bch2_btree_node_mem_alloc() 2024-08-22 02:07:23 -04:00
btree_update_interior.h bcachefs: bch2_btree_reserve_cache_to_text() 2024-07-14 19:00:11 -04:00
btree_update.c bcachefs: bch2_btree_insert() - add btree iter flags 2024-07-14 19:00:15 -04:00
btree_update.h bcachefs: bch2_btree_insert() - add btree iter flags 2024-07-14 19:00:15 -04:00
btree_write_buffer_types.h bcachefs: Eytzinger accumulation for accounting keys 2024-07-14 19:00:14 -04:00
btree_write_buffer.c bcachefs: silence silly kdoc warning 2024-07-18 18:33:30 -04:00
btree_write_buffer.h bcachefs: Eytzinger accumulation for accounting keys 2024-07-14 19:00:14 -04:00
buckets_types.h bcachefs: Convert gc to new accounting 2024-07-14 19:00:13 -04:00
buckets_waiting_for_journal_types.h
buckets_waiting_for_journal.c bcachefs: Reallocate table when we're increasing size 2024-08-18 20:41:50 -04:00
buckets_waiting_for_journal.h
buckets.c bcachefs: Fix rebalance_work accounting 2024-08-24 10:16:21 -04:00
buckets.h bcachefs: improve bch2_dev_usage_to_text() 2024-08-09 14:40:19 -04:00
chardev.c bcachefs: Make read_only a mount option again, but hidden 2024-07-14 19:00:16 -04:00
chardev.h
checksum.c bcachefs: Ratelimit checksum error messages 2024-07-14 19:00:16 -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 - In the series "treewide: Refactor heap related implementation", 2024-07-21 17:56:22 -07:00
clock.c - In the series "treewide: Refactor heap related implementation", 2024-07-21 17:56:22 -07:00
clock.h bcachefs: Convert clock code to u64s 2024-07-14 19:00:16 -04:00
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: Don't pass NULL to memcpy() 2024-07-14 21:52:37 -04:00
darray.h bcachefs: Convert split_devs() to darray 2024-01-01 11:47:43 -05:00
data_update.c bcachefs: Fix failure to return error in data_update_index_update() 2024-08-26 20:33:12 -04:00
data_update.h bcachefs: bch2_data_update_to_text() 2024-07-10 09:53:39 -04:00
debug.c bcachefs: Convert for_each_btree_node() to lockrestart_do() 2024-08-13 22:56:50 -04:00
debug.h
dirent_format.h bcachefs: dirent_format.h 2024-01-21 13:27:10 -05:00
dirent.c bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -04:00
dirent.h bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -04:00
disk_accounting_format.h bcachefs: bcachefs_metadata_version_disk_accounting_inum 2024-08-13 23:00:50 -04:00
disk_accounting_types.h bcachefs: Refactor disk accounting data structures 2024-07-14 19:00:15 -04:00
disk_accounting.c bcachefs: bcachefs_metadata_version_disk_accounting_inum 2024-08-13 23:00:50 -04:00
disk_accounting.h bcachefs: bcachefs_metadata_version_disk_accounting_inum 2024-08-13 23:00:50 -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: Add error code to defer option parsing 2024-07-14 19:00:12 -04:00
disk_groups.h
ec_format.h bcachefs: ec_format.h 2024-01-21 13:27:11 -05:00
ec_types.h bcachefs: remove heap-related macros and switch to generic min_heap 2024-06-24 22:25:00 -07:00
ec.c bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -04:00
ec.h bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -04:00
errcode.c bcachefs: Errcode tracepoint, documentation 2024-03-13 21:22:25 -04:00
errcode.h bcachefs: Revert lockless buffered IO path 2024-08-31 19:26:08 -04:00
error.c bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -04:00
error.h bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -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: Fix bch2_extents_match() false positive 2024-08-26 20:33:12 -04:00
extents.h bcachefs: Fix rebalance_work accounting 2024-08-24 10:16:21 -04:00
eytzinger.c bcachefs: Optimize eytzinger0_sort() with bottom-up heapsort 2024-05-08 17:29:18 -04:00
eytzinger.h bcachefs: Fix bch2_gc_accounting_done() locking 2024-07-14 19:00:15 -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 bcachefs: fix missing include 2024-07-14 19:00:12 -04:00
fs-io-buffered.c bcachefs: Revert lockless buffered IO path 2024-08-31 19:26:08 -04:00
fs-io-buffered.h
fs-io-direct.c bcachefs: Use filemap_read() to simplify the execution flow 2024-07-14 19:00:12 -04:00
fs-io-direct.h
fs-io-pagecache.c bcachefs: Ensure buffered writes write as much as they can 2024-07-14 19:00:16 -04:00
fs-io-pagecache.h bcachefs: Ensure buffered writes write as much as they can 2024-07-14 19:00:16 -04:00
fs-io.c bcachefs: support REMAP_FILE_DEDUP in bch2_remap_file_range 2024-07-14 19:00:15 -04:00
fs-io.h
fs-ioctl.c bcachefs: Fix locking in bch2_ioc_setlabel() 2024-08-22 02:07:23 -04:00
fs-ioctl.h bcachefs: x-macro-ify inode flags enum 2023-11-05 13:12:18 -05:00
fs.c bcachefs: fix incorrect i_state usage 2024-08-16 12:46:40 -04:00
fs.h bcachefs: kill INODE_LOCK, use lock_two_nondirectories() 2024-01-01 11:47:36 -05:00
fsck.c bcachefs: add missing inode_walker_exit() 2024-08-22 10:04:41 -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: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -04:00
inode.h bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -04:00
io_misc.c bcachefs: Make allocator stuck timeout configurable, ratelimit messages 2024-08-07 21:04:55 -04:00
io_misc.h
io_read.c bcachefs: Add missing bch2_trans_begin() call 2024-08-07 08:31:10 -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: Make allocator stuck timeout configurable, ratelimit messages 2024-08-07 21:04:55 -04:00
io_write.h bcachefs: Rename BCH_WRITE_DONE -> BCH_WRITE_SUBMITTED 2024-07-14 19:59:12 -04:00
journal_io.c bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -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: Fix printbuf usage while atomic 2024-07-22 11:27:15 -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: Fix missing validation in bch2_sb_journal_v2_validate() 2024-08-22 02:07:23 -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: Fix shift-out-of-bounds in bch2_blacklist_entries_gc 2024-06-25 17:53:31 -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: Fix warning in bch2_fs_journal_stop() 2024-08-22 02:07:23 -04:00
journal.h bcachefs: Use try_cmpxchg() family of functions instead of cmpxchg() 2024-07-14 19:00:12 -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_format.h bcachefs: split out lru_format.h 2024-07-14 19:00:16 -04:00
lru.c bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -04:00
lru.h bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -04:00
Makefile bcachefs: KEY_TYPE_accounting 2024-07-14 19:00:13 -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: Avoid too-large shift amounts 2024-07-18 18:33:30 -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: btree_ptr_sectors_written() now takes bkey_s_c 2024-07-14 19:00:12 -04:00
move.h bcachefs: rebalance should wakeup on shutdown if disabled 2024-01-01 11:47:39 -05:00
movinggc.c bcachefs: Fix failure to flush moves before sleeping in copygc 2024-08-24 10:16:21 -04:00
movinggc.h
nocow_locking_types.h
nocow_locking.c
nocow_locking.h
opts.c bcachefs: Add error code to defer option parsing 2024-07-14 19:00:12 -04:00
opts.h bcachefs: Make allocator stuck timeout configurable, ratelimit messages 2024-08-07 21:04:55 -04:00
printbuf.c bcachefs: bch2_printbuf_strip_trailing_newline() 2024-07-14 19:00:12 -04:00
printbuf.h bcachefs: bch2_printbuf_strip_trailing_newline() 2024-07-14 19:00:12 -04:00
quota_format.h bcachefs; quota_format.h 2024-01-21 13:27:10 -05:00
quota_types.h
quota.c bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -04:00
quota.h bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -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: Disk space accounting rewrite 2024-07-14 19:00:13 -04:00
recovery_passes.c bcachefs: Reduce the scope of gc_lock 2024-07-14 19:00:15 -04:00
recovery_passes.h bcachefs: bch2_run_explicit_recovery_pass_persistent() 2024-03-31 20:36:12 -04:00
recovery.c bcachefs: Fix replay_now_at() assert 2024-08-22 02:07:23 -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: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -04:00
reflink.h bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -04:00
replicas_format.h bcachefs: Split out replicas_format.h 2024-05-28 17:32:03 -04:00
replicas_types.h bcachefs: Disk space accounting rewrite 2024-07-14 19:00:13 -04:00
replicas.c bcachefs: fix field-spanning write warning 2024-08-18 20:42:05 -04:00
replicas.h bcachefs: Convert gc to new accounting 2024-07-14 19:00:13 -04:00
sb-clean.c bcachefs: Kill writing old accounting to journal 2024-07-14 19:00:13 -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 rebalance_work accounting 2024-08-24 10:16:21 -04:00
sb-downgrade.h bcachefs: metadata version bucket_stripe_sectors 2024-07-14 19:00:12 -04:00
sb-errors_format.h bcachefs: bch2_accounting_invalid() 2024-08-09 14:40:19 -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: slab-use-after-free Read in bch2_sb_errors_from_cpu 2024-06-25 17:51:26 -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 bcachefs: fix seqmutex_relock() 2024-06-23 00:57:21 -04:00
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: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -04:00
snapshot.h bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -04:00
str_hash.h bcachefs: Replace bare EEXIST with private error codes 2024-06-21 10:17:07 -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: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -04:00
subvolume.h bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -04:00
super_types.h bcachefs: bucket_valid() 2024-05-08 17:29:19 -04:00
super-io.c bcachefs: Make allocator stuck timeout configurable, ratelimit messages 2024-08-07 21:04:55 -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: Fix double free of ca->buckets_nouse 2024-07-30 20:43:29 -04:00
super.h bcachefs: convert bch_fs_flags to x-macro 2024-01-01 11:47:38 -05:00
sysfs.c bcachefs: Improved allocator debugging for ec 2024-08-07 08:31:10 -04:00
sysfs.h
tests.c bcachefs: bch2_btree_insert() - add btree iter flags 2024-07-14 19:00:15 -04:00
tests.h
thread_with_file_types.h bcachefs: twf: delete dead struct fields 2024-07-14 19:00:14 -04:00
thread_with_file.c bcachefs: bch2_stdio_redirect_readline_timeout() 2024-07-14 19:00:14 -04:00
thread_with_file.h bcachefs: bch2_stdio_redirect_readline_timeout() 2024-07-14 19:00:14 -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 bcachefs: Improve trans_blocked_journal_reclaim tracepoint 2024-08-13 23:00:34 -04:00
trace.h bcachefs: Improve trans_blocked_journal_reclaim tracepoint 2024-08-13 23:00:34 -04:00
two_state_shared_lock.c
two_state_shared_lock.h bcachefs: Use try_cmpxchg() family of functions instead of cmpxchg() 2024-07-14 19:00:12 -04:00
util.c bcachefs: fix time_stats_to_text() 2024-08-22 02:07:22 -04:00
util.h - In the series "treewide: Refactor heap related implementation", 2024-07-21 17:56:22 -07:00
varint.c bcachefs: varint: Avoid left-shift of a negative value 2024-07-18 18:33:30 -04:00
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: setting bcachefs_effective.* xattrs is a noop 2024-08-22 02:07:22 -04:00
xattr.h bcachefs: Make bkey_fsck_err() a wrapper around fsck_err() 2024-08-13 23:00:50 -04:00