aboutsummaryrefslogtreecommitdiffstats
path: root/fs/btrfs/qgroup.c
AgeCommit message (Expand)AuthorFilesLines
6 daysbtrfs: add message format for qgroupidDavid Sterba1-15/+10
8 daysbtrfs: add missing unlikely to if branches leading to a DEBUG_WARN()Filipe Manana1-8/+8
2026-05-16btrfs: swallow btrfs_record_squota_delta() ENOENTBoris Burkov1-2/+3
2026-05-16btrfs: clamp to avoid squota underflowBoris Burkov1-2/+13
2026-05-16btrfs: fix squota accounting during enable generationBoris Burkov1-4/+27
2026-05-16btrfs: check for subvolume before deleting squota qgroupBoris Burkov1-25/+25
2026-04-07btrfs: avoid GFP_ATOMIC allocations in qgroup free pathsLeo Martins1-2/+3
2026-04-07btrfs: unexport btrfs_qgroup_reserve_meta()Filipe Manana1-2/+2
2026-04-07btrfs: collapse __btrfs_qgroup_reserve_meta() into btrfs_qgroup_reserve_meta_...Filipe Manana1-5/+6
2026-04-07btrfs: collapse __btrfs_qgroup_free_meta() into btrfs_qgroup_free_meta_preall...Filipe Manana1-5/+7
2026-04-07btrfs: pass literal booleans to functions that take boolean argumentsFilipe Manana1-4/+2
2026-04-07btrfs: remove redundant extent_buffer_uptodate() checks after read_tree_block()Filipe Manana1-4/+0
2026-03-21Merge tag 'for-7.0-rc4-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-0/+8
2026-03-17btrfs: check for NULL root after calls to btrfs_extent_root()Filipe Manana1-0/+8
2026-03-03Merge tag 'for-7.0-rc2-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-1/+1
2026-02-26btrfs: fix referenced/exclusive check in squota_check_parent_usage()Boris Burkov1-1/+1
2026-02-21Convert 'alloc_obj' family to use the new default GFP_KERNEL argumentLinus Torvalds1-2/+2
2026-02-21treewide: Replace kmalloc with kmalloc_obj for non-scalar typesKees Cook1-13/+12
2026-02-18btrfs: fix invalid leaf access in btrfs_quota_enable() if ref key not foundFilipe Manana1-4/+7
2026-02-03btrfs: remove pointless out labels from qgroup.cFilipe Manana1-16/+10
2026-02-03btrfs: qgroup: return correct error when deleting qgroup relation itemFilipe Manana1-1/+3
2026-02-03btrfs: merge setting ret and return retDavid Sterba1-10/+4
2026-02-03btrfs: relax squota parent qgroup deletion ruleBoris Burkov1-15/+35
2026-02-03btrfs: check squota parent usage on membership changeBoris Burkov1-0/+39
2025-12-16btrfs: qgroup: update all parent qgroups when doing quick inheritQu Wenruo1-2/+16
2025-12-16btrfs: fix qgroup_snapshot_quick_inherit() squota bugBoris Burkov1-0/+3
2025-12-09Revert "btrfs: add ASSERTs on prealloc in qgroup functions"Qu Wenruo1-23/+4
2025-11-25btrfs: remaining BTRFS_PATH_AUTO_FREE conversionsDavid Sterba1-89/+53
2025-11-24btrfs: use bool type for btrfs_path members used as booleansFilipe Manana1-2/+2
2025-11-24btrfs: add ASSERTs on prealloc in qgroup functionsMiquel Sabaté Solà1-4/+23
2025-11-24btrfs: apply the AUTO_K(V)FREE macros throughout the codeMiquel Sabaté Solà1-2/+1
2025-11-24btrfs: use the key format macros when printing keysFilipe Manana1-4/+2
2025-10-30btrfs: fix memory leak of qgroup_list in btrfs_add_qgroup_relationShardul Bankar1-1/+3
2025-09-23btrfs: add unlikely annotations to branches leading to transaction abortDavid Sterba1-12/+12
2025-09-23btrfs: add unlikely annotations to branches leading to EIODavid Sterba1-2/+2
2025-09-23btrfs: add unlikely annotations to branches leading to EUCLEANDavid Sterba1-7/+7
2025-09-22btrfs: convert several int parameters to boolDavid Sterba1-1/+1
2025-09-02btrfs: fix squota compressed stats leakBoris Burkov1-2/+4
2025-08-07btrfs: fix iteration bug in __qgroup_excl_accounting()Boris Burkov1-2/+1
2025-07-22btrfs: remove btrfs_clear_extent_bits()Filipe Manana1-2/+2
2025-07-22btrfs: qgroup: fix qgroup create ioctl returning success after quotas disabledFilipe Manana1-3/+0
2025-07-22btrfs: qgroup: set quota enabled bit if quota disable fails flushing reservat...Filipe Manana1-2/+5
2025-07-22btrfs: qgroup: remove no longer used fs_info->qgroup_ulistFilipe Manana1-30/+1
2025-07-22btrfs: qgroup: fix race between quota disable and quota rescan ioctlFilipe Manana1-7/+24
2025-07-21btrfs: qgroup: avoid memory allocation if qgroups are not enabledFilipe Manana1-2/+3
2025-07-21btrfs: qgroup: remove pointless error check for add_qgroup_rb() callFilipe Manana1-5/+0
2025-07-21btrfs: add btrfs prefix to is_fstree() and make it return boolFilipe Manana1-12/+13
2025-07-21btrfs: add extra warning when qgroup is marked inconsistentQu Wenruo1-39/+44
2025-07-21btrfs: use refcount_t type for the extent buffer reference counterFilipe Manana1-3/+3
2025-07-21btrfs: use rb_find_add() in btrfs_qgroup_add_swapped_blocks()Yangtao Li1-31/+24
2025-07-21btrfs: use rb_find() in btrfs_qgroup_trace_subtree_after_cow()Yangtao Li1-15/+19
2025-07-21btrfs: use rb_find_add() in add_qgroup_rb()Yangtao Li1-26/+19
2025-07-21btrfs: use rb_find() in find_qgroup_rb()Yangtao Li1-12/+16
2025-05-15btrfs: convert WARN_ON(IS_ENABLED(CONFIG_BTRFS_DEBUG)) to DEBUG_WARNDavid Sterba1-3/+3
2025-05-15btrfs: tracepoints: add btrfs prefix to names where it's missingFilipe Manana1-10/+9
2025-05-15btrfs: rename remaining exported functions from extent-io-tree.hFilipe Manana1-12/+14
2025-05-15btrfs: rename the functions to clear bits for an extent rangeFilipe Manana1-2/+2
2025-03-18btrfs: unify ordering of btrfs_key initializationsDavid Sterba1-1/+1
2025-01-23btrfs: avoid starting new transaction when cleaning qgroup during subvolume dropFilipe Manana1-5/+1
2025-01-23btrfs: do not output error message if a qgroup has been already cleaned upQu Wenruo1-1/+4
2025-01-13btrfs: qgroup: remove unnecessary calls to btrfs_mark_buffer_dirty()Filipe Manana1-18/+0
2025-01-13btrfs: improve the warning and error message for btrfs_remove_qgroup()Qu Wenruo1-5/+16
2024-12-23btrfs: fix transaction atomicity bug when enabling simple quotasJulian Sun1-2/+1
2024-11-11btrfs: remove redundant initializations for struct btrfs_tree_parent_checkFilipe Manana1-1/+0
2024-11-11btrfs: drop unused transaction parameter from btrfs_qgroup_add_swapped_blocks()David Sterba1-2/+1
2024-11-11btrfs: qgroup: drop unused parameter fs_info from __del_qgroup_rb()David Sterba1-4/+3
2024-11-11btrfs: qgroup: run delayed iputs after ordered extent completionFilipe Manana1-2/+9
2024-11-11btrfs: remove unused btrfs_free_squota_rsv()Dr. David Alan Gilbert1-11/+0
2024-11-11btrfs: correct typos in multiple comments across various filesShen Lichuan1-1/+1
2024-11-11btrfs: remove pointless initialization at btrfs_qgroup_trace_extent()Filipe Manana1-1/+0
2024-11-11btrfs: always use delayed_refs local variable at btrfs_qgroup_trace_extent()Filipe Manana1-3/+2
2024-11-11btrfs: remove unnecessary delayed refs locking at btrfs_qgroup_trace_extent()Filipe Manana1-3/+0
2024-11-11btrfs: store fs_info in a local variable at btrfs_qgroup_trace_extent_post()Filipe Manana1-8/+9
2024-11-11btrfs: qgroups: remove bytenr field from struct btrfs_qgroup_extent_recordFilipe Manana1-14/+17
2024-10-22btrfs: qgroup: set a more sane default value for subtree drop thresholdQu Wenruo1-1/+1
2024-10-11btrfs: use sector numbers as keys for the dirty extents xarrayFilipe Manana1-5/+16
2024-09-10btrfs: qgroup: use xarray to track dirty extents in transactionJunchao Sun1-34/+32
2024-09-02btrfs: qgroup: don't use extent changeset when not neededFedor Pchelkin1-2/+1
2024-08-25btrfs: run delayed iputs when flushing delallocJosef Bacik1-0/+2
2024-07-11btrfs: qgroup: preallocate memory before adding a relationDavid Sterba1-17/+8
2024-07-11btrfs: do not BUG_ON() when freeing tree block after errorFilipe Manana1-2/+4
2024-07-11btrfs: constify pointer parameters where applicableDavid Sterba1-11/+11
2024-07-11btrfs: add and use helper to commit the current transactionFilipe Manana1-28/+5
2024-07-11btrfs: qgroup: avoid start/commit empty transaction when flushing reservationsFilipe Manana1-5/+7
2024-07-11btrfs: simplify range parameters of btrfs_wait_ordered_roots()David Sterba1-2/+2
2024-07-11btrfs: automatically remove the subvolume qgroupQu Wenruo1-0/+35
2024-07-11btrfs: slightly loosen the requirement for qgroup removalQu Wenruo1-7/+80
2024-07-11btrfs: use for-local variables that shadow function variablesDavid Sterba1-6/+5
2024-07-02btrfs: always do the basic checks for btrfs_qgroup_inherit structureQu Wenruo1-2/+8
2024-06-25btrfs: qgroup: fix quota root leak after quota disable failureFilipe Manana1-2/+2
2024-05-15btrfs: qgroup: fix qgroup id collision across mountsBoris Burkov1-0/+20
2024-05-15btrfs: qgroup: update rescan message levels and error codesDavid Sterba1-7/+5
2024-05-07btrfs: qgroup: fix initialization of auto inherit arrayDan Carpenter1-1/+1
2024-05-07btrfs: rename return variables in btrfs_qgroup_rescan_worker()Anand Jain1-19/+19
2024-05-07btrfs: drop variable err in quick_update_accounting()Anand Jain1-6/+3
2024-05-07btrfs: change root->root_key.objectid to btrfs_root_id()Josef Bacik1-14/+13
2024-05-07btrfs: qgroup: delete unnecessary check in btrfs_qgroup_check_inherit()Dan Carpenter1-3/+0
2024-05-02btrfs: qgroup: do not check qgroup inherit if qgroup is disabledQu Wenruo1-0/+2
2024-04-25btrfs: take the cleaner_mutex earlier in qgroup disableJosef Bacik1-13/+8
2024-04-02btrfs: qgroup: correctly model root qgroup rsv in convertBoris Burkov1-0/+2
2024-03-05btrfs: qgroup: allow quick inherit if snapshot is created and added to the sa...Qu Wenruo1-7/+72
2024-03-05btrfs: qgroup: validate btrfs_qgroup_inherit parameterQu Wenruo1-0/+51
2024-03-05btrfs: qgroup: always free reserved space for extent recordsQu Wenruo1-5/+5
2024-03-04btrfs: handle transaction commit errors in flush_reservations()David Sterba1-1/+1
2024-03-04btrfs: delete pointless BUG_ON check on quota root in btrfs_qgroup_account_ex...David Sterba1-2/+0
2024-03-04btrfs: change BUG_ONs to assertions in btrfs_qgroup_trace_subtree()David Sterba1-2/+2
2024-01-31btrfs: forbid deleting live subvol qgroupBoris Burkov1-0/+14
2023-12-15btrfs: fix typos found by codespellDavid Sterba1-1/+1
2023-12-06btrfs: ensure releasing squota reserve on head refsBoris Burkov1-3/+11
2023-12-06btrfs: free qgroup pertrans reserve on transaction abortBoris Burkov1-2/+3
2023-12-06btrfs: fix qgroup_free_reserved_data int overflowBoris Burkov1-10/+15
2023-11-09btrfs: fix qgroup record leaks when using simple quotasFilipe Manana1-1/+1
2023-11-09btrfs: fix race between accounting qgroup extents and removing a qgroupFilipe Manana1-1/+7
2023-10-12btrfs: qgroup: only set QUOTA_ENABLED when done reading qgroupsBoris Burkov1-8/+7
2023-10-12btrfs: qgroup: check generation when recording simple quota deltaBoris Burkov1-6/+22
2023-10-12btrfs: qgroup: simple quota auto hierarchy for nested subvolumesBoris Burkov1-3/+54
2023-10-12btrfs: add helper for recording simple quota deltasBoris Burkov1-0/+46
2023-10-12btrfs: create qgroup earlier in snapshot creationBoris Burkov1-0/+3
2023-10-12btrfs: qgroup: flush reservations during quota disableBoris Burkov1-3/+44
2023-10-12btrfs: qgroup: add new quota mode for simple quotasBoris Burkov1-30/+80
2023-10-12btrfs: qgroup: introduce quota modeBoris Burkov1-0/+7
2023-10-12btrfs: merge ordered work callbacks in btrfs_work into oneDavid Sterba1-1/+1
2023-10-12btrfs: abort transaction on generation mismatch when marking eb as dirtyFilipe Manana1-7/+7
2023-10-12btrfs: move functions comments from qgroup.h to qgroup.cDavid Sterba1-0/+71
2023-10-12btrfs: qgroup: remove unused helpers for ulist aux dataJiapeng Chong1-10/+0
2023-10-12btrfs: qgroup: prealloc btrfs_qgroup_list for __add_relation_rb()Qu Wenruo1-19/+59
2023-10-12btrfs: qgroup: pre-allocate btrfs_qgroup to reduce GFP_ATOMIC usageQu Wenruo1-26/+61
2023-10-12btrfs: qgroup: use qgroup_iterator_nested to in qgroup_update_refcnt()Qu Wenruo1-42/+35
2023-10-12btrfs: qgroup: use qgroup_iterator to replace tmp ulist in qgroup_update_refc...Qu Wenruo1-28/+11
2023-10-12btrfs: qgroup: use qgroup_iterator in __qgroup_excl_accounting()Qu Wenruo1-64/+17
2023-10-12btrfs: qgroup: use qgroup_iterator in qgroup_convert_meta()Qu Wenruo1-22/+10
2023-10-12btrfs: qgroup: use qgroup_iterator in btrfs_qgroup_free_refroot()Qu Wenruo1-22/+7
2023-10-12btrfs: qgroup: iterate qgroups without memory allocation for qgroup_reserve()Qu Wenruo1-32/+29
2023-08-21btrfs: avoid start and commit empty transaction when flushing qgroupsFilipe Manana1-1/+3
2023-08-21btrfs: avoid start and commit empty transaction when starting qgroup rescanFilipe Manana1-7/+8
2023-07-18btrfs: fix warning when putting transaction with qgroups enabled after abortFilipe Manana1-0/+1
2023-06-19btrfs: fix race between quota disable and relocationFilipe Manana1-3/+15
2023-06-19btrfs: fix race when deleting quota root from the dirty cow roots listFilipe Manana1-0/+2
2023-03-28btrfs: fix race between quota disable and quota assign ioctlsFilipe Manana1-1/+10
2023-02-15btrfs: rename btrfs_clean_tree_block to btrfs_clear_buffer_dirtyJosef Bacik1-1/+1
2023-02-15btrfs: add trans argument to btrfs_clean_tree_blockJosef Bacik1-1/+1
2023-01-16btrfs: fix race between quota rescan and disable leading to NULL pointer derefFilipe Manana1-8/+17
2023-01-11btrfs: qgroup: do not warn on record without old_roots populatedQu Wenruo1-2/+12
2022-12-15btrfs: restore BTRFS_SEQ_LAST when looking up qgroup backref lookupJosef Bacik1-0/+1
2022-12-05btrfs: move struct btrfs_tree_parent_check out of disk-io.hChristoph Hellwig1-0/+1
2022-12-05btrfs: concentrate all tree block parentness check parameters into one structureQu Wenruo1-4/+14
2022-12-05btrfs: use a structure to pass arguments to backref walking functionsFilipe Manana1-14/+24
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: sink gfp_t parameter to btrfs_qgroup_trace_extentDavid Sterba1-10/+7
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-21btrfs: qgroup: fix sleep from invalid context bug in btrfs_qgroup_inherit()ChenXiaoSong1-8/+1
2022-09-26btrfs: qgroup: fix a typo in a commentChristophe JAILLET1-1/+1
2022-09-26btrfs: skip subtree scan if it's too high to avoid low stall in btrfs_commit_...Qu Wenruo1-0/+19
2022-09-26btrfs: introduce BTRFS_QGROUP_RUNTIME_FLAG_NO_ACCOUNTING to skip qgroup accou...Qu Wenruo1-4/+11
2022-09-26btrfs: introduce BTRFS_QGROUP_RUNTIME_FLAG_CANCEL_RESCANQu Wenruo1-17/+26
2022-09-26btrfs: introduce BTRFS_QGROUP_STATUS_FLAGS_MASK for later expansionQu Wenruo1-2/+4
2022-09-26btrfs: fix race between quota enable and quota rescan ioctlFilipe Manana1-0/+15
2022-05-16btrfs: avoid blocking on space revervation when doing nowait dio writesFilipe Manana1-2/+3
2022-05-16btrfs: remove trivial wrapper btrfs_read_buffer()Filipe Manana1-1/+1
2022-03-14btrfs: qgroup: remove outdated TODO commentsSidong Yang1-12/+0
2022-03-14btrfs: qgroup: remove duplicated check in adding qgroup relationsSidong Yang1-9/+32
2022-03-14btrfs: disable qgroups in extent tree v2Josef Bacik1-0/+6
2022-03-14btrfs: move QUOTA_ENABLED check to rescan_should_stop from btrfs_qgroup_resca...Nikolay Borisov1-7/+6
2022-03-02btrfs: qgroup: fix deadlock between rescan worker and remove qgroupSidong Yang1-1/+8
2022-01-31btrfs: fix deadlock between quota disable and qgroup rescan workerShin'ichiro Kawasaki1-2/+19
2022-01-03btrfs: stop accessing ->extent_root directlyJosef Bacik1-1/+4
2022-01-03btrfs: fix deadlock between quota enable and other quota operationsFilipe Manana1-0/+19
2021-12-15btrfs: fix invalid delayed ref after subvolume creation failureFilipe Manana1-1/+2
2021-08-23btrfs: remove ignore_offset argument from btrfs_find_all_roots()Filipe Manana1-4/+4
2021-07-22btrfs: fix lock inversion problem when doing qgroup extent tracingFilipe Manana1-8/+30
2021-06-22btrfs: send: fix crash when memory allocations trigger reclaimFilipe Manana1-7/+1
2021-06-22btrfs: fix typos in commentsDavid Sterba1-1/+1
2021-04-28btrfs: fix deadlock when cloning inline extents and using qgroupsFilipe Manana1-1/+1
2021-04-28btrfs: do not consider send context as valid when trying to flush qgroupsFilipe Manana1-5/+9
2021-04-19btrfs: move the tree mod log code into its own fileFilipe Manana1-4/+5
2021-04-19btrfs: don't opencode extent_changeset_freeNikolay Borisov1-2/+1
2021-04-19btrfs: simplify commit logic in try_flush_qgroupNikolay Borisov1-28/+7
2021-03-18btrfs: fix sleep while in non-sleep context during qgroup removalFilipe Manana1-2/+10
2021-03-02btrfs: export and rename qgroup_reserve_metaNikolay Borisov1-4/+4
2020-12-18btrfs: fix transaction leak and crash after RO remount caused by qgroup rescanFilipe Manana1-3/+10
2020-12-18btrfs: qgroup: don't try to wait flushing if we're already holding a transactionQu Wenruo1-10/+20
2020-12-08btrfs: pass root owner to read_tree_blockJosef Bacik1-1/+1
2020-12-08btrfs: use btrfs_read_node_slot in btrfs_qgroup_trace_subtreeJosef Bacik1-12/+3
2020-12-08btrfs: use btrfs_read_node_slot in qgroup_trace_new_subtree_blocksJosef Bacik1-10/+1
2020-12-08btrfs: use btrfs_read_node_slot in qgroup_trace_extent_swapJosef Bacik1-12/+1
2020-12-08btrfs: locking: rip out path->leave_spinningJosef Bacik1-2/+0
2020-12-08btrfs: locking: remove all the blocking helpersJosef Bacik1-6/+3
2020-11-23btrfs: fix lockdep splat when enabling and disabling qgroupsFilipe Manana1-8/+49
2020-11-23btrfs: do nofs allocations when adding and removing qgroup relationsFilipe Manana1-0/+9
2020-11-23btrfs: fix lockdep splat when reading qgroup config on mountFilipe Manana1-1/+1
2020-11-13btrfs: qgroup: don't commit transaction when we already hold the handleQu Wenruo1-1/+19
2020-11-05btrfs: clean up NULL checks in qgroup_unreserve_range()Dan Carpenter1-8/+4
2020-10-26btrfs: drop the path before adding qgroup items when enabling qgroupsJosef Bacik1-0/+18
2020-10-07btrfs: delete duplicated words + other fixes in commentsRandy Dunlap1-1/+1
2020-07-27btrfs: qgroup: remove ASYNC_COMMIT mechanism in favor of reserve retry-after-...Qu Wenruo1-41/+2
2020-07-27btrfs: qgroup: try to flush qgroup space when we get -EDQUOTQu Wenruo1-8/+92
2020-07-27btrfs: qgroup: allow to unreserve range without releasing other rangesQu Wenruo1-15/+77
2020-07-27btrfs: qgroup: export qgroups in sysfsQu Wenruo1-9/+35