linux/fs/bcachefs
Linus Torvalds 8f72c31f45 vfs-6.12.misc
-----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQRAhzRXHqcMeLMyaSiRxhvAZXjcogUCZuQEGwAKCRCRxhvAZXjc
 ojIuAQC433+hBkvjvmQ7H0r5rgZSjUuCTG3bSmdU7RJmPHUHhwEA85v/NGq53f+W
 IhandK6t+Cf0JYpFZ3N0bT88hDYVhQQ=
 =9zGL
 -----END PGP SIGNATURE-----

Merge tag 'vfs-6.12.misc' of gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs

Pull misc vfs updates from Christian Brauner:
 "This contains the usual pile of misc updates:

  Features:

   - Add F_CREATED_QUERY fcntl() that allows userspace to query whether
     a file was actually created. Often userspace wants to know whether
     an O_CREATE request did actually create a file without using
     O_EXCL. The current logic is that to first attempts to open the
     file without O_CREAT | O_EXCL and if ENOENT is returned userspace
     tries again with both flags. If that succeeds all is well. If it
     now reports EEXIST it retries.

     That works fairly well but some corner cases make this more
     involved. If this operates on a dangling symlink the first openat()
     without O_CREAT | O_EXCL will return ENOENT but the second openat()
     with O_CREAT | O_EXCL will fail with EEXIST.

     The reason is that openat() without O_CREAT | O_EXCL follows the
     symlink while O_CREAT | O_EXCL doesn't for security reasons. So
     it's not something we can really change unless we add an explicit
     opt-in via O_FOLLOW which seems really ugly.

     All available workarounds are really nasty (fanotify, bpf lsm etc)
     so add a simple fcntl().

   - Try an opportunistic lookup for O_CREAT. Today, when opening a file
     we'll typically do a fast lookup, but if O_CREAT is set, the kernel
     always takes the exclusive inode lock. This was likely done with
     the expectation that O_CREAT means that we always expect to do the
     create, but that's often not the case. Many programs set O_CREAT
     even in scenarios where the file already exists (see related
     F_CREATED_QUERY patch motivation above).

     The series contained in the pr rearranges the pathwalk-for-open
     code to also attempt a fast_lookup in certain O_CREAT cases. If a
     positive dentry is found, the inode_lock can be avoided altogether
     and it can stay in rcuwalk mode for the last step_into.

   - Expose the 64 bit mount id via name_to_handle_at()

     Now that we provide a unique 64-bit mount ID interface in statx(2),
     we can now provide a race-free way for name_to_handle_at(2) to
     provide a file handle and corresponding mount without needing to
     worry about racing with /proc/mountinfo parsing or having to open a
     file just to do statx(2).

     While this is not necessary if you are using AT_EMPTY_PATH and
     don't care about an extra statx(2) call, users that pass full paths
     into name_to_handle_at(2) need to know which mount the file handle
     comes from (to make sure they don't try to open_by_handle_at a file
     handle from a different filesystem) and switching to AT_EMPTY_PATH
     would require allocating a file for every name_to_handle_at(2) call

   - Add a per dentry expire timeout to autofs

     There are two fairly well known automounter map formats, the autofs
     format and the amd format (more or less System V and Berkley).

     Some time ago Linux autofs added an amd map format parser that
     implemented a fair amount of the amd functionality. This was done
     within the autofs infrastructure and some functionality wasn't
     implemented because it either didn't make sense or required extra
     kernel changes. The idea was to restrict changes to be within the
     existing autofs functionality as much as possible and leave changes
     with a wider scope to be considered later.

     One of these changes is implementing the amd options:
      1) "unmount", expire this mount according to a timeout (same as
         the current autofs default).
      2) "nounmount", don't expire this mount (same as setting the
         autofs timeout to 0 except only for this specific mount) .
      3) "utimeout=<seconds>", expire this mount using the specified
         timeout (again same as setting the autofs timeout but only for
         this mount)

     To implement these options per-dentry expire timeouts need to be
     implemented for autofs indirect mounts. This is because all map
     keys (mounts) for autofs indirect mounts use an expire timeout
     stored in the autofs mount super block info. structure and all
     indirect mounts use the same expire timeout.

  Fixes:

   - Fix missing fput for FSCONFIG_SET_FD in autofs

   - Use param->file for FSCONFIG_SET_FD in coda

   - Delete the 'fs/netfs' proc subtreee when netfs module exits

   - Make sure that struct uid_gid_map fits into a single cacheline

   - Don't flush in-flight wb switches for superblocks without cgroup
     writeback

   - Correcting the idmapping mount example in the idmapping
     documentation

   - Fix a race between evice_inodes() and find_inode() and iput()

   - Refine the show_inode_state() macro definition in writeback code

   - Prevent dump_mapping() from accessing invalid dentry.d_name.name

   - Show actual source for debugfs in /proc/mounts

   - Annotate data-race of busy_poll_usecs in eventpoll

   - Don't WARN for racy path_noexec check in exec code

   - Handle OOM on mnt_warn_timestamp_expiry()

   - Fix some spelling in the iomap design documentation

   - Fix typo in procfs comment

   - Fix typo in fs/namespace.c comment

  Cleanups:

   - Add the VFS git tree to the MAINTAINERS file

   - Move FMODE_UNSIGNED_OFFSET to fop_flags freeing up another f_mode
     bit in struct file bringing us to 5 free f_mode bits

   - Remove the __I_DIO_WAKEUP bit from i_state flags as we can simplify
     the wait mechanism

   - Remove the unused path_put_init() helper

   - Replace a __u32 with u32 for s_fsnotify_mask as __u32 is uapi
     specific

   - Replace the unsigned long i_state member with a u32 i_state member
     in struct inode freeing up 4 bytes in struct inode. Instead of
     using the bit based wait apis we're now using the var event apis
     and using the individual bytes of the i_state member to wait on
     state changes

   - Explain how per-syscall AT_* flags should be allocated

   - Use in_group_or_capable() helper to simplify the posix acl mode
     update code

   - Switch to LIST_HEAD() in fsync_buffers_list() to simplify the code

   - Removed comment about d_rcu_to_refcount() as that function doesn't
     exist anymore

   - Add kernel documentation for lookup_fast()

   - Don't re-zero evenpoll fields

   - Remove outdated comment after close_fd()

   - Fix imprecise wording in comment about the pipe filesystem

   - Drop GFP_NOFAIL mode from alloc_page_buffers

   - Missing blank line warnings and struct declaration improved in
     file_table

   - Annotate struct poll_list with __counted_by()

   - Remove the unused read parameter in percpu-rwsem

   - Remove linux/prefetch.h include from direct-io code

   - Use kmemdup_array instead of kmemdup for multiple allocation in
     mnt_idmapping code

   - Remove unused mnt_cursor_del() declaration

  Performance tweaks:

   - Dodge smp_mb in break_lease and break_deleg in the common case

   - Only read fops once in fops_{get,put}()

   - Use RCU in ilookup()

   - Elide smp_mb in iversion handling in the common case

   - Drop one lock trip in evict()"

