aboutsummaryrefslogtreecommitdiffstats
path: root/fs/btrfs/extent-tree.c
AgeCommit message (Expand)AuthorFilesLines
12 daysbtrfs: simplify return variables in btrfs_drop_subtree()Anand Jain1-9/+7
12 daysbtrfs: simplify return variables in lookup_extent_data_ref()Anand Jain1-15/+14
12 daysbtrfs: change root->root_key.objectid to btrfs_root_id()Josef Bacik1-31/+25
12 daysbtrfs: stop referencing btrfs_delayed_tree_ref directlyJosef Bacik1-5/+5
12 daysbtrfs: stop referencing btrfs_delayed_data_ref directlyJosef Bacik1-9/+11
12 daysbtrfs: make the insert backref helpers take a btrfs_delayed_ref_nodeJosef Bacik1-25/+21
12 daysbtrfs: drop unnecessary arguments from __btrfs_free_extentJosef Bacik1-15/+8
12 daysbtrfs: make __btrfs_inc_extent_ref take a btrfs_delayed_ref_nodeJosef Bacik1-32/+9
12 daysbtrfs: move ->parent and ->ref_root into btrfs_delayed_ref_nodeJosef Bacik1-9/+9
12 daysbtrfs: rename ->len to ->num_bytes in btrfs_refJosef Bacik1-7/+7
12 daysbtrfs: simplify delayed ref tracepointsJosef Bacik1-2/+2
12 daysbtrfs: move ref_root into btrfs_refJosef Bacik1-22/+16
12 daysbtrfs: do not use a function to initialize btrfs_refJosef Bacik1-38/+49
12 daysbtrfs: locking: rename __btrfs_tree_lock() and __btrfs_tree_read_lock()Filipe Manana1-1/+1
2024-04-09btrfs: zoned: add ASSERT and WARN for EXTENT_BUFFER_ZONED_ZEROOUT handlingNaohiro Aota1-0/+8
2024-03-04btrfs: avoid unnecessary ref initialization when freeing log tree blockFilipe Manana1-6/+7
2024-03-04btrfs: change BUG_ON to assertion when verifying root in btrfs_alloc_reserved...David Sterba1-1/+1
2024-03-04btrfs: handle invalid extent item reference found in check_committed_ref()David Sterba1-1/+8
2024-03-04btrfs: make btrfs_error_unpin_extent_range() return voidDavid Sterba1-7/+6
2024-03-04btrfs: return errors from unpin_extent_range()David Sterba1-4/+15
2024-03-04btrfs: remove unused included headersDavid Sterba1-4/+1
2024-01-18btrfs: don't warn if discard range is not aligned to sectorDavid Sterba1-1/+2
2024-01-12btrfs: zoned: optimize hint byte for zoned allocatorNaohiro Aota1-0/+18
2024-01-12btrfs: zoned: factor out prepare_allocation_zoned()Naohiro Aota1-13/+19
2023-12-15btrfs: reflow btrfs_free_tree_blockJohannes Thumshirn1-49/+50
2023-12-15btrfs: remove now unneeded btrfs_redirty_list_addJohannes Thumshirn1-4/+1
2023-12-15btrfs: rename EXTENT_BUFFER_NO_CHECK to EXTENT_BUFFER_ZONED_ZEROOUTJohannes Thumshirn1-1/+1
2023-12-06btrfs: ensure releasing squota reserve on head refsBoris Burkov1-14/+34
2023-11-03btrfs: get correct owning_root when dropping snapshotJosef Bacik1-8/+17
2023-10-12btrfs: track data relocation with simple quotaBoris Burkov1-5/+8
2023-10-12btrfs: qgroup: track metadata relocation COW with simple quotaBoris Burkov1-2/+5
2023-10-12btrfs: qgroup: check generation when recording simple quota deltaBoris Burkov1-0/+4
2023-10-12btrfs: record simple quota deltas in delayed refsBoris Burkov1-8/+75
2023-10-12btrfs: add helper for inline owner ref lookupBoris Burkov1-0/+48
2023-10-12btrfs: new inline ref storing owning subvol of data extentsBoris Burkov1-11/+46
2023-10-12btrfs: track owning root in btrfs_refBoris Burkov1-8/+13
2023-10-12btrfs: rename tree_ref and data_ref owning_rootBoris Burkov1-5/+5
2023-10-12btrfs: delete stripe extent on extent deletionJohannes Thumshirn1-0/+6
2023-10-12btrfs: add support for inserting raid stripe extentsJohannes Thumshirn1-0/+1
2023-10-12btrfs: remove useless comment from btrfs_pin_extent_for_log_replay()Filipe Manana1-3/+0
2023-10-12btrfs: remove stale comment from btrfs_free_extent()Filipe Manana1-1/+0
2023-10-12btrfs: abort transaction on generation mismatch when marking eb as dirtyFilipe Manana1-16/+20
2023-10-12btrfs: stop doing excessive space reservation for csum deletionFilipe Manana1-5/+5
2023-10-12btrfs: reserve space for delayed refs on a per ref basisFilipe Manana1-14/+15
2023-10-12btrfs: allow to run delayed refs by bytes to be released instead of countFilipe Manana1-19/+34
2023-10-12btrfs: simplify check for extent item overrun at lookup_inline_extent_backref()Filipe Manana1-11/+11
2023-10-12btrfs: return -EUCLEAN if extent item is missing when searching inline backrefFilipe Manana1-1/+1
2023-10-12btrfs: use a single variable for return value at lookup_inline_extent_backref()Filipe Manana1-18/+15
2023-10-12btrfs: use a single variable for return value at run_delayed_extent_op()Filipe Manana1-8/+5
2023-10-12btrfs: remove pointless 'ref_root' variable from run_delayed_data_ref()Filipe Manana1-5/+3
2023-10-12btrfs: initialize key where it's used when running delayed data refFilipe Manana1-6/+8
2023-10-12btrfs: remove refs_to_drop argument from __btrfs_free_extent()Filipe Manana1-5/+5
2023-10-12btrfs: remove refs_to_add argument from __btrfs_inc_extent_ref()Filipe Manana1-5/+4
2023-10-12btrfs: remove unnecessary logic when running new delayed referencesFilipe Manana1-14/+3
2023-10-12btrfs: move extent_buffer::lock_owner to debug sectionDavid Sterba1-9/+23
2023-10-12btrfs: reduce parameters of btrfs_pin_extent_for_log_replayDavid Sterba1-4/+4
2023-10-12btrfs: reduce parameters of btrfs_pin_reserved_extentDavid Sterba1-5/+5
2023-10-12btrfs: reformat remaining kdoc style commentsDavid Sterba1-3/+3
2023-10-12btrfs: remove btrfs_crc32c wrapperJosef Bacik1-3/+3
2023-09-20btrfs: log message if extent item not found when running delayed extent opFilipe Manana1-1/+4
2023-09-20btrfs: remove redundant BUG_ON() from __btrfs_inc_extent_ref()Filipe Manana1-4/+3
2023-09-20btrfs: return -EUCLEAN for delayed tree ref with a ref count not equals to 1Filipe Manana1-3/+3
2023-08-21btrfs: remove v0 extent handlingQu Wenruo1-14/+21
2023-08-21btrfs: output extra debug info if we failed to find an inline backrefQu Wenruo1-0/+5
2023-08-21btrfs: zoned: do not zone finish data relocation block groupNaohiro Aota1-20/+23
2023-08-21btrfs: wait on uncached block groups on every allocation loopJosef Bacik1-43/+18
2023-08-21btrfs: handle errors properly in update_inline_extent_backref()Qu Wenruo1-12/+61
2023-08-21btrfs: zoned: don't activate non-DATA BG on allocationNaohiro Aota1-1/+7
2023-08-21btrfs: move comments to btrfs_loop_type definitionJosef Bacik1-9/+28
2023-08-21btrfs: move btrfs_free_excluded_extents() into block-group.cFilipe Manana1-12/+0
2023-08-21btrfs: open code trivial btrfs_add_excluded_extent()Filipe Manana1-9/+0
2023-08-21btrfs: make find_first_extent_bit() return a booleanFilipe Manana1-3/+2
2023-08-10btrfs: set cache_block_group_error if we find an errorJosef Bacik1-1/+4
2023-06-19btrfs: use bool type for delayed ref head fields that are used as booleansFilipe Manana1-7/+7
2023-06-19btrfs: remove pointless in_tree field from struct btrfs_delayed_ref_nodeFilipe Manana1-1/+0
2023-06-19btrfs: drop gfp from parameter extent state helpersDavid Sterba1-8/+6
2023-06-19btrfs: drop NOFAIL from set_extent_bit allocation masksDavid Sterba1-2/+1
2023-06-19btrfs: open code set_extent_bitsDavid Sterba1-5/+5
2023-06-19btrfs: open code set_extent_dirtyDavid Sterba1-6/+9
2023-06-19btrfs: open code set_extent_newDavid Sterba1-2/+3
2023-06-19btrfs: fix comment referring to no longer existing btrfs_clean_tree_block()Filipe Manana1-1/+1
2023-06-19btrfs: remove level argument from btrfs_set_block_flagsJosef Bacik1-4/+3
2023-06-19btrfs: use SECTOR_SHIFT to convert LBA to physical offsetAnand Jain1-2/+2
2023-06-19btrfs: use SECTOR_SHIFT to convert physical offset to LBAAnand Jain1-2/+4
2023-06-19btrfs: improve leaf dump and error handlingQu Wenruo1-66/+57
2023-06-19btrfs: print-tree: pass const extent buffer pointerQu Wenruo1-1/+1
2023-04-17btrfs: remove obsolete delayed ref throttling logic when truncating itemsFilipe Manana1-25/+2
2023-04-17btrfs: abort the transaction if we get an error during snapshot dropJosef Bacik1-0/+2
2023-04-17btrfs: handle errors in walk_down_tree properlyJosef Bacik1-4/+4
2023-02-15btrfs: rename btrfs_clean_tree_block to btrfs_clear_buffer_dirtyJosef Bacik1-3/+3
2023-02-15btrfs: add trans argument to btrfs_clean_tree_blockJosef Bacik1-2/+2
2023-02-15btrfs: always lock the block before calling btrfs_clean_tree_blockJosef Bacik1-2/+1
2023-02-13btrfs: remove duplicate include header in extent-tree.cye xingchen1-1/+0
2023-02-13btrfs: don't use size classes for zoned file systemsBoris Burkov1-1/+1
2023-02-13btrfs: introduce size class to block group allocatorBoris Burkov1-34/+37
2023-02-13btrfs: add more find_free_extent tracepointsBoris Burkov1-0/+4
2023-02-13btrfs: pass find_free_extent_ctl to allocator tracepointsBoris Burkov1-86/+6
2023-02-13btrfs: directly pass in fs_info to btrfs_merge_delayed_refsJohannes Thumshirn1-2/+2
2023-01-03btrfs: always report error in run_one_delayed_ref()Qu Wenruo1-2/+5
2022-12-05btrfs: split the bio submission path into a separate fileChristoph Hellwig1-0/+1
2022-12-05btrfs: use btrfs_dev_name() helper to handle missing devices betterQu Wenruo1-1/+1
2022-12-05btrfs: concentrate all tree block parentness check parameters into one structureQu Wenruo1-4/+8
2022-12-05btrfs: move orphan prototypes into orphan.hJosef Bacik1-0/+1
2022-12-05btrfs: move file-item prototypes into their own headerJosef Bacik1-0/+1
2022-12-05btrfs: move root tree prototypes to their own headerJosef Bacik1-0/+1
2022-12-05btrfs: move extent-tree helpers into their own header fileJosef Bacik1-0/+1
2022-12-05btrfs: move btrfs_account_ro_block_groups_free_space into space-info.cJosef Bacik1-34/+0
2022-12-05btrfs: move accessor helpers into accessors.hJosef Bacik1-0/+1
2022-12-05btrfs: move fs wide helpers out of ctree.hJosef Bacik1-0/+1
2022-10-24btrfs: fix tree mod log mishandling of reallocated nodesJosef Bacik1-12/+13
2022-09-29btrfs: set generation before calling btrfs_clean_tree_block in btrfs_init_new...Tetsuo Handa1-0/+3
2022-09-29btrfs: make can_nocow_extent nowait compatibleJosef Bacik1-0/+6
2022-09-26btrfs: speedup checking for extent sharedness during fiemapFilipe Manana1-1/+9
2022-09-26btrfs: get rid of block group caching progress logicOmar Sandoval1-7/+2
2022-09-26btrfs: convert block group bit field to use bit helpersJosef Bacik1-2/+3
2022-08-23btrfs: fix space cache corruption and potential double allocationsOmar Sandoval1-24/+6
2022-08-17btrfs: fix lockdep splat with reloc root extent buffersJosef Bacik1-1/+17
2022-07-25btrfs: zoned: write out partially allocated regionNaohiro Aota1-0/+10
2022-07-25btrfs: zoned: finish least available block group on data bg allocationNaohiro Aota1-10/+40
2022-07-25btrfs: let can_allocate_chunk return errorNaohiro Aota1-7/+8
2022-07-25btrfs: use named constant for reserved device spaceQu Wenruo1-3/+3
2022-07-25btrfs: split discard handling out of btrfs_map_blockChristoph Hellwig1-44/+28
2022-07-16Merge tag 'for-5.19-rc7-tag' of git://git.kernel.org/pub/scm/linux/kernel/git...Linus Torvalds1-1/+1
2022-07-15Revert "btrfs: turn fs_roots_radix in btrfs_fs_info into an XArray"David Sterba1-1/+1
2022-06-26Merge tag 'for-5.19-rc3-tag' of git://git.kernel.org/pub/scm/linux/kernel/git...Linus Torvalds1-2/+18
2022-06-21btrfs: zoned: prevent allocation from previous data relocation BGNaohiro Aota1-2/+18
2022-05-24Merge tag 'for-5.19-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kda...Linus Torvalds1-33/+28
2022-05-16btrfs: zoned: introduce btrfs_zoned_bg_is_fullNaohiro Aota1-2/+1
2022-05-16btrfs: improve error reporting in lookup_inline_extent_backrefNikolay Borisov1-1/+7
2022-05-16btrfs: remove btrfs_delayed_extent_op::is_dataDavid Sterba1-4/+2
2022-05-16btrfs: sink parameter is_data to btrfs_set_disk_extent_flagsDavid Sterba1-3/+3
2022-05-16btrfs: turn fs_roots_radix in btrfs_fs_info into an XArrayGabriel Niebler1-1/+1
2022-05-16btrfs: use a read/write lock for protecting the block groups treeFilipe Manana1-2/+2
2022-05-16btrfs: use rbtree with leftmost node cached for tracking lowest block groupFilipe Manana1-13/+9
2022-05-16btrfs: remove search start argument from first_logical_byte()Filipe Manana1-3/+4
2022-05-16btrfs: stop allocating a path when checking if cross reference existsFilipe Manana1-7/+2
2022-04-17block: decouple REQ_OP_SECURE_ERASE from REQ_OP_DISCARDChristoph Hellwig1-2/+2
2022-04-17block: remove QUEUE_FLAG_DISCARDChristoph Hellwig1-2/+2
2022-04-06btrfs: zoned: activate block group only for extent allocationNaohiro Aota1-1/+1
2022-03-14btrfs: factor out do_free_extent_accounting helperJosef Bacik1-22/+30
2022-03-14btrfs: remove last_ref from the extent freeing codeJosef Bacik1-23/+11
2022-03-14btrfs: add a alloc_reserved_extent helperJosef Bacik1-32/+24
2022-03-14btrfs: remove BUG_ON(ret) in alloc_reserved_tree_blockJosef Bacik1-1/+2
2022-03-14btrfs: zoned: remove redundant initialization of to_addJiapeng Chong1-4/+3
2022-03-02btrfs: do not start relocation until in progress drops are doneJosef Bacik1-0/+10
2022-01-07btrfs: zoned: fix chunk allocation condition for zoned allocatorNaohiro Aota1-12/+9
2022-01-07btrfs: add extent allocator hook to decide to allocate chunk or notNaohiro Aota1-0/+17
2022-01-07btrfs: zoned: unset dedicated block group on allocation failureNaohiro Aota1-4/+16
2022-01-03btrfs: track the csum, extent, and free space trees in a rb treeJosef Bacik1-0/+1
2022-01-03btrfs: stop accessing ->csum_root directlyJosef Bacik1-3/+8
2022-01-03btrfs: stop accessing ->extent_root directlyJosef Bacik1-15/+25
2022-01-03btrfs: use chunk_root in find_free_extent_update_loopJosef Bacik1-1/+1
2022-01-03btrfs: make remove_extent_backref pass the rootJosef Bacik1-8/+10
2022-01-03btrfs: drop the _nr from the item helpersJosef Bacik1-7/+7
2021-12-15btrfs: fix invalid delayed ref after subvolume creation failureFilipe Manana1-6/+7
2021-12-08btrfs: fail if fstrim_range->start == U64_MAXJosef Bacik1-0/+3
2021-10-26btrfs: reduce btrfs_update_block_group alloc argument to boolAnand Jain1-3/+3
2021-10-26btrfs: pull up qgroup checks from delayed-ref core to init timeNikolay Borisov1-5/+0
2021-10-26btrfs: add additional parameters to btrfs_init_tree_ref/btrfs_init_data_refNikolay Borisov1-6/+11
2021-10-26btrfs: rename root fields in delayed refs structsNikolay Borisov1-5/+5
2021-10-26btrfs: assert that extent buffers are write locked instead of only lockedFilipe Manana1-2/+2
2021-10-26btrfs: rename btrfs_bio to btrfs_io_contextQu Wenruo1-10/+9
2021-10-26btrfs: zoned: let the for_treelog test in the allocator stand outJohannes Thumshirn1-3/+4
2021-10-26btrfs: zoned: add a dedicated data relocation block groupJohannes Thumshirn1-2/+49
2021-10-26btrfs: introduce btrfs_is_data_reloc_rootJohannes Thumshirn1-1/+1
2021-10-26btrfs: zoned: avoid chunk allocation if active block group has enough spaceNaohiro Aota1-7/+21
2021-10-26btrfs: move ffe_ctl one level upNaohiro Aota1-75/+87
2021-10-26btrfs: zoned: activate block group on allocationNaohiro Aota1-0/+12
2021-10-26btrfs: zoned: calculate free space from zone capacityNaohiro Aota1-1/+2
2021-10-07btrfs: unlock newly allocated extent buffer after errorQu Wenruo1-0/+1
2021-08-23btrfs: pass NULL as trans to btrfs_search_slot if we only want to searchMarcos Paulo de Souza1-1/+1
2021-08-23btrfs: cleanup fs_devices pointer usage in btrfs_trim_fsAnand Jain1-5/+5
2021-07-22btrfs: check for missing device in btrfs_trim_fsAnand Jain1-0/+3
2021-06-22btrfs: rip out btrfs_space_info::total_bytes_pinnedJosef Bacik1-15/+0
2021-06-22btrfs: fix typos in commentsDavid Sterba1-1/+1
2021-06-21btrfs: always abort the transaction if we abort a trans handleJosef Bacik1-1/+0
2021-05-27btrfs: return errors from btrfs_del_csums in cleanup_ref_headJosef Bacik1-1/+1
2021-05-04btrfs: fix unmountable seed device after fstrimAnand Jain1-1/+5
2021-04-19btrfs: use the new bit BTRFS_FS_TREE_MOD_LOG_USERS at btrfs_free_tree_block()Filipe Manana1-5/+3
2021-04-19btrfs: unexport btrfs_extent_readonly() and make it staticAnand Jain1-13/+0
2021-03-16btrfs: always pin deleted leaves when there are active tree mod log usersFilipe Manana1-1/+22
2021-02-09btrfs: zoned: extend zoned allocator to use dedicated tree-log block groupNaohiro Aota1-4/+71
2021-02-09btrfs: zoned: implement cloning for zoned device-replaceNaohiro Aota1-15/+42
2021-02-09btrfs: zoned: reset zones of unused block groupsNaohiro Aota1-5/+12
2021-02-09btrfs: zoned: redirty released extent buffersNaohiro Aota1-1/+11
2021-02-09btrfs: zoned: implement sequential extent allocationNaohiro Aota1-6/+84
2021-02-09btrfs: zoned: track unusable bytes for zonesNaohiro Aota1-0/+5
2021-02-08btrfs: remove bogus BUG_ON in alloc_reserved_tree_blockJosef Bacik1-1/+0
2021-02-08btrfs: delayed refs pre-flushing should only run the heads we haveJosef Bacik1-1/+1
2021-02-08btrfs: account for new extents being deleted in total_bytes_pinnedJosef Bacik1-14/+19
2021-02-08btrfs: handle space_info::total_bytes_pinned inside the delayed ref itselfJosef Bacik1-85/+12
2021-01-25btrfs: fix log replay failure due to race with space cache rebuildFilipe Manana1-43/+18
2021-01-18btrfs: don't get an EINTR during drop_snapshot for relocJosef Bacik1-1/+9
2020-12-18btrfs: correctly calculate item size used when item key collision happensethanwu1-0/+2
2020-12-08btrfs: set the lockdep class for extent buffers on creationJosef Bacik1-3/+5
2020-12-08btrfs: pass the owner_root and level to alloc_extent_bufferJosef Bacik1-2/+3
2020-12-08btrfs: pass root owner to read_tree_blockJosef Bacik1-2/+2
2020-12-08btrfs: cleanup extent buffer readaheadJosef Bacik1-1/+1
2020-12-08btrfs: load free space cache asynchronouslyJosef Bacik1-0/+5
2020-12-08btrfs: explicitly protect ->last_byte_to_unpin in unpin_extent_rangeJosef Bacik1-0/+2