aboutsummaryrefslogtreecommitdiffstats
path: root/fs/btrfs/extent_map.c
AgeCommit message (Expand)AuthorFilesLines
2025-09-30Merge tag 'for-6.18-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kda...Linus Torvalds1-11/+11
2025-09-23btrfs: add unlikely annotations to branches leading to EIODavid Sterba1-1/+1
2025-09-22btrfs: convert several int parameters to boolDavid Sterba1-10/+10
2025-09-19fs: replace use of system_unbound_wq with system_dfl_wqMarco Crivellari1-1/+1
2025-07-21btrfs: add btrfs prefix to is_fstree() and make it return boolFilipe Manana1-3/+3
2025-05-15btrfs: rename __tree_search() to remove double underscore prefixFilipe Manana1-3/+3
2025-05-15btrfs: rename __lookup_extent_mapping() to remove double underscore prefixFilipe Manana1-5/+4
2025-05-15btrfs: rename remaining exported extent map functionsFilipe Manana1-19/+19
2025-05-15btrfs: rename functions to allocate and free extent mapsFilipe Manana1-24/+24
2025-05-15btrfs: rename extent map functions to get block start, end and check if in treeFilipe Manana1-24/+24
2025-05-15btrfs: rename exported extent map compression functionsFilipe Manana1-7/+7
2025-05-15btrfs: add btrfs prefix to main lock, try lock and unlock extent functionsFilipe Manana1-2/+2
2025-05-15btrfs: use rb_entry_safe() where possible to simplify codeDavid Sterba1-4/+4
2025-02-21btrfs: do regular iput instead of delayed iput during extent map shrinkingFilipe Manana1-1/+1
2025-02-21btrfs: skip inodes without loaded extent maps when shrinking extent mapsFilipe Manana1-21/+57
2025-02-21btrfs: fix use-after-free on inode when scanning root during em shrinkingFilipe Manana1-2/+1
2024-11-11btrfs: rename extent map shrinker members from struct btrfs_fs_infoFilipe Manana1-16/+16
2024-11-11btrfs: simplify tracking progress for the extent map shrinkerFilipe Manana1-43/+12
2024-11-11btrfs: make the extent map shrinker run asynchronously as a work queue jobFilipe Manana1-8/+43
2024-11-11btrfs: add and use helper to remove extent map from its inode's treeFilipe Manana1-11/+7
2024-11-11btrfs: correct typos in multiple comments across various filesShen Lichuan1-2/+2
2024-10-31btrfs: fix extent map merging not happening for adjacent extentsFilipe Manana1-1/+6
2024-10-22btrfs: fix read corruption due to race with extent map mergingBoris Burkov1-15/+16
2024-09-10btrfs: reduce size and overhead of extent_map_block_end()Filipe Manana1-3/+6
2024-08-13btrfs: only run the extent map shrinker from kswapd tasksFilipe Manana1-16/+6
2024-07-30Merge tag 'for-6.11-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git...Linus Torvalds1-1/+1
2024-07-25btrfs: fix corrupt read due to bad offset of a compressed extent mapFilipe Manana1-1/+1
2024-07-17Merge tag 'for-6.11-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kda...Linus Torvalds1-80/+163
2024-07-11btrfs: avoid races when tracking progress for extent map shrinkingFilipe Manana1-21/+63
2024-07-11btrfs: stop extent map shrinker if reschedule is neededFilipe Manana1-8/+31
2024-07-11btrfs: use delayed iput during extent map shrinkingFilipe Manana1-1/+1
2024-07-11btrfs: make validate_extent_map() catch ram_bytes mismatchQu Wenruo1-0/+5
2024-07-11btrfs: remove extent_map::block_start memberQu Wenruo1-39/+14
2024-07-11btrfs: remove extent_map::block_len memberQu Wenruo1-27/+14
2024-07-11btrfs: remove extent_map::orig_start memberQu Wenruo1-19/+2
2024-07-11btrfs: introduce extra sanity checks for extent mapsQu Wenruo1-0/+59
2024-07-11btrfs: introduce new members for extent_mapQu Wenruo1-4/+75
2024-07-11btrfs: rename extent_map::orig_block_len to disk_num_bytesQu Wenruo1-8/+8
2024-07-11btrfs: use a regular rb_root instead of cached rb_root for extent_map_treeFilipe Manana1-22/+26
2024-07-11btrfs: rename rb_root member of extent_map_tree from map to rootFilipe Manana1-11/+11
2024-05-07btrfs: add tracepoints for extent map shrinker eventsFilipe Manana1-0/+13
2024-05-07btrfs: add a shrinker for extent mapsFilipe Manana1-0/+160
2024-05-07btrfs: add a global per cpu counter to track number of used extent mapsFilipe Manana1-0/+17
2024-05-07btrfs: pass the extent map tree's inode to try_merge_map()Filipe Manana1-7/+6
2024-05-07btrfs: pass the extent map tree's inode to setup_extent_mapping()Filipe Manana1-5/+5
2024-05-07btrfs: pass the extent map tree's inode to replace_extent_mapping()Filipe Manana1-5/+6
2024-05-07btrfs: pass the extent map tree's inode to remove_extent_mapping()Filipe Manana1-9/+13
2024-05-07btrfs: pass the extent map tree's inode to clear_em_logging()Filipe Manana1-1/+3
2024-05-07btrfs: pass the extent map tree's inode to add_extent_mapping()Filipe Manana1-18/+16
2024-05-07btrfs: simplify add_extent_mapping() by removing pointless labelFilipe Manana1-4/+4
2024-05-07btrfs: pass an inode to btrfs_add_extent_mapping()Filipe Manana1-7/+7
2024-05-07btrfs: remove not needed mod_start and mod_len from struct extent_mapFilipe Manana1-18/+0
2024-04-18btrfs: fix wrong block_start calculation for btrfs_drop_extent_map_range()Qu Wenruo1-1/+1
2024-03-26btrfs: use btrfs_warn() to log message at btrfs_add_extent_mapping()Filipe Manana1-5/+5
2024-03-26btrfs: fix message not properly printing interval when adding extent mapFilipe Manana1-2/+2
2024-03-26btrfs: fix warning messages not printing interval at unpin_extent_range()Filipe Manana1-2/+2
2024-03-26btrfs: fix extent map leak in unexpected scenario at unpin_extent_cache()Filipe Manana1-1/+1
2024-03-05btrfs: remove SLAB_MEM_SPREAD flag useChengming Zhou1-2/+1
2024-03-04btrfs: handle invalid range and start in merge_extent_mapping()David Sterba1-4/+5
2024-03-04btrfs: handle errors returned from unpin_extent_cache()David Sterba1-1/+9
2024-03-04btrfs: remove unused included headersDavid Sterba1-1/+0
2023-12-15btrfs: use the flags of an extent map to identify the compression typeFilipe Manana1-29/+22
2023-12-15btrfs: refactor mergable_maps() for more readabilityFilipe Manana1-14/+14
2023-12-15btrfs: avoid useless rbtree iterations when attempting to merge extent mapFilipe Manana1-17/+21
2023-12-15btrfs: log messages at unpin_extent_range() during unexpected casesFilipe Manana1-6/+16
2023-12-15btrfs: remove redundant value assignment at btrfs_add_extent_mapping()Filipe Manana1-2/+0
2023-12-15btrfs: unexport add_extent_mapping()Filipe Manana1-2/+2
2023-12-15btrfs: assert extent map is not in a list when setting it upFilipe Manana1-1/+3
2023-12-15btrfs: remove no longer used EXTENT_MAP_DELALLOC block start valueFilipe Manana1-3/+0
2023-12-15btrfs: use a dedicated data structure for chunk mapsFilipe Manana1-46/+0
2023-12-15btrfs: unexport extent_map_block_end()Filipe Manana1-0/+7
2023-08-18btrfs: fix incorrect splitting in btrfs_drop_extent_map_rangeJosef Bacik1-4/+2
2023-06-19btrfs: pass the new logical address to split_extent_mapChristoph Hellwig1-3/+5
2023-06-19btrfs: move split_extent_map to extent_map.cChristoph Hellwig1-4/+94
2023-06-19btrfs: drop gfp from parameter extent state helpersDavid Sterba1-2/+2
2023-06-19btrfs: pass NOWAIT for set/clear extent bits as another bitDavid Sterba1-3/+4
2023-06-19btrfs: open code set_extent_bits_nowaitDavid Sterba1-2/+3
2023-03-06btrfs: fix extent map logging bit not cleared for split maps after dropping r...Filipe Manana1-1/+6
2022-12-05btrfs: remove no longer used btrfs_next_extent_map()Filipe Manana1-29/+0
2022-12-05btrfs: selftests: remove impossible inline extent at non-zero file offsetQu Wenruo1-0/+7
2022-12-05btrfs: update function commentsDavid Sterba1-35/+30
2022-12-05btrfs: move the printk helpers out of ctree.hJosef Bacik1-0/+1
2022-12-05btrfs: get the next extent map during fiemap/lseek more efficientlyFilipe Manana1-1/+30
2022-09-29btrfs: drop extent map range more efficientlyFilipe Manana1-45/+74
2022-09-29btrfs: remove unnecessary next extent map searchFilipe Manana1-14/+17
2022-09-29btrfs: remove unnecessary NULL pointer checks when searching extent mapsFilipe Manana1-14/+14
2022-09-29btrfs: assert tree is locked when clearing extent map from loggingFilipe Manana1-0/+2
2022-09-29btrfs: remove unnecessary extent map initializationsFilipe Manana1-2/+0
2022-09-29btrfs: remove the refcount warning/check at free_extent_map()Filipe Manana1-1/+0
2022-09-29btrfs: add helper to replace extent map range with a new extent mapFilipe Manana1-0/+41
2022-09-29btrfs: move open coded extent map tree deletion out of inode evictionFilipe Manana1-0/+27
2022-09-29btrfs: use extent_map_end() at btrfs_drop_extent_map_range()Filipe Manana1-4/+6
2022-09-29btrfs: move btrfs_drop_extent_cache() to extent_map.cFilipe Manana1-0/+192
2022-09-26btrfs: replace delete argument with EXTENT_CLEAR_ALL_BITSJosef Bacik1-1/+1
2022-09-26btrfs: remove the wake argument from clear_extent_bitsJosef Bacik1-1/+1
2022-03-14btrfs: assert we have a write lock when removing and replacing extent mapsFilipe Manana1-0/+4
2022-02-23btrfs: defrag: don't use merged extent map for their generation checkQu Wenruo1-0/+2
2021-10-26btrfs: rename btrfs_bio to btrfs_io_contextQu Wenruo1-2/+2
2021-02-08btrfs: fix parameter description of btrfs_add_extent_mappingNikolay Borisov1-6/+7
2021-02-08btrfs: document modified parameter of add_extent_mappingNikolay Borisov1-1/+4
2020-02-12Btrfs: fix race between using extent maps and merging themFilipe Manana1-0/+11
2019-11-18btrfs: remove extent_map::bdevDavid Sterba1-3/+0
2019-11-18btrfs: assert extent_map bdevs and lookup_map and splitDavid Sterba1-1/+8
2019-09-09btrfs: assert extent map tree lock in add_extent_mappingDavid Sterba1-0/+2
2019-04-29btrfs: Optimize unallocated chunks discardNikolay Borisov1-1/+3
2019-04-29btrfs: replace pending/pinned chunks lists with io treeJeff Mahoney1-0/+36
2019-02-25btrfs: Remove impossible condition from mergable_mapsNikolay Borisov1-2/+3
2018-12-17btrfs: Fix typos in comments and stringsAndrea Gelmini1-1/+2
2018-10-15Btrfs: extent_map: use rb_first_cachedLiu Bo1-12/+15
2018-10-15btrfs: change remove_extent_mapping to return voidzhong jiang1-4/+1
2018-05-28btrfs: use fs_info for btrfs_handle_em_exist tracepointDavid Sterba1-2/+4
2018-04-12btrfs: replace GPL boilerplate by SPDX -- sourcesDavid Sterba1-0/+1
2018-03-26btrfs: add more __cold annotationsDavid Sterba1-1/+1
2018-03-26Btrfs: add tracepoint for em's EEXIST caseLiu Bo1-0/+3
2018-03-26btrfs: remove unused hardirq.hYang Shi1-1/+0
2018-01-22Btrfs: noinline merge_extent_mappingLiu Bo1-4/+4
2018-01-22Btrfs: add WARN_ONCE to detect unexpected error from merge_extent_mappingLiu Bo1-1/+8
2018-01-22Btrfs: move extent map specific code to extent_map.cLiu Bo1-0/+125
2017-11-02License cleanup: add SPDX GPL-2.0 license identifier to files with no licenseGreg Kroah-Hartman1-0/+1
2017-04-18btrfs: convert extent_map.refs from atomic_t to refcount_tElena Reshetova1-5/+5
2016-07-26btrfs: Fix slab accounting flagsNikolay Borisov1-1/+1
2016-05-25btrfs: fix string and comment grammatical issues and typosNicholas D Steeves1-1/+1
2016-03-14btrfs: Fix misspellings in comments.Adam Buchbinder1-2/+2
2016-03-11btrfs: move btrfs_compression_type to compression.hAnand Jain1-0/+1
2016-02-18btrfs: drop null testing before destroy functionsKinglong Mee1-2/+1
2016-01-15btrfs: cleanup, stop casting for extent_map->lookup everywhereJeff Mahoney1-1/+1
2014-11-21Btrfs: do not move em to modified list when unpinningJosef Bacik1-2/+0
2014-06-19Btrfs: fix NULL pointer crash when running balance and scrub concurrentlyWang Shilong1-0/+2
2014-03-10Btrfs: more efficient btrfs_drop_extent_cacheFilipe Manana1-9/+30
2014-03-10Btrfs: remove unneeded field / smaller extent_map structureFilipe Manana1-11/+6
2014-01-28Btrfs: fix extent_map block_len after mergingFilipe David Borba Manana1-1/+1
2014-01-28Btrfs: faster and more efficient extent map insertionFilipe David Borba Manana1-31/+41
2013-05-06btrfs: make static code static & remove dead codeEric Sandeen1-2/+3
2013-05-06Btrfs: fix bad extent loggingJosef Bacik1-5/+13
2013-03-01btrfs: fixup/remove module.h usage as requiredPaul Gortmaker1-1/+0
2013-02-08Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mas...Linus Torvalds1-1/+2
2013-02-05Btrfs: do not merge logged extents if we've removed them from the treeJosef Bacik1-1/+2
2013-01-25Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mas...Linus Torvalds1-1/+12
2013-01-24Btrfs: do not allow logged extents to be merged or removedJosef Bacik1-1/+12
2012-12-18Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mas...Linus Torvalds1-14/+10
2012-12-16Btrfs: log changed inodes based on the extent map treeJosef Bacik1-12/+8
2012-12-16Btrfs: do not mark ems as prealloc if we are writing to themJosef Bacik1-2/+2
2012-10-30btrfs: unpin_extent_cache: fix the typo and unnecessary arguementsLiu Bo1-2/+1
2012-10-04Btrfs: do not hold the write_lock on the extent tree while loggingJosef Bacik1-1/+2
2012-10-01btrfs: polish names of kmem cachesDavid Sterba1-1/+1
2012-10-01Btrfs: improve fsync by filtering extents that we wantLiu Bo1-0/+20
2012-10-01Btrfs: turbo charge fsyncJosef Bacik1-2/+32
2011-08-01Btrfs: clean up code for merging extent mapsLi Zefan1-38/+21
2011-08-01Btrfs: clean up code for extent_map lookupLi Zefan1-56/+29
2011-08-01Btrfs: clean up search_extent_mapping()Li Zefan1-14/+3
2011-05-02btrfs: drop gfp parameter from alloc_extent_mapDavid Sterba1-3/+2
2011-05-02btrfs: drop unused parameter from extent_map_tree_initDavid Sterba1-2/+1
2011-03-31Fix common misspellingsLucas De Marchi1-1/+1
2011-02-14Btrfs: check return value of alloc_extent_map()Tsutomu Itoh1-2/+2
2010-12-22btrfs: Allow to add new compression algorithmLi Zefan1-0/+2
2010-10-29Btrfs: Use ERR_CAST helpersJulia Lawall1-2/+2
2010-03-30include cleanup: Update gfp.h and slab.h includes to prepare for breaking imp...Tejun Heo1-1/+0
2010-03-08Merge git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstableLinus Torvalds1-1/+1
2010-03-08Btrfs: use RB_ROOT to intialize rb_trees instead of setting rb_node to NULLEric Paris1-1/+1
2010-01-29Merge git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstableLinus Torvalds1-14/+0
2010-01-28Btrfs: remove tree_search() in extent_map.cMiao Xie1-14/+0
2009-12-07Merge branch 'for-next' into for-linusJiri Kosina1-1/+1
2009-12-04tree-wide: fix assorted typos all over the placeAndré Goddard Rosa1-1/+1
2009-11-11Btrfs: avoid null deref in unpin_extent_cache()Dan Carpenter1-1/+1
2009-09-18Btrfs: search for an allocation hint while filling file COWChris Mason1-0/+48
2009-09-11Btrfs: Fix extent replacment raceChris Mason1-0/+50
2009-09-11Btrfs: switch extent_map to a rw lockChris Mason1-4/+1
2009-04-24Btrfs: kill btrfs_cache_createChristoph Hellwig1-8/+3
2009-04-24Btrfs: don't export symbolsChristoph Hellwig1-6/+0
2009-04-02Btrfs: remove dead codeDan Carpenter1-1/+0
2009-01-21Btrfs: removed unused #include <version.h>'sHuang Weiyi1-1/+0
2009-01-05Btrfs: Fix checkpatch.pl warningsChris Mason1-7/+7
2008-10-29Btrfs: Add zlib compression supportChris Mason1-0/+9
2008-09-29Btrfs: add and improve commentsChris Mason1-0/+10
2008-09-25Btrfs: Fix add_extent_mapping to check for duplicates across the whole rangeChris Mason1-0/+7
2008-09-25Btrfs: Use assert_spin_locked instead of spin_trylockDavid Woodhouse1-3/+3
2008-09-25Btrfs: Fix some data=ordered related data corruptionsChris Mason1-9/+0
2008-09-25Btrfs: Keep extent mappings in ram until pending ordered extents are doneChris Mason1-0/+4
2008-09-25Btrfs: New data=ordered implementationChris Mason1-1/+4
2008-09-25Btrfs: kerneldoc comments for extent_map.cChristoph Hellwig1-12/+49
2008-09-25btrfs: fix strange indentation in lookup_extent_mappingChristoph Hellwig1-1/+7
2008-09-25Btrfs: Split the extent_map code into two partsChris Mason1-3035/+84
2008-09-25Btrfs: Fix hole insertion corner casesChris Mason1-9/+36
2008-09-25Btrfs: Fix for test_range_bitYan1-0/+5
2008-09-25Btrfs: Remove verbose WARN_ONChris Mason1-2/+0
2008-09-25Btrfs: Fix extent_buffer usage when nodesize != leafsizeChris Mason1-9/+21
2008-09-25Btrfs: Remove extent_map debugging messageChris Mason1-1/+0
2008-09-25Btrfs: Fix an off by one in the extent_map prepare write codeChris Mason1-2/+2
2008-09-25Btrfs: Implement basic support for -ENOSPCChris Mason1-6/+14
2008-09-25Btrfs: Fix delayed allocation to avoid missing delalloc extentsChris Mason1-2/+7
2008-09-25Btrfs: Back port to 2.6.18-el kernelsChris Mason1-8/+160
2008-09-25Btrfs: section mismatch warningsChristian Hesse1-1/+1
2008-09-25Btrfs: Add efficient dirty accounting to the extent_map treeChris Mason1-3/+29
2008-09-25Btrfs: Limit btree writeback to prevent seeksChris Mason1-0/+39
2008-09-25Btrfs: Handle writeback under high memory pressure betterChris Mason1-0/+12
2008-09-25Btrfs: Make sure page mapping dirty tag is properly clearedChris Mason1-2/+20
2008-09-25Btrfs: Avoid fragmentation from parallel delalloc fillingChris Mason1-34/+49
2008-09-25Btrfs: Return value checking in module initWyatt Banks1-2/+14
2008-09-25Btrfs: Fix extent bit range testingChris Mason1-7/+17
2008-09-25Btrfs: Add readpages supportChris Mason1-7/+63