Whamcloud - gitweb
LU-17337 osd: ask for more revoke credits 65/53365/4
authorAlex Zhuravlev <bzzz@whamcloud.com>
Tue, 5 Dec 2023 05:20:58 +0000 (08:20 +0300)
committerOleg Drokin <green@whamcloud.com>
Fri, 23 Feb 2024 07:12:58 +0000 (07:12 +0000)
commit682577b277e5d16875b3e4d70e6a03e19452e672
tree21244a63fa593a1e4f88c719ca0e9e0548f0ee57
parent2777adcabd1032ddb886f913fa04d82a292ab379
LU-17337 osd: ask for more revoke credits

starting from 4.* kernels JBD2 tracks number of potential
revoked blocks separately from regular journal blocks and
checks a transaction doesn't exceed the declared number.
before extent merging patch a regular block allocation could
free only very limited number of blocks. now with extent
merging when an extent tree is really big and few extents
are inserted in a single transaction, then such an allocation
can exceed default revoke credits (8).
the patch uses number of extent in the transaction to calculate
potential number of revoke records (max tree depth * default).

Fixes: 0f7e6c02a9 ("LU-16843 ldiskfs: merge extent blocks")
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: I4967deb56e5aba82b68ffdc91de589fffae6a64a
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/53365
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Sergey Cheremencev <scherementsev@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
lustre/osd-ldiskfs/osd_handler.c
lustre/osd-ldiskfs/osd_internal.h