aboutsummaryrefslogtreecommitdiffstats
path: root/fs/btrfs/zoned.c
AgeCommit message (Expand)AuthorFilesLines
8 daysMerge tag 'for-6.19-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kda...Linus Torvalds1-23/+30
8 daysMerge tag 'for-6.19/block-20251201' of git://git.kernel.org/pub/scm/linux/ker...Linus Torvalds1-5/+6
2025-11-24btrfs: make a few more ASSERTs verboseDavid Sterba1-14/+23
2025-11-24btrfs: remove btrfs_bio::fs_info by extracting it from btrfs_bio::inodeQu Wenruo1-2/+2
2025-11-24btrfs: replace const_ilog2() with ilog2()Andy Shevchenko1-2/+2
2025-11-24btrfs: apply the AUTO_K(V)FREE macros throughout the codeMiquel Sabaté Solà1-2/+1
2025-11-24btrfs: remove fs_info argument from btrfs_zoned_activate_one_bg()Filipe Manana1-3/+2
2025-11-11Merge tag 'for-6.18-rc5-tag' of git://git.kernel.org/pub/scm/linux/kernel/git...Linus Torvalds1-32/+28
2025-11-05btrfs: zoned: fix stripe width calculationNaohiro Aota1-30/+26
2025-11-05btrfs: zoned: fix conventional zone capacity calculationNaohiro Aota1-2/+2
2025-11-05btrfs: use blkdev_report_zones_cached()Damien Le Moal1-5/+6
2025-10-16Merge tag 'for-6.18-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git...Linus Torvalds1-1/+1
2025-10-13btrfs: fix memory leaks when rejecting a non SINGLE data profile without an RSTMiquel Sabaté Solà1-1/+1
2025-09-30Merge tag 'for-6.18-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kda...Linus Torvalds1-30/+36
2025-09-29Merge tag 'vfs-6.18-rc1.workqueue' of git://git.kernel.org/pub/scm/linux/kern...Linus Torvalds1-1/+1
2025-09-23btrfs: zoned: don't fail mount needlessly due to too many active zonesJohannes Thumshirn1-0/+6
2025-09-23btrfs: add unlikely annotations to branches leading to EIODavid Sterba1-19/+19
2025-09-23btrfs: add unlikely annotations to branches leading to EUCLEANDavid Sterba1-7/+7
2025-09-23btrfs: zoned: don't fail mount needlessly due to too many active zonesJohannes Thumshirn1-0/+6
2025-09-22btrfs: zoned: return error from btrfs_zone_finish_endio()Johannes Thumshirn1-3/+5
2025-09-22btrfs: zoned: directly call do_zone_finish() from btrfs_zone_finish_endio_wor...Johannes Thumshirn1-1/+5
2025-09-19fs: replace use of system_unbound_wq with system_dfl_wqMarco Crivellari1-1/+1
2025-09-15btrfs: zoned: fix incorrect ASSERT in btrfs_zoned_reserve_data_reloc_bg()Johannes Thumshirn1-1/+1
2025-08-13btrfs: fix buffer index in wait_eb_writebacks()Naohiro Aota1-1/+1
2025-08-13btrfs: zoned: limit active zones to max_open_zonesNaohiro Aota1-1/+7
2025-08-13btrfs: zoned: fix write time activation failure for metadata block groupNaohiro Aota1-4/+9
2025-08-13btrfs: zoned: fix data relocation block group reservationNaohiro Aota1-8/+47
2025-08-13btrfs: zoned: skip ZONE FINISH of conventional zonesJohannes Thumshirn1-20/+35
2025-08-07btrfs: zoned: do not select metadata BG as finish targetNaohiro Aota1-1/+1
2025-07-22btrfs: remove struct rcu_stringDavid Sterba1-1/+0
2025-07-22btrfs: open code RCU for device nameDavid Sterba1-11/+11
2025-07-21btrfs: switch RCU helper versions to btrfs_info()David Sterba1-1/+1
2025-07-21btrfs: switch RCU helper versions to btrfs_warn()David Sterba1-1/+1
2025-07-21btrfs: switch RCU helper versions to btrfs_err()David Sterba1-11/+11
2025-07-21btrfs: zoned: reserve data_reloc block group on mountJohannes Thumshirn1-0/+61
2025-07-21btrfs: use refcount_t type for the extent buffer reference counterFilipe Manana1-1/+1
2025-07-21btrfs: zoned: use filesystem size not disk size for reclaim decisionJohannes Thumshirn1-2/+1
2025-06-19btrfs: zoned: fix alloc_offset calculation for partly conventional block groupsJohannes Thumshirn1-14/+72
2025-05-15btrfs: convert the buffer_radix to an xarrayJosef Bacik1-14/+2
2025-05-15btrfs: convert ASSERT(0) with handled errors to DEBUG_WARN()David Sterba1-1/+1
2025-05-15btrfs: rename remaining exported extent map functionsFilipe Manana1-4/+4
2025-05-15btrfs: rename functions to allocate and free extent mapsFilipe Manana1-1/+1
2025-04-17btrfs: zoned: skip reporting zone for new block groupNaohiro Aota1-2/+16
2025-04-17btrfs: zoned: return EIO on RAID1 block group write pointer mismatchJohannes Thumshirn1-1/+0
2025-03-18btrfs: zoned: fix zone finishing with missing devicesJohannes Thumshirn1-0/+3
2025-03-18btrfs: zoned: fix zone activation with missing devicesJohannes Thumshirn1-0/+3
2025-03-18btrfs: zoned: exit btrfs_can_activate_zone if BTRFS_FS_NEED_ZONE_FINISH is setJohannes Thumshirn1-0/+3
2025-01-13btrfs: zoned: reclaim unused zone by zone resettingNaohiro Aota1-0/+124
2025-01-09Merge tag 'for-6.13-rc6-tag' of git://git.kernel.org/pub/scm/linux/kernel/git...Linus Torvalds1-2/+3
2025-01-06btrfs: zoned: calculate max_extent_size properly on non-zoned setupChristoph Hellwig1-2/+3
2024-11-18Merge tag 'for-6.13/block-20241118' of git://git.kernel.dk/linuxLinus Torvalds1-5/+8
2024-11-13btrfs: validate queue limitsChristoph Hellwig1-0/+6
2024-11-11btrfs: fix a typo in btrfs_use_zone_appendChristoph Hellwig1-1/+1
2024-11-11btrfs: correct typos in multiple comments across various filesShen Lichuan1-1/+1
2024-10-29block: add a bdev_limits helperChristoph Hellwig1-5/+2
2024-10-09btrfs: zoned: fix missing RCU locking in error message when loading zone infoFilipe Manana1-1/+1
2024-09-10btrfs: use btrfs_path auto free in zoned.cLeo Martins1-23/+11
2024-09-10btrfs: constify more pointer parametersDavid Sterba1-1/+1
2024-09-02btrfs: zoned: handle broken write pointer on zonesNaohiro Aota1-5/+25
2024-07-19btrfs: change BTRFS_MOUNT_* flags to 64bit typeQu Wenruo1-1/+2
2024-07-11btrfs: introduce new "rescue=ignoremetacsums" mount optionQu Wenruo1-1/+1
2024-07-11btrfs: switch btrfs_ordered_extent::inode to struct btrfs_inodeDavid Sterba1-3/+3
2024-07-11btrfs: pass a btrfs_inode to is_data_inode()David Sterba1-1/+1
2024-07-11btrfs: constify pointer parameters where applicableDavid Sterba1-1/+1
2024-07-11btrfs: remove extent_map::block_start memberQu Wenruo1-1/+3
2024-07-11btrfs: simplify range parameters of btrfs_wait_ordered_roots()David Sterba1-2/+1
2024-07-11btrfs: use for-local variables that shadow function variablesDavid Sterba1-5/+3
2024-07-11btrfs: zoned: make btrfs_get_dev_zone() staticFilipe Manana1-2/+1
2024-05-24Merge tag 'for-6.10-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kda...Linus Torvalds1-3/+10
2024-05-15btrfs: zoned: fix use-after-free due to race with dev replaceFilipe Manana1-3/+10
2024-05-03use ->bd_mapping instead of ->bd_inode->i_mappingAl Viro1-1/+1
2024-03-27Merge tag 'for-6.9-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-7/+7
2024-03-26btrfs: zoned: fix use-after-free in do_zone_finish()Johannes Thumshirn1-7/+7
2024-03-12Merge tag 'for-6.9-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdav...Linus Torvalds1-2/+0
2024-03-11Merge tag 'for-6.9/block-20240310' of git://git.kernel.dk/linuxLinus Torvalds1-10/+25
2024-03-04btrfs: remove unused included headersDavid Sterba1-2/+0
2024-02-26Merge tag 'for-6.8-rc6-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-0/+9
2024-02-22btrfs: zoned: don't skip block group profile checks on conventional zonesJohannes Thumshirn1-0/+9
2024-02-14Merge tag 'for-6.8-rc4-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-0/+1
2024-02-13btrfs: zoned: fix chunk map leak when loading block group zone infoFilipe Manana1-0/+1
2024-02-12block: remove gfp_flags from blkdev_zone_mgmtJohannes Thumshirn1-9/+5
2024-02-12btrfs: zoned: call blkdev_zone_mgmt in nofs scopeJohannes Thumshirn1-7/+26
2024-01-22Merge tag 'for-6.8-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-6/+2
2024-01-12btrfs: zoned: fix lock ordering in btrfs_zone_activate()Naohiro Aota1-6/+2
2024-01-11Merge tag 'for-6.8/block-2024-01-08' of git://git.kernel.dk/linuxLinus Torvalds1-20/+3
2023-12-19block: remove support for the host aware zone modelChristoph Hellwig1-20/+3
2023-12-15btrfs: add reconfigure callback for fs_contextJosef Bacik1-6/+9
2023-12-15btrfs: remove now unneeded btrfs_redirty_list_addJohannes Thumshirn1-17/+0
2023-12-15btrfs: zoned: don't clear dirty flag of extent bufferJohannes Thumshirn1-1/+2
2023-12-15btrfs: rename EXTENT_BUFFER_NO_CHECK to EXTENT_BUFFER_ZONED_ZEROOUTJohannes Thumshirn1-1/+1
2023-12-15btrfs: use a dedicated data structure for chunk mapsFilipe Manana1-22/+13
2023-11-03btrfs: zoned: drop no longer valid write pointer checkNaohiro Aota1-7/+0
2023-10-12btrfs: zoned: support RAID0/1/10 on top of raid stripe treeJohannes Thumshirn1-4/+127
2023-10-12btrfs: zoned: factor out DUP bg handling from btrfs_load_block_group_zone_infoChristoph Hellwig1-37/+42
2023-10-12btrfs: zoned: factor out single bg handling from btrfs_load_block_group_zone_...Christoph Hellwig1-11/+19
2023-10-12btrfs: zoned: factor out per-zone logic from btrfs_load_block_group_zone_infoChristoph Hellwig1-92/+92
2023-10-12btrfs: zoned: introduce a zone_info struct in btrfs_load_block_group_zone_infoChristoph Hellwig1-47/+37
2023-10-12btrfs: remove the need_raid_map parameter from btrfs_map_block()Qu Wenruo1-1/+1
2023-10-12btrfs: do not require EXTENT_NOWAIT for btrfs_redirty_list_add()Qu Wenruo1-1/+1
2023-08-22btrfs: zoned: skip splitting and logical rewriting on pre-alloc writeNaohiro Aota1-4/+15
2023-08-21btrfs: zoned: do not zone finish data relocation block groupNaohiro Aota1-3/+13
2023-08-21btrfs: zoned: no longer count fresh BG region as zone unusableNaohiro Aota1-23/+3
2023-08-21btrfs: zoned: activate metadata block group on write timeNaohiro Aota1-2/+79
2023-08-21btrfs: zoned: reserve zones for an active metadata/system block groupNaohiro Aota1-5/+88
2023-08-21btrfs: zoned: update meta write pointer on zone finishNaohiro Aota1-0/+3
2023-08-21btrfs: zoned: defer advancing meta write pointerNaohiro Aota1-14/+1
2023-08-21btrfs: zoned: return int from btrfs_check_meta_write_pointerNaohiro Aota1-8/+22
2023-08-21btrfs: zoned: introduce block group context to btrfs_eb_write_contextNaohiro Aota1-15/+20
2023-08-21btrfs: zoned: use vcalloc instead of for vzalloc in btrfs_get_dev_zone_infoJulia Lawall1-2/+2
2023-07-20btrfs: zoned: do not enable async discardNaohiro Aota1-0/+3
2023-06-19btrfs: open code btrfs_map_sblockChristoph Hellwig1-2/+2
2023-06-19btrfs: pass the new logical address to split_extent_mapChristoph Hellwig1-4/+2
2023-06-19btrfs: defer splitting of ordered extents until I/O completionChristoph Hellwig1-12/+58
2023-06-19btrfs: optimize the logical to physical mapping for zoned writesChristoph Hellwig1-39/+22
2023-06-19btrfs: rename the bytenr field in struct btrfs_ordered_sum to logicalChristoph Hellwig1-2/+2
2023-06-19btrfs: drop gfp from parameter extent state helpersDavid Sterba1-1/+1
2023-06-19btrfs: pass NOWAIT for set/clear extent bits as another bitDavid Sterba1-1/+1
2023-06-19btrfs: open code set_extent_bits_nowaitDavid Sterba1-2/+2
2023-06-19btrfs: don't hold an extra reference for redirtied buffersChristoph Hellwig1-24/+4
2023-06-19btrfs: export bitmap_test_range_all_{set,zero}Naohiro Aota1-6/+6
2023-05-10btrfs: zero the buffer before marking it dirty in btrfs_redirty_list_addChristoph Hellwig1-2/+2
2023-05-10btrfs: zoned: fix full zone super block reading on ZNSNaohiro Aota1-4/+3
2023-04-28btrfs: zoned: fix wrong use of bitops API in btrfs_ensure_empty_zonesNaohiro Aota1-3/+3
2023-04-17btrfs: introduce btrfs_bio::fs_info memberQu Wenruo1-2/+2
2023-03-15btrfs: zoned: drop space_info->active_total_bytesNaohiro Aota1-4/+0
2023-03-15btrfs: zoned: count fresh BG region as zone unusableNaohiro Aota1-5/+19
2023-03-15btrfs: rename BTRFS_FS_NO_OVERCOMMIT to BTRFS_FS_ACTIVE_ZONE_TRACKINGJosef Bacik1-2/+1
2023-03-15btrfs: zoned: fix btrfs_can_activate_zone() to support DUP profileNaohiro Aota1-2/+12
2023-02-15btrfs: don't rely on unchanging ->bi_bdev for zone append remapsChristoph Hellwig1-23/+24
2023-02-15btrfs: never return true for reads in btrfs_use_zone_appendChristoph Hellwig1-0/+3
2023-02-15btrfs: pass a btrfs_bio to btrfs_use_appendChristoph Hellwig1-1/+3
2023-02-15btrfs: split zone append bios in btrfs_submit_bioChristoph Hellwig1-20/+0
2023-02-15btrfs: calculate file system wide queue limit for zoned modeChristoph Hellwig1-26/+26
2023-02-15btrfs: handle recording of zoned writes in the storage layerChristoph Hellwig1-8/+5
2023-02-13btrfs: zoned: fix uninitialized variable warning in btrfs_get_dev_zonesNaohiro Aota1-2/+5
2023-02-13btrfs: fix uninitialized variable warning in btrfs_sb_log_locationJosef Bacik1-1/+1
2023-01-11btrfs: zoned: enable metadata over-commit for non-ZNS setupNaohiro Aota1-0/+2
2022-12-05btrfs: convert btrfs_block_group::seq_zone to runtime flagDavid Sterba1-3/+4
2022-12-05btrfs: zoned: use helper to check a power of two zone sizeDavid Sterba1-2/+1
2022-12-05btrfs: update function commentsDavid Sterba1-3/+3
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-11-23btrfs: use kvcalloc in btrfs_get_dev_zone_infoChristoph Hellwig1-3/+3
2022-11-21btrfs: zoned: fix missing endianness conversion in sb_write_pointerChristoph Hellwig1-1/+2
2022-11-07btrfs: zoned: clone zoned device info when cloning a deviceJohannes Thumshirn1-0/+40
2022-09-26btrfs: zoned: refactor device checks in btrfs_check_zoned_modeChristoph Hellwig1-69/+41
2022-09-26btrfs: get rid of block group caching progress logicOmar Sandoval1-1/+0
2022-09-26btrfs: convert block group bit field to use bit helpersJosef Bacik1-12/+19
2022-09-13btrfs: zoned: wait for extent buffer IOs before finishing a zoneNaohiro Aota1-2/+38
2022-09-05btrfs: zoned: fix mounting with conventional zonesJohannes Thumshirn1-41/+40
2022-09-05btrfs: zoned: set pseudo max append zone limit in zone emulation modeShin'ichiro Kawasaki1-3/+12
2022-09-05btrfs: zoned: fix API misuse of zone finish waitingNaohiro Aota1-2/+1
2022-07-25btrfs: zoned: wait until zone is finished when allocation didn't progressNaohiro Aota1-0/+6
2022-07-25btrfs: zoned: activate metadata block group on flush_spaceNaohiro Aota1-0/+53
2022-07-25btrfs: zoned: introduce space_info->active_total_bytesNaohiro Aota1-0/+6
2022-07-25btrfs: zoned: finish least available block group on data bg allocationNaohiro Aota1-0/+40
2022-07-25btrfs: replace BTRFS_MAX_EXTENT_SIZE with fs_info->max_extent_sizeNaohiro Aota1-1/+4
2022-07-25btrfs: zoned: revive max_zone_append_bytesNaohiro Aota1-0/+17
2022-07-25btrfs: zoned: fix comment description for sb_write_pointer logicPankaj Raghav1-3/+3
2022-07-11Merge tag 'for-5.19-rc6-tag' of git://git.kernel.org/pub/scm/linux/kernel/git...Linus Torvalds1-20/+14
2022-07-08btrfs: zoned: drop optimization of zone finishNaohiro Aota1-15/+6
2022-07-08btrfs: zoned: fix a leaked bioc in read_zone_infoChristoph Hellwig1-5/+8
2022-06-26Merge tag 'for-5.19-rc3-tag' of git://git.kernel.org/pub/scm/linux/kernel/git...Linus Torvalds1-0/+27
2022-06-21btrfs: zoned: prevent allocation from previous data relocation BGNaohiro Aota1-0/+27
2022-05-24Merge tag 'for-5.19-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kda...Linus Torvalds1-75/+142
2022-05-23Merge tag 'for-5.19/block-2022-05-22' of git://git.kernel.dk/linux-blockLinus Torvalds1-2/+1
2022-05-17btrfs: zoned: introduce a minimal zone size 4M and reject mountJohannes Thumshirn1-3/+12
2022-05-17btrfs: zoned: fix comparison of alloc_offset vs meta_write_pointerNaohiro Aota1-1/+1
2022-05-16btrfs: zoned: properly finish block group on metadata writeNaohiro Aota1-0/+31
2022-05-16btrfs: zoned: finish block group when there are no more allocatable bytes leftNaohiro Aota1-1/+10
2022-05-16btrfs: zoned: consolidate zone finish functionsNaohiro Aota1-73/+64
2022-05-16btrfs: zoned: introduce btrfs_zoned_bg_is_fullNaohiro Aota1-1/+1
2022-05-16btrfs: zoned: make auto-reclaim less aggressiveJohannes Thumshirn1-0/+27
2022-05-05btrfs: zoned: activate block group properly on unlimited active zone deviceNaohiro Aota1-14/+8
2022-05-05btrfs: zoned: move non-changing condition check out of the loopNaohiro Aota1-6/+6
2022-04-17btrfs: use bdev_max_active_zones instead of open coding itChristoph Hellwig1-2/+1
2022-03-23btrfs: zoned: remove left over ASSERT checking for single profileJohannes Thumshirn1-4/+0
2022-03-23btrfs: zoned: traverse devices under chunk_mutex in btrfs_can_activate_zoneJohannes Thumshirn1-4/+5
2022-03-14btrfs: zoned: remove redundant assignment in btrfs_check_zoned_modePankaj Raghav1-2/+1
2022-03-14btrfs: zoned: allow DUP on meta-data block groupsJohannes Thumshirn1-0/+36
2022-03-14btrfs: zoned: prepare for allowing DUP on zonedJohannes Thumshirn1-9/+16
2022-03-14btrfs: zoned: make zone finishing multi stripe capableJohannes Thumshirn1-22/+24
2022-03-14btrfs: zoned: make zone activation multi stripe capableJohannes Thumshirn1-26/+31
2022-01-07btrfs: zoned: fix chunk allocation condition for zoned allocatorNaohiro Aota1-3/+2
2022-01-07btrfs: zoned: simplify btrfs_check_meta_write_pointerJohannes Thumshirn1-18/+8
2022-01-03btrfs: stop accessing ->extent_root directlyJosef Bacik1-1/+2
2022-01-03btrfs: zoned: cache reported zone during mountNaohiro Aota1-9/+77
2021-12-08btrfs: zoned: clear data relocation bg on zone finishJohannes Thumshirn1-0/+2
2021-10-26btrfs: zoned: use kmemdup() to replace kmalloc + memcpyKai Song1-3/+1
2021-10-26btrfs: rename btrfs_bio to btrfs_io_contextQu Wenruo1-8/+8
2021-10-26btrfs: zoned: use regular writes for relocationJohannes Thumshirn1-0/+11
2021-10-26btrfs: zoned: add a dedicated data relocation block groupJohannes Thumshirn1-0/+10
2021-10-26btrfs: zoned: finish fully written block groupNaohiro Aota1-0/+50
2021-10-26btrfs: zoned: avoid chunk allocation if active block group has enough spaceNaohiro Aota1-0/+31
2021-10-26btrfs: zoned: load active zone info for block groupNaohiro Aota1-0/+24
2021-10-26btrfs: zoned: implement active zone trackingNaohiro Aota1-0/+193
2021-10-26btrfs: zoned: introduce physical_map to btrfs_block_groupNaohiro Aota1-2/+14
2021-10-26btrfs: zoned: load active zone information from devicesNaohiro Aota1-1/+57
2021-10-26btrfs: zoned: finish superblock zone once no space left for new SBNaohiro Aota1-16/+36
2021-10-26btrfs: zoned: locate superblock position using zone capacityNaohiro Aota1-2/+13