* tag 'vfs-6.12.misc' of gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs: (58 commits)
  uidgid: make sure we fit into one cacheline
  proc: Fix typo in the comment
  fs/pipe: Correct imprecise wording in comment
  fhandle: expose u64 mount id to name_to_handle_at(2)
  uapi: explain how per-syscall AT_* flags should be allocated
  fs: drop GFP_NOFAIL mode from alloc_page_buffers
  writeback: Refine the show_inode_state() macro definition
  fs/inode: Prevent dump_mapping() accessing invalid dentry.d_name.name
  mnt_idmapping: Use kmemdup_array instead of kmemdup for multiple allocation
  netfs: Delete subtree of 'fs/netfs' when netfs module exits
  fs: use LIST_HEAD() to simplify code
  inode: make i_state a u32
  inode: port __I_LRU_ISOLATING to var event
  vfs: fix race between evice_inodes() and find_inode()&iput()
  inode: port __I_NEW to var event
  inode: port __I_SYNC to var event
  fs: reorder i_state bits
  fs: add i_state helpers
  MAINTAINERS: add the VFS git tree
  fs: s/__u32/u32/ for s_fsnotify_mask
  ...
2024-09-16 08:35:09 +02: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 ca->io_ref usage 2024-09-09 09:41:46 -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: Add a cond_resched() to __journal_keys_sort() 2024-09-09 09:41:46 -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: More BCH_SB_MEMBER_INVALID support 2024-09-09 09:41:46 -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: More BCH_SB_MEMBER_INVALID support 2024-09-09 09:41:46 -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: More BCH_SB_MEMBER_INVALID support 2024-09-09 09:41:46 -04:00
extents.h bcachefs: Simplify bch2_bkey_drop_ptrs() 2024-09-09 09:41:46 -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 vfs-6.12.misc 2024-09-16 08:35:09 +02:00
fs.h bcachefs: Don't delete open files in online fsck 2024-09-09 09:41:47 -04:00
fsck.c bcachefs: Don't delete open files in online fsck 2024-09-09 09:41:47 -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: More BCH_SB_MEMBER_INVALID support 2024-09-09 09:41:46 -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: Mark more errors as autofix 2024-08-31 19:27:01 -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: BCH_SB_MEMBER_INVALID 2024-09-03 20:43:14 -04:00
sb-members_types.h bcachefs: bucket_valid() 2024-05-08 17:29:19 -04:00
sb-members.c bcachefs: BCH_SB_MEMBER_INVALID 2024-09-03 20:43:14 -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: fix btree_key_cache sysfs knob 2024-09-09 09:41:47 -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