linux/fs/bcachefs
Kent Overstreet c4dd7871ef bcachefs: Some compression improvements
In __bio_map_or_bounce(), the check for if the bio is physically
contiguous is improved; it's now more readable and handles multi page
but contiguous bios.

Also when decompressing, we were doing a redundant memcpy in the case
where we were able to use vmap to map a bio contigiously.

Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2023-10-22 17:08:39 -04:00
..
acl.c bcachefs: Split out btree_trigger_flags 2023-10-22 17:08:33 -04:00
acl.h
alloc_background.c bcachefs: btree_and_journal_iter 2023-10-22 17:08:35 -04:00
alloc_background.h bcachefs: Refactor bch2_alloc_write() 2023-10-22 17:08:26 -04:00
alloc_foreground.c bcachefs: Drop unused arg to bch2_open_buckets_stop_dev() 2023-10-22 17:08:27 -04:00
alloc_foreground.h bcachefs: Drop unused arg to bch2_open_buckets_stop_dev() 2023-10-22 17:08:27 -04:00
alloc_types.h bcachefs: Fix some reserve calculations 2023-10-22 17:08:14 -04:00
bcachefs_format.h bcachefs: Kill bkey_type_successor 2023-10-22 17:08:37 -04:00
bcachefs_ioctl.h bcachefs: Redo filesystem usage ioctls 2023-10-22 17:08:33 -04:00
bcachefs.h bcachefs: Add an option for keeping journal entries after startup 2023-10-22 17:08:37 -04:00
bkey_methods.c bcachefs: Fix for the bkey compat path 2023-10-22 17:08:39 -04:00
bkey_methods.h bcachefs: Kill bkey_type_successor 2023-10-22 17:08:37 -04:00
bkey_on_stack.h bcachefs: bkey_on_stack_reassemble() 2023-10-22 17:08:32 -04:00
bkey_sort.c bcachefs: Disable extent merging 2023-10-22 17:08:37 -04:00
bkey_sort.h bcachefs: Kill btree_node_iter_large 2023-10-22 17:08:32 -04:00
bkey.c bcachefs: Make __bch2_bkey_cmp_packed() smaller 2023-10-22 17:08:31 -04:00
bkey.h bcachefs: Disable extent merging 2023-10-22 17:08:37 -04:00
bset.c bcachefs: Iterator debug code improvements 2023-10-22 17:08:36 -04:00
bset.h bcachefs: Fix bch2_sort_keys() to not modify src keys 2023-10-22 17:08:34 -04:00
btree_cache.c bcachefs: Kill bkey_type_successor 2023-10-22 17:08:37 -04:00
btree_cache.h bcachefs: Slightly reduce btree split threshold 2023-10-22 17:08:38 -04:00
btree_gc.c bcachefs: Add some printks for error paths 2023-10-22 17:08:39 -04:00
btree_gc.h bcachefs: btree_bkey_cached_common 2023-10-22 17:08:21 -04:00
btree_io.c bcachefs: Fix two more deadlocks 2023-10-22 17:08:39 -04:00
btree_io.h bcachefs: Fix a locking bug 2023-10-22 17:08:38 -04:00
btree_iter.c bcachefs: Trace where btree iterators are allocated 2023-10-22 17:08:38 -04:00
btree_iter.h bcachefs: Trace where btree iterators are allocated 2023-10-22 17:08:38 -04:00
btree_locking.h bcachefs: Fix a deadlock 2023-10-22 17:08:39 -04:00
btree_types.h bcachefs: Trace where btree iterators are allocated 2023-10-22 17:08:38 -04:00
btree_update_interior.c bcachefs: Fix two more deadlocks 2023-10-22 17:08:39 -04:00
btree_update_interior.h bcachefs: Fix a deadlock on starting an interior btree update 2023-10-22 17:08:38 -04:00
btree_update_leaf.c bcachefs: Fix a debug assertion 2023-10-22 17:08:38 -04:00
btree_update.h bcachefs: Journal updates to interior nodes 2023-10-22 17:08:37 -04:00
buckets_types.h bcachefs: Make replicas_delta_list smaller 2023-10-22 17:08:30 -04:00
buckets.c bcachefs: Don't use peek_filter() unnecessarily 2023-10-22 17:08:36 -04:00
buckets.h bcachefs: Move extent overwrite handling out of core btree code 2023-10-22 17:08:36 -04:00
chardev.c bcachefs: Redo filesystem usage ioctls 2023-10-22 17:08:33 -04:00
chardev.h
checksum.c bcachefs: Track incompressible data 2023-10-22 17:08:34 -04:00
checksum.h bcachefs: Track incompressible data 2023-10-22 17:08:34 -04:00
clock_types.h bcachefs: Make io timers less buggy 2023-10-22 17:08:33 -04:00
clock.c bcachefs: Make io timers less buggy 2023-10-22 17:08:33 -04:00
clock.h bcachefs: Make io timers less buggy 2023-10-22 17:08:33 -04:00
compress.c bcachefs: Some compression improvements 2023-10-22 17:08:39 -04:00
compress.h
debug.c bcachefs: Kill direct access to bi_io_vec 2023-10-22 17:08:23 -04:00
debug.h
dirent.c bcachefs: Kill TRANS_RESET_MEM|TRANS_RESET_ITERS 2023-10-22 17:08:35 -04:00
dirent.h bcachefs: Convert all bch2_trans_commit() users to BTREE_INSERT_ATOMIC 2023-10-22 17:08:33 -04:00
disk_groups.c bcachefs: revamp to_text methods 2023-10-22 17:08:11 -04:00
disk_groups.h bcachefs: Erasure coding 2023-10-22 17:08:11 -04:00
ec_types.h bcachefs: Persist stripe blocks_used 2023-10-22 17:08:15 -04:00
ec.c bcachefs: Fix ec_stripe_update_ptrs() 2023-10-22 17:08:38 -04:00
ec.h bcachefs: Fix bch2_ptr_swab for indirect extents 2023-10-22 17:08:35 -04:00
error.c bcachefs: Add an option for fsck error ratelimiting 2023-10-22 17:08:31 -04:00
error.h bcachefs: Kill bch2_fs_bug() 2023-10-22 17:08:34 -04:00
extent_update.c bcachefs: More fixes for counting extent update iterators 2023-10-22 17:08:39 -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: Fix a locking bug in bch2_btree_ptr_debugcheck() 2023-10-22 17:08:38 -04:00
extents.h bcachefs: Add print method for bch2_btree_ptr_v2 2023-10-22 17:08:38 -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: Make sure we're releasing btree iterators 2023-10-22 17:08:35 -04:00
fs-common.h bcachefs: Update directory timestamps during link 2023-10-22 17:08:33 -04:00
fs-io.c bcachefs: Don't issue writes that are more than 1 MB 2023-10-22 17:08:39 -04:00
fs-io.h bcachefs: Kill bchfs_extent_update() 2023-10-22 17:08:29 -04:00
fs-ioctl.c bcachefs: Factor out fs-common.c 2023-10-22 17:08:28 -04:00
fs-ioctl.h bcachefs: Fix mtime/ctime updates 2023-10-22 17:08:07 -04:00
fs.c bcachefs: Add another mssing bch2_trans_iter_put() call 2023-10-22 17:08:38 -04:00
fs.h bcachefs: Factor out fs-common.c 2023-10-22 17:08:28 -04:00
fsck.c bcachefs: Fix inodes pass in fsck 2023-10-22 17:08:38 -04:00
fsck.h bcachefs: some improvements to startup messages and options 2023-10-22 17:08:21 -04:00
inode.c bcachefs: Kill bkey_type_successor 2023-10-22 17:08:37 -04:00
inode.h bcachefs: Kill bchfs_extent_update() 2023-10-22 17:08:29 -04:00
io_types.h bcachefs: Fix an uninitialized field in bch_write_op 2023-10-22 17:08:35 -04:00
io.c bcachefs: Shut down quicker 2023-10-22 17:08:37 -04:00
io.h bcachefs: Don't log errors that are expected during shutdown 2023-10-22 17:08:36 -04:00
journal_io.c bcachefs: Kill bkey_type_successor 2023-10-22 17:08:37 -04:00
journal_io.h bcachefs: Journal replay refactoring 2023-10-22 17:08:20 -04:00
journal_reclaim.c bcachefs: Fix a locking bug in bch2_journal_pin_copy() 2023-10-22 17:08:38 -04:00
journal_reclaim.h bcachefs: Journal pin cleanups 2023-10-22 17:08:36 -04:00
journal_seq_blacklist.c bcachefs: Convert some enums to x-macros 2023-10-22 17:08:33 -04:00
journal_seq_blacklist.h bcachefs: Rewrite journal_seq_blacklist machinery 2023-10-22 17:08:20 -04:00
journal_types.h bcachefs: Journal replay refactoring 2023-10-22 17:08:20 -04:00
journal.c bcachefs: Switch a BUG_ON() to a warning 2023-10-22 17:08:37 -04:00
journal.h bcachefs: Improve lockdep annotation in journalling code 2023-10-22 17:08:38 -04:00
Kconfig bcachefs: use crc64 from lib/ 2023-10-22 17:08:14 -04:00
keylist_types.h
keylist.c
keylist.h
Makefile bcachefs: Split out extent_update.c 2023-10-22 17:08:32 -04:00
migrate.c bcachefs: introduce b->hash_val 2023-10-22 17:08:35 -04:00
migrate.h
move_types.h bcachefs: Only get btree iters from btree transactions 2023-10-22 17:08:18 -04:00
move.c bcachefs: Handle -EINTR bch2_migrate_index_update() 2023-10-22 17:08:39 -04:00
move.h bcachefs: Reflink 2023-10-22 17:08:25 -04:00
movinggc.c bcachefs: Redo copygc throttling 2023-10-22 17:08:33 -04:00
movinggc.h
opts.c bcachefs: Convert some enums to x-macros 2023-10-22 17:08:33 -04:00
opts.h bcachefs: Add an option for keeping journal entries after startup 2023-10-22 17:08:37 -04:00
quota_types.h bcachefs: bch2_fs_quota_transfer 2023-10-22 17:08:13 -04:00
quota.c bcachefs: Split out btree_trigger_flags 2023-10-22 17:08:33 -04:00
quota.h bcachefs: more project quota fixes 2023-10-22 17:08:14 -04:00
rebalance_types.h
rebalance.c bcachefs: Account for ioclock slop when throttling rebalance thread 2023-10-22 17:08:38 -04:00
rebalance.h
recovery.c bcachefs: Fix iterating of journal keys within a btree node 2023-10-22 17:08:38 -04:00
recovery.h bcachefs: Add an option for keeping journal entries after startup 2023-10-22 17:08:37 -04:00
reflink.c bcachefs: Kill TRANS_RESET_MEM|TRANS_RESET_ITERS 2023-10-22 17:08:35 -04:00
reflink.h bcachefs: Fix bch2_ptr_swab for indirect extents 2023-10-22 17:08:35 -04:00
replicas_types.h bcachefs: Switch replicas to mark_lock 2023-10-22 17:08:13 -04:00
replicas.c bcachefs: Add some printks for error paths 2023-10-22 17:08:39 -04:00
replicas.h bcachefs: Redo filesystem usage ioctls 2023-10-22 17:08:33 -04:00
siphash.c
siphash.h
six.c
six.h
str_hash.h bcachefs: Kill TRANS_RESET_MEM|TRANS_RESET_ITERS 2023-10-22 17:08:35 -04:00
super_types.h bcachefs: Verify fs hasn't been modified before going rw 2023-10-22 17:08:18 -04:00
super-io.c bcachefs: Journal updates to interior nodes 2023-10-22 17:08:37 -04:00
super-io.h bcachefs: bch2_check_set_feature() 2023-10-22 17:08:32 -04:00
super.c bcachefs: Add an option for keeping journal entries after startup 2023-10-22 17:08:37 -04:00
super.h bcachefs: Don't export __bch2_fs_read_write 2023-10-22 17:08:33 -04:00
sysfs.c bcachefs: Track incompressible data 2023-10-22 17:08:34 -04:00
sysfs.h
tests.c bcachefs: Some btree iterator improvements 2023-10-22 17:08:36 -04:00
tests.h
trace.c
trace.h bcachefs: Add a few tracepoints 2023-10-22 17:08:38 -04:00
util.c bcachefs: Make memcpy_to_bio() param const 2023-10-22 17:08:32 -04:00
util.h bcachefs: Make memcpy_to_bio() param const 2023-10-22 17:08:32 -04:00
vstructs.h
xattr.c bcachefs: Kill BTREE_INSERT_ATOMIC 2023-10-22 17:08:33 -04:00
xattr.h bcachefs: Make bkey types globally unique 2023-10-22 17:08:12 -04:00