aboutsummaryrefslogtreecommitdiffstats
path: root/fs/bcachefs/buckets.c
AgeCommit message (Expand)AuthorFilesLines
10 daysbcachefs: kill bch2_dev_bkey_exists() in bch2_check_fix_ptrs()Kent Overstreet1-3/+24
11 daysbcachefs: Kill bch2_dev_bkey_exists() in backpointer codeKent Overstreet1-1/+1
11 daysbcachefs: PTR_BUCKET_POS() now takes bch_devKent Overstreet1-1/+1
11 daysbcachefs: bch2_bucket_ref_update() now takes bch_devKent Overstreet1-21/+26
11 daysbcachefs: New helpers for device refcountsKent Overstreet1-2/+2
11 daysbcachefs: Kill opts.buckets_nouseKent Overstreet1-16/+27
11 daysbcachefs: simplify bch2_trans_start_alloc_update()Kent Overstreet1-11/+4
11 daysbcachefs: __mark_stripe_bucket() now takes bch_alloc_v4Kent Overstreet1-1/+0
11 daysbcachefs: __mark_pointer now takes bch_alloc_v4Kent Overstreet1-31/+14
11 daysbcachefs: kill bch2_dev_usage_update_m()Kent Overstreet1-28/+7
11 daysbcachefs: dirty_sectors -> replicas_sectorsKent Overstreet1-4/+4
11 daysbcachefs: Run bch2_check_fix_ptrs() via triggersKent Overstreet1-2/+240
11 daysbcachefs: bch2_bucket_ref_update()Kent Overstreet1-23/+32
11 daysbcachefs: bucket_data_type_mismatch()Kent Overstreet1-10/+1
11 daysbcachefs: member helper cleanupsKent Overstreet1-2/+2
11 daysbcachefs: iter/update/trigger/str_hash flag cleanupKent Overstreet1-37/+40
11 daysbcachefs: mark_superblock cleanupKent Overstreet1-78/+82
11 daysbcachefs: prt_printf() now respects \r\n\tKent Overstreet1-16/+5
2024-04-28bcachefs: Remove accidental debug assertKent Overstreet1-2/+0
2024-03-31bcachefs: Kill bch2_bkey_ptr_data_type()Kent Overstreet1-5/+7
2024-03-18bcachefs: Improve bch2_fatal_error()Kent Overstreet1-3/+3
2024-03-13bcachefs: bch2_btree_bit_mod -> bch2_btree_bit_mod_bufferedKent Overstreet1-1/+2
2024-03-13bcachefs: kill kvpmalloc()Kent Overstreet1-18/+11
2024-01-21bcachefs: bch2_trans_account_disk_usage_change()Kent Overstreet1-29/+41
2024-01-21bcachefs: bch_fs_usage_baseKent Overstreet1-28/+28
2024-01-21bcachefs: helpers for printing data typesKent Overstreet1-13/+13
2024-01-05bcachefs: move "ptrs not changing" optimization to bch2_trigger_extent()Kent Overstreet1-0/+12
2024-01-05bcachefs: unify extent triggerKent Overstreet1-85/+29
2024-01-05bcachefs: bch2_trigger_stripe_ptr()Kent Overstreet1-67/+61
2024-01-05bcachefs: bch2_trigger_pointer()Kent Overstreet1-234/+209
2024-01-05bcachefs: move stripe triggers to ec.cKent Overstreet1-337/+19
2024-01-05bcachefs: move bch2_mark_alloc() to alloc_background.cKent Overstreet1-126/+18
2024-01-05bcachefs: unify reservation triggerKent Overstreet1-59/+37
2024-01-05bcachefs: kill mem_trigger_run_overwrite_then_insert()Kent Overstreet1-2/+2
2024-01-05bcachefs: mark now takes bkey_sKent Overstreet1-5/+6
2024-01-05bcachefs: trans_mark now takes bkey_sKent Overstreet1-9/+9
2024-01-01bcachefs: for_each_member_device_rcu() now declares loop iterKent Overstreet1-3/+2
2024-01-01bcachefs: for_each_member_device() now declares loop iterKent Overstreet1-13/+6
2024-01-01bcachefs: bch_err_(fn|msg) check if should printKent Overstreet1-2/+1
2024-01-01bcachefs: Move reflink_p triggers into reflink.cKent Overstreet1-200/+0
2024-01-01bcachefs: Kill journal_seq/gc args to bch2_dev_usage_update_m()Kent Overstreet1-8/+5
2024-01-01bcachefs: Kill dev_usage->buckets_ecKent Overstreet1-9/+0
2024-01-01bcachefs: bch2_dev_usage_to_text()Kent Overstreet1-0/+30
2024-01-01bcachefs: New bucket sector count helpersKent Overstreet1-31/+21
2024-01-01bcachefs: Simplify check_bucket_ref()Kent Overstreet1-8/+4
2024-01-01bcachefs: Don't use update_cached_sectors() in bch2_mark_alloc()Kent Overstreet1-29/+11
2024-01-01bcachefs: Rename bch_replicas_entry -> bch_replicas_entry_v1Kent Overstreet1-5/+5
2023-11-28bcachefs: Fix bucket data type for stripe bucketsKent Overstreet1-2/+6
2023-11-24bcachefs: Don't stop copygc thread on device resizeKent Overstreet1-2/+0
2023-11-01bcachefs: Fix an integer overflowKent Overstreet1-2/+2
2023-11-01bcachefs: Enumerate fsck errorsKent Overstreet1-3/+10
2023-11-01bcachefs: rebalance_workKent Overstreet1-0/+10
2023-10-31bcachefs: All triggers are BTREE_TRIGGER_WANTS_OLD_AND_NEWKent Overstreet1-47/+76
2023-10-31bcachefs: Ensure devices are always correctly initializedKent Overstreet1-8/+24
2023-10-22bcachefs: Switch to unsafe_memcpy() in a few placesKent Overstreet1-2/+3
2023-10-22bcachefs: bucket_lock() is now a sleepable lockKent Overstreet1-2/+0
2023-10-22bcachefs: Fix an overflow checkKent Overstreet1-3/+3
2023-10-22bcachefs: Heap allocate btree_transKent Overstreet1-1/+1
2023-10-22bcachefs: remove redundant initialization of pointer dColin Ian King1-1/+1
2023-10-22bcachefs: __bch2_btree_insert() -> bch2_btree_insert_trans()Kent Overstreet1-1/+1
2023-10-22bcachefs: Fix assorted checkpatch nitsKent Overstreet1-0/+1
2023-10-22bcachefs: move inode triggers to inode.cKent Overstreet1-68/+3
2023-10-22bcachefs: Upgrade path fixesKent Overstreet1-1/+1
2023-10-22bcachefs: Assorted sparse fixesKent Overstreet1-3/+3
2023-10-22bcachefs: bch2_trans_mark_pointer() refactoringKent Overstreet1-7/+7
2023-10-22bcachefs: New error message helpersKent Overstreet1-1/+4
2023-10-22bcachefs: replicas_deltas_realloc() uses allocate_dropping_locks()Kent Overstreet1-25/+56
2023-10-22bcachefs: GFP_NOIO -> GFP_NOFSKent Overstreet1-2/+2
2023-10-22bcachefs: Convert -ENOENT to private error codesKent Overstreet1-1/+1
2023-10-22bcachefs: Fix a buffer overrun in bch2_fs_usage_read()Kent Overstreet1-7/+9
2023-10-22bcachefs: bch2_bkey_get_mut() now calls bch2_trans_update()Kent Overstreet1-5/+1
2023-10-22bcachefs: bch2_bkey_get_mut() improvementsKent Overstreet1-8/+6
2023-10-22bcachefs: Rip out code for storing backpointers in alloc keysKent Overstreet1-4/+4
2023-10-22bcachefs: Private error codes: ENOMEMKent Overstreet1-8/+14
2023-10-22bcachefs: Journal resize fixesKent Overstreet1-1/+1
2023-10-22bcachefs: Mark stripe buckets with correct data typeKent Overstreet1-6/+8
2023-10-22bcachefs: bch2_mark_key() now takes btree_id & levelKent Overstreet1-0/+6
2023-10-22bcachefs: Simplify ec stripes heapKent Overstreet1-7/+5
2023-10-22bcachefs: Switch ec_stripes_heap_lock to a mutexKent Overstreet1-7/+7
2023-10-22bcachefs: Don't run triggers when repairing in __bch2_mark_reflink_p()Daniel Hill1-1/+1
2023-10-22bcachefs: let __bch2_btree_insert() pass in flagsDaniel Hill1-1/+2
2023-10-22bcachefs: More info on check_bucket_ref() errorKent Overstreet1-6/+10
2023-10-22bcachefs: KEY_TYPE_inode_v3, metadata_version_inode_v3Kent Overstreet1-2/+2
2023-10-22bcachefs: New on disk format: BackpointersKent Overstreet1-19/+29
2023-10-22bcachefs: Btree write bufferKent Overstreet1-0/+41
2023-10-22bcachefs: Better inlining for bch2_alloc_to_v4_mutKent Overstreet1-30/+34
2023-10-22bcachefs: Fix repair path in bch2_mark_reflink_p()Kent Overstreet1-8/+14
2023-10-22bcachefs: Kill fs_usage_apply_warn()Kent Overstreet1-31/+3
2023-10-22bcachefs: Fix some memcpy() warningsKent Overstreet1-1/+2
2023-10-22bcachefs: New btree helpersKent Overstreet1-32/+13
2023-10-22bcachefs: Improve fs_usage_apply_warn() messageKent Overstreet1-8/+9
2023-10-22bcachefs: Make error messages more uniformKent Overstreet1-3/+5
2023-10-22bcachefs: Assorted checkpatch fixesKent Overstreet1-4/+4
2023-10-22bcachefs: Optimize bch2_dev_usage_read()Kent Overstreet1-6/+3
2023-10-22bcachefs: Fix cached data accountingKent Overstreet1-1/+1
2023-10-22bcachefs: Fix "multiple types of data in same bucket" with ecKent Overstreet1-0/+4
2023-10-22bcachefs: Add private error codes for ENOSPCKent Overstreet1-1/+1
2023-10-22bcachefs: bch2_trans_run()Kent Overstreet1-2/+1
2023-10-22bcachefs: bch2_mark_alloc(): Do wakeups after updating usageKent Overstreet1-16/+16
2023-10-22bcachefs: Rename __bch2_trans_do() -> commit_do()Kent Overstreet1-1/+1
2023-10-22bcachefs: Printbuf reworkKent Overstreet1-11/+11
2023-10-22bcachefs: Tracepoint improvementsKent Overstreet1-3/+0
2023-10-22bcachefs: Plumb btree_id & level to trans_markKent Overstreet1-0/+5
2023-10-22bcachefs: Kill old rebuild_replicas optionKent Overstreet1-4/+3
2023-10-22bcachefs: Fold bucket_state in to BCH_DATA_TYPES()Kent Overstreet1-54/+36
2023-10-22bcachefs: More improvements for alloc info checksKent Overstreet1-6/+7
2023-10-22bcachefs: gc mark fn fixes, cleanupsKent Overstreet1-44/+41
2023-10-22bcachefs: Use crc_is_compressed()Kent Overstreet1-3/+2
2023-10-22bcachefs: Kill struct bucket_markKent Overstreet1-75/+60
2023-10-22bcachefs: Kill main in-memory bucket arrayKent Overstreet1-55/+25
2023-10-22bcachefs: bch2_dev_usage_update() no longer depends on bucket_markKent Overstreet1-14/+37
2023-10-22bcachefs: New bucket invalidate pathKent Overstreet1-0/+5
2023-10-22bcachefs: New discard implementationKent Overstreet1-0/+5
2023-10-22bcachefs: Kill allocator threads & freelistsKent Overstreet1-66/+6
2023-10-22bcachefs: Freespace, need_discard btreesKent Overstreet1-0/+5
2023-10-22bcachefs: KEY_TYPE_alloc_v4Kent Overstreet1-103/+83
2023-10-22bcachefs: x-macroize alloc_reserve enumKent Overstreet1-2/+2
2023-10-22bcachefs: Move deletion of refcount=0 indirect extents to their triggersKent Overstreet1-5/+0
2023-10-22bcachefs: Move trigger fns to bkey_opsKent Overstreet1-91/+45
2023-10-22bcachefs: bch2_trans_inconsistent()Kent Overstreet1-17/+15
2023-10-22bcachefs: Heap allocate printbufsKent Overstreet1-46/+73
2023-10-22bcachefs: Consolidate trigger code a bitKent Overstreet1-33/+0
2023-10-22bcachefs: bch2_trans_mark_key() now takes a bkey_i *Kent Overstreet1-34/+38
2023-10-22bcachefs: Improve reflink repair codeKent Overstreet1-14/+18
2023-10-22bcachefs: Normal update/commit path now works before going RWKent Overstreet1-3/+5
2023-10-22bcachefs: Only allocate buckets_nouse when requestedKent Overstreet1-5/+7
2023-10-22bcachefs: Stash a copy of key being overwritten in btree_insert_entryKent Overstreet1-16/+5
2023-10-22bcachefs: Fix freeing in bch2_dev_buckets_resize()Kent Overstreet1-4/+6
2023-10-22bcachefs: Ignore cached data when calculating fragmentationKent Overstreet1-2/+2
2023-10-22bcachefs: Don't use in-memory bucket array for alloc updatesKent Overstreet1-10/+7
2023-10-22bcachefs: New data structure for buckets waiting on journal commitKent Overstreet1-59/+21
2023-10-22bcachefs: Also print out in-memory gen on stale dirty pointerKent Overstreet1-12/+14
2023-10-22bcachefs: Add error messages for memory allocation failuresKent Overstreet1-6/+10
2023-10-22bcachefs: Optimize bucket reuseKent Overstreet1-36/+28
2023-10-22bcachefs: Kill bch2_ec_mem_alloc()Kent Overstreet1-1/+5
2023-10-22bcachefs: Fix allocator + journal interactionKent Overstreet1-1/+1
2023-10-22bcachefs: New in-memory array for bucket gensKent Overstreet1-2/+41
2023-10-22bcachefs: Separate out gc_bucket()Kent Overstreet1-40/+36
2023-10-22bcachefs: bch2_journal_key_insert() no longer transfers ownershipKent Overstreet1-12/+6
2023-10-22bcachefs: bch2_bucket_alloc_new_fs() no longer depends on bucket marksKent Overstreet1-50/+16
2023-10-22bcachefs: Option improvementsKent Overstreet1-3/+3
2023-10-22bcachefs: Improve alloc_mem_to_key()Kent Overstreet1-9/+3
2023-10-22bcachefs: bch2_alloc_write()Kent Overstreet1-28/+15
2023-10-22bcachefs: Split out struct gc_stripe from struct stripeKent Overstreet1-59/+57
2023-10-22bcachefs: bch2_trans_update() is now __must_checkKent Overstreet1-4/+12
2023-10-22bcachefs: Erasure coding fixesKent Overstreet1-35/+84
2023-10-22bcachefs: Handle replica marking fsck errors locallyKent Overstreet1-10/+28
2023-10-22bcachefs: Push c->mark_lock usage down to where it is neededKent Overstreet1-53/+71
2023-10-22bcachefs: Kill bch2_replicas_delta_list_marked()Kent Overstreet1-4/+13
2023-10-22bcachefs: Run insert triggers before overwrite triggersKent Overstreet1-35/+0
2023-10-22bcachefs: Disk space accounting fix on brand-new fsKent Overstreet1-0/+11
2023-10-22bcachefs: Fix upgrade path for reflink_p fixKent Overstreet1-4/+8
2023-10-22bcachefs: Add journal_seq to inode & alloc keysKent Overstreet1-9/+32
2023-10-22bcachefs: BTREE_TRIGGER_INSERT now only means insertKent Overstreet1-21/+5
2023-10-22bcachefs: Convert bch2_mark_key() to take a btree_trans *Kent Overstreet1-54/+70
2023-10-22bcachefs: Assorted ec fixesKent Overstreet1-2/+7
2023-10-22bcachefs: Fix bch2_mark_update()Kent Overstreet1-0/+6
2023-10-22bcachefs: Improve error messages in trans_mark_reflink_p()Kent Overstreet1-4/+7
2023-10-22bcachefs: Fix fsck path for refink pointersKent Overstreet1-76/+46
2023-10-22bcachefs: Fix for leaking of reflinked extentsKent Overstreet1-6/+39
2023-10-22bcachefs: Improve reflink repair codeKent Overstreet1-9/+42
2023-10-22bcachefs: Subvolumes, snapshotsKent Overstreet1-0/+3
2023-10-22bcachefs: btree_pathKent Overstreet1-121/+56
2023-10-22bcachefs: Prefer using btree_insert_entry to btree_iterKent Overstreet1-1/+1
2023-10-22bcachefs: Fix 32 bit build failuresBrett Holman1-1/+1
2023-10-22bcachefs: Disk space accounting fixKent Overstreet1-7/+10
2023-10-22bcachefs: Extensive triggers cleanupsKent Overstreet1-317/+256
2023-10-22bcachefs: Improve iter->should_be_lockedKent Overstreet1-1/+1
2023-10-22bcachefs: Make sure bch2_trans_mark_update uses correct iter flagsKent Overstreet1-1/+7
2023-10-22bcachefs: Don't underflow c->sectors_availableKent Overstreet1-1/+8
2023-10-22bcachefs: Kill bch2_btree_iter_peek_cached()Kent Overstreet1-11/+4
2023-10-22bcachefs: Simplify reflink triggerKent Overstreet1-64/+3
2023-10-22bcachefs: Move extent_handle_overwrites() to bch2_trans_update()Kent Overstreet1-110/+35
2023-10-22bcachefs: Don't mark superblocks past end of usable spaceKent Overstreet1-0/+12
2023-10-22bcachefs: Check for errors from bch2_trans_update()Kent Overstreet1-1/+3
2023-10-22bcachefs: Fsck for reflink refcountsKent Overstreet1-29/+123
2023-10-22bcachefs: Reflink refcount fixKent Overstreet1-11/+13
2023-10-22bcachefs: Inline fastpath of bch2_disk_reservation_add()Kent Overstreet1-1/+1
2023-10-22bcachefs: statfs resports incorrect avail blocksDan Robertson1-7/+0
2023-10-22bcachefs: Fix bch2_extent_can_insert() callKent Overstreet1-4/+6
2023-10-22bcachefs: made changes to support clang, fixed a couple bugsBrett Holman1-1/+3
2023-10-22bcachefs: properly initialize used valuesDan Robertson1-2/+2
2023-10-22bcachefs: Fix reflink triggerKent Overstreet1-6/+37
2023-10-22bcachefs: Fix some refcounting bugsKent Overstreet1-1/+1
2023-10-22bcachefs: Call bch2_inconsistent_error() on missing stripe/indirect extentKent Overstreet1-0/+4
2023-10-22bcachefs: Don't BUG() in update_replicasKent Overstreet1-13/+36
2023-10-22bcachefs: Handle errors in bch2_trans_mark_update()Kent Overstreet1-2/+3
2023-10-22bcachefs: gc shouldn't care about owned_by_allocatorKent Overstreet1-78/+4
2023-10-22bcachefs: Fix bch2_trans_mark_dev_sb()Kent Overstreet1-45/+18
2023-10-22bcachefs: Fix heap overrun in bch2_fs_usage_read() XXX squashKent Overstreet1-2/+2
2023-10-22bcachefs: Fix an uninitialized variableKent Overstreet1-1/+1
2023-10-22bcachefs: Kill bch2_fs_usage_scratch_get()Kent Overstreet1-141/+70
2023-10-22bcachefs: Fix livelock calling bch2_mark_bkey_replicas()Kent Overstreet1-0/+13
2023-10-22bcachefs: Fix this_cpu_ptr() usageKent Overstreet1-1/+2
2023-10-22buckets.c fixups XXX squashKent Overstreet1-49/+40
2023-10-22bcachefs: Assert that iterators aren't being double freedKent Overstreet1-0/+4
2023-10-22bcachefs: Have fsck check for stripe pointers matching stripeKent Overstreet1-0/+2
2023-10-22bcachefs: Rename BTREE_ID enums for consistency with other enumsKent Overstreet1-5/+5
2023-10-22bcachefs: Add a mempool for the replicas delta listKent Overstreet1-2/+18
2023-10-22bcachefs: Extents may now cross btree node boundariesKent Overstreet1-42/+25