* [patch v3 0/2] Misc fixes in XFS realtime
@ 2026-02-03 14:54 Nirjhar Roy (IBM)
2026-02-03 14:54 ` [patch v3 1/2] xfs: Move ASSERTion location in xfs_rtcopy_summary() Nirjhar Roy (IBM)
2026-02-03 14:54 ` [patch v3 2/2] xfs: Fix in xfs_rtalloc_query_range() Nirjhar Roy (IBM)
0 siblings, 2 replies; 7+ messages in thread
From: Nirjhar Roy (IBM) @ 2026-02-03 14:54 UTC (permalink / raw)
To: djwong, hch, cem; +Cc: linux-xfs, ritesh.list, ojaswin, nirjhar.roy.lists
This patchset has 2 fixes in some XFS realtime code. Details are
in the commit messages.
[v2] -> v3
1. Patch 1/2 -> Changed ASSERT(sum >= 0); to ASSERT(0);
(as discussed in [3]) and removed RB from Darrick
since the code was slightly changed after the RB was given.
2. Patch 2/2 -> Added RB from Carlos.
[v1] --> v2
1. Added RB from Darrick in patch 1/2.
2. Added Cc, Fixes tag and RB from Darrck in patch 2/2.
[3] - https://lore.kernel.org/all/20260202185348.GI7712@frogsfrogsfrogs/
[v2]- https://lore.kernel.org/all/cover.1769625536.git.nirjhar.roy.lists@gmail.com/
[v1]- https://lore.kernel.org/all/cover.1769613182.git.nirjhar.roy.lists@gmail.com/
Nirjhar Roy (IBM) (2):
xfs: Move ASSERTion location in xfs_rtcopy_summary()
xfs: Fix in xfs_rtalloc_query_range()
fs/xfs/libxfs/xfs_rtbitmap.c | 2 +-
fs/xfs/xfs_rtalloc.c | 6 +++++-
2 files changed, 6 insertions(+), 2 deletions(-)
--
2.43.5
^ permalink raw reply [flat|nested] 7+ messages in thread
* [patch v3 1/2] xfs: Move ASSERTion location in xfs_rtcopy_summary()
2026-02-03 14:54 [patch v3 0/2] Misc fixes in XFS realtime Nirjhar Roy (IBM)
@ 2026-02-03 14:54 ` Nirjhar Roy (IBM)
2026-02-03 15:33 ` Darrick J. Wong
2026-02-03 14:54 ` [patch v3 2/2] xfs: Fix in xfs_rtalloc_query_range() Nirjhar Roy (IBM)
1 sibling, 1 reply; 7+ messages in thread
From: Nirjhar Roy (IBM) @ 2026-02-03 14:54 UTC (permalink / raw)
To: djwong, hch, cem; +Cc: linux-xfs, ritesh.list, ojaswin, nirjhar.roy.lists
We should ASSERT on a variable before using it, so that we
don't end up using an illegal value.
Signed-off-by: Nirjhar Roy (IBM) <nirjhar.roy.lists@gmail.com>
---
fs/xfs/xfs_rtalloc.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/fs/xfs/xfs_rtalloc.c b/fs/xfs/xfs_rtalloc.c
index a12ffed12391..727582b98b27 100644
--- a/fs/xfs/xfs_rtalloc.c
+++ b/fs/xfs/xfs_rtalloc.c
@@ -112,6 +112,11 @@ xfs_rtcopy_summary(
error = xfs_rtget_summary(oargs, log, bbno, &sum);
if (error)
goto out;
+ if (sum < 0) {
+ ASSERT(0);
+ error = -EFSCORRUPTED;
+ goto out;
+ }
if (sum == 0)
continue;
error = xfs_rtmodify_summary(oargs, log, bbno, -sum);
@@ -120,7 +125,6 @@ xfs_rtcopy_summary(
error = xfs_rtmodify_summary(nargs, log, bbno, sum);
if (error)
goto out;
- ASSERT(sum > 0);
}
}
error = 0;
--
2.43.5
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [patch v3 2/2] xfs: Fix in xfs_rtalloc_query_range()
2026-02-03 14:54 [patch v3 0/2] Misc fixes in XFS realtime Nirjhar Roy (IBM)
2026-02-03 14:54 ` [patch v3 1/2] xfs: Move ASSERTion location in xfs_rtcopy_summary() Nirjhar Roy (IBM)
@ 2026-02-03 14:54 ` Nirjhar Roy (IBM)
2026-02-03 15:34 ` Darrick J. Wong
1 sibling, 1 reply; 7+ messages in thread
From: Nirjhar Roy (IBM) @ 2026-02-03 14:54 UTC (permalink / raw)
To: djwong, hch, cem; +Cc: linux-xfs, ritesh.list, ojaswin, nirjhar.roy.lists
xfs_rtalloc_query_range() should not return 0 by doing a NOP when
start == end i.e, when the rtgroup size is 1. This causes incorrect
calculation of free rtextents i.e, the count is reduced by 1 since
the last rtgroup's rtextent count is not taken and hence xfs_scrub
throws false summary counter report (from xchk_fscounters()).
A simple way to reproduce the above bug:
$ mkfs.xfs -f -m metadir=1 \
-r rtdev=/dev/loop2,extsize=4096,rgcount=4,size=1G \
-d size=1G /dev/loop1
meta-data=/dev/loop1 isize=512 agcount=4, agsize=65536 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=1, rmapbt=1
= reflink=0 bigtime=1 inobtcount=1 nrext64=1
= exchange=1 metadir=1
data = bsize=4096 blocks=262144, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1, parent=0
log =internal log bsize=4096 blocks=16384, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =/dev/loop2 extsz=4096 blocks=262144, rtextents=262144
= rgcount=4 rgsize=65536 extents
= zoned=0 start=0 reserved=0
Discarding blocks...Done.
Discarding blocks...Done.
$ mount -o rtdev=/dev/loop2 /dev/loop1 /mnt1/scratch
$ xfs_growfs -R $(( 65536 * 4 + 1 )) /mnt1/scratch
meta-data=/dev/loop1 isize=512 agcount=4, agsize=65536 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=1, rmapbt=1
= reflink=0 bigtime=1 inobtcount=1 nrext64=1
= exchange=1 metadir=1
data = bsize=4096 blocks=262144, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1, parent=0
log =internal log bsize=4096 blocks=16384, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =/dev/loop2 extsz=4096 blocks=262144, rtextents=262144
= rgcount=4 rgsize=65536 extents
= zoned=0 start=0 reserved=0
calling xfsctl with in.newblocks = 262145
realtime blocks changed from 262144 to 262145
$ xfs_scrub -n -v /mnt1/scratch
Phase 1: Find filesystem geometry.
/mnt1/scratch: using 2 threads to scrub.
Phase 2: Check internal metadata.
Corruption: rtgroup 4 realtime summary: Repairs are required.
Phase 3: Scan all inodes.
Phase 5: Check directory tree.
Info: /mnt1/scratch: Filesystem has errors, skipping connectivity checks.
Phase 7: Check summary counters.
Corruption: filesystem summary counters: Repairs are required.
125.0MiB data used; 8.0KiB realtime data used; 15 inodes used.
64.3MiB data found; 4.0KiB realtime data found; 18 inodes found.
18 inodes counted; 18 inodes checked.
Phase 8: Trim filesystem storage.
/mnt1/scratch: corruptions found: 2
/mnt1/scratch: Re-run xfs_scrub without -n.
Cc: <stable@vger.kernel.org> # v6.13
Fixes: e3088ae2dcae3c ("xfs: move RT bitmap and summary information to the rtgroup")
Reviewed-by: "Darrick J. Wong" <djwong@kernel.org>
Reviewed-by: Carlos Maiolino <cmaiolino@redhat.com>
Signed-off-by: Nirjhar Roy (IBM) <nirjhar.roy.lists@gmail.com>
---
fs/xfs/libxfs/xfs_rtbitmap.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/xfs/libxfs/xfs_rtbitmap.c b/fs/xfs/libxfs/xfs_rtbitmap.c
index 618061d898d4..8f552129ffcc 100644
--- a/fs/xfs/libxfs/xfs_rtbitmap.c
+++ b/fs/xfs/libxfs/xfs_rtbitmap.c
@@ -1170,7 +1170,7 @@ xfs_rtalloc_query_range(
if (start > end)
return -EINVAL;
- if (start == end || start >= rtg->rtg_extents)
+ if (start >= rtg->rtg_extents)
return 0;
end = min(end, rtg->rtg_extents - 1);
--
2.43.5
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [patch v3 1/2] xfs: Move ASSERTion location in xfs_rtcopy_summary()
2026-02-03 14:54 ` [patch v3 1/2] xfs: Move ASSERTion location in xfs_rtcopy_summary() Nirjhar Roy (IBM)
@ 2026-02-03 15:33 ` Darrick J. Wong
2026-02-03 15:41 ` Nirjhar Roy (IBM)
0 siblings, 1 reply; 7+ messages in thread
From: Darrick J. Wong @ 2026-02-03 15:33 UTC (permalink / raw)
To: Nirjhar Roy (IBM); +Cc: hch, cem, linux-xfs, ritesh.list, ojaswin
On Tue, Feb 03, 2026 at 08:24:28PM +0530, Nirjhar Roy (IBM) wrote:
> We should ASSERT on a variable before using it, so that we
> don't end up using an illegal value.
>
> Signed-off-by: Nirjhar Roy (IBM) <nirjhar.roy.lists@gmail.com>
> ---
> fs/xfs/xfs_rtalloc.c | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/fs/xfs/xfs_rtalloc.c b/fs/xfs/xfs_rtalloc.c
> index a12ffed12391..727582b98b27 100644
> --- a/fs/xfs/xfs_rtalloc.c
> +++ b/fs/xfs/xfs_rtalloc.c
> @@ -112,6 +112,11 @@ xfs_rtcopy_summary(
> error = xfs_rtget_summary(oargs, log, bbno, &sum);
> if (error)
> goto out;
> + if (sum < 0) {
Oh, heh. I never replied to your question about XFS_IS_CORRUPT.
That's the macro helper to report metadata corruptions that aren't
caught by the verifiers (e.g. you expected a nonzero summary counter,
but it was zero) because verifiers only look for discrepancies within a
block.
IOWs, this would be fine:
if (XFS_IS_CORRUPT(oargs->mp, sum < 0)) {
error = -EFSCORRUPTED;
goto out;
}
--D
> + ASSERT(0);
> + error = -EFSCORRUPTED;
> + goto out;
> + }
> if (sum == 0)
> continue;
> error = xfs_rtmodify_summary(oargs, log, bbno, -sum);
> @@ -120,7 +125,6 @@ xfs_rtcopy_summary(
> error = xfs_rtmodify_summary(nargs, log, bbno, sum);
> if (error)
> goto out;
> - ASSERT(sum > 0);
> }
> }
> error = 0;
> --
> 2.43.5
>
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [patch v3 2/2] xfs: Fix in xfs_rtalloc_query_range()
2026-02-03 14:54 ` [patch v3 2/2] xfs: Fix in xfs_rtalloc_query_range() Nirjhar Roy (IBM)
@ 2026-02-03 15:34 ` Darrick J. Wong
2026-02-03 15:43 ` Nirjhar Roy (IBM)
0 siblings, 1 reply; 7+ messages in thread
From: Darrick J. Wong @ 2026-02-03 15:34 UTC (permalink / raw)
To: Nirjhar Roy (IBM); +Cc: hch, cem, linux-xfs, ritesh.list, ojaswin
On Tue, Feb 03, 2026 at 08:24:29PM +0530, Nirjhar Roy (IBM) wrote:
> xfs_rtalloc_query_range() should not return 0 by doing a NOP when
> start == end i.e, when the rtgroup size is 1. This causes incorrect
> calculation of free rtextents i.e, the count is reduced by 1 since
> the last rtgroup's rtextent count is not taken and hence xfs_scrub
> throws false summary counter report (from xchk_fscounters()).
>
> A simple way to reproduce the above bug:
>
> $ mkfs.xfs -f -m metadir=1 \
> -r rtdev=/dev/loop2,extsize=4096,rgcount=4,size=1G \
> -d size=1G /dev/loop1
> meta-data=/dev/loop1 isize=512 agcount=4, agsize=65536 blks
> = sectsz=512 attr=2, projid32bit=1
> = crc=1 finobt=1, sparse=1, rmapbt=1
> = reflink=0 bigtime=1 inobtcount=1 nrext64=1
> = exchange=1 metadir=1
> data = bsize=4096 blocks=262144, imaxpct=25
> = sunit=0 swidth=0 blks
> naming =version 2 bsize=4096 ascii-ci=0, ftype=1, parent=0
> log =internal log bsize=4096 blocks=16384, version=2
> = sectsz=512 sunit=0 blks, lazy-count=1
> realtime =/dev/loop2 extsz=4096 blocks=262144, rtextents=262144
> = rgcount=4 rgsize=65536 extents
> = zoned=0 start=0 reserved=0
> Discarding blocks...Done.
> Discarding blocks...Done.
> $ mount -o rtdev=/dev/loop2 /dev/loop1 /mnt1/scratch
> $ xfs_growfs -R $(( 65536 * 4 + 1 )) /mnt1/scratch
> meta-data=/dev/loop1 isize=512 agcount=4, agsize=65536 blks
> = sectsz=512 attr=2, projid32bit=1
> = crc=1 finobt=1, sparse=1, rmapbt=1
> = reflink=0 bigtime=1 inobtcount=1 nrext64=1
> = exchange=1 metadir=1
> data = bsize=4096 blocks=262144, imaxpct=25
> = sunit=0 swidth=0 blks
> naming =version 2 bsize=4096 ascii-ci=0, ftype=1, parent=0
> log =internal log bsize=4096 blocks=16384, version=2
> = sectsz=512 sunit=0 blks, lazy-count=1
> realtime =/dev/loop2 extsz=4096 blocks=262144, rtextents=262144
> = rgcount=4 rgsize=65536 extents
> = zoned=0 start=0 reserved=0
> calling xfsctl with in.newblocks = 262145
> realtime blocks changed from 262144 to 262145
> $ xfs_scrub -n -v /mnt1/scratch
> Phase 1: Find filesystem geometry.
> /mnt1/scratch: using 2 threads to scrub.
> Phase 2: Check internal metadata.
> Corruption: rtgroup 4 realtime summary: Repairs are required.
> Phase 3: Scan all inodes.
> Phase 5: Check directory tree.
> Info: /mnt1/scratch: Filesystem has errors, skipping connectivity checks.
> Phase 7: Check summary counters.
> Corruption: filesystem summary counters: Repairs are required.
> 125.0MiB data used; 8.0KiB realtime data used; 15 inodes used.
> 64.3MiB data found; 4.0KiB realtime data found; 18 inodes found.
> 18 inodes counted; 18 inodes checked.
> Phase 8: Trim filesystem storage.
> /mnt1/scratch: corruptions found: 2
> /mnt1/scratch: Re-run xfs_scrub without -n.
>
> Cc: <stable@vger.kernel.org> # v6.13
> Fixes: e3088ae2dcae3c ("xfs: move RT bitmap and summary information to the rtgroup")
>
> Reviewed-by: "Darrick J. Wong" <djwong@kernel.org>
Nit: no blank lines between Fixes: and the first Reviewed-by:.
Some peoples' commit scanning scripts only look for git trailers from
the end of the commit message backwards to the first blank line.
--D
> Reviewed-by: Carlos Maiolino <cmaiolino@redhat.com>
> Signed-off-by: Nirjhar Roy (IBM) <nirjhar.roy.lists@gmail.com>
> ---
> fs/xfs/libxfs/xfs_rtbitmap.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/xfs/libxfs/xfs_rtbitmap.c b/fs/xfs/libxfs/xfs_rtbitmap.c
> index 618061d898d4..8f552129ffcc 100644
> --- a/fs/xfs/libxfs/xfs_rtbitmap.c
> +++ b/fs/xfs/libxfs/xfs_rtbitmap.c
> @@ -1170,7 +1170,7 @@ xfs_rtalloc_query_range(
>
> if (start > end)
> return -EINVAL;
> - if (start == end || start >= rtg->rtg_extents)
> + if (start >= rtg->rtg_extents)
> return 0;
>
> end = min(end, rtg->rtg_extents - 1);
> --
> 2.43.5
>
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [patch v3 1/2] xfs: Move ASSERTion location in xfs_rtcopy_summary()
2026-02-03 15:33 ` Darrick J. Wong
@ 2026-02-03 15:41 ` Nirjhar Roy (IBM)
0 siblings, 0 replies; 7+ messages in thread
From: Nirjhar Roy (IBM) @ 2026-02-03 15:41 UTC (permalink / raw)
To: Darrick J. Wong; +Cc: hch, cem, linux-xfs, ritesh.list, ojaswin
On 2/3/26 21:03, Darrick J. Wong wrote:
> On Tue, Feb 03, 2026 at 08:24:28PM +0530, Nirjhar Roy (IBM) wrote:
>> We should ASSERT on a variable before using it, so that we
>> don't end up using an illegal value.
>>
>> Signed-off-by: Nirjhar Roy (IBM) <nirjhar.roy.lists@gmail.com>
>> ---
>> fs/xfs/xfs_rtalloc.c | 6 +++++-
>> 1 file changed, 5 insertions(+), 1 deletion(-)
>>
>> diff --git a/fs/xfs/xfs_rtalloc.c b/fs/xfs/xfs_rtalloc.c
>> index a12ffed12391..727582b98b27 100644
>> --- a/fs/xfs/xfs_rtalloc.c
>> +++ b/fs/xfs/xfs_rtalloc.c
>> @@ -112,6 +112,11 @@ xfs_rtcopy_summary(
>> error = xfs_rtget_summary(oargs, log, bbno, &sum);
>> if (error)
>> goto out;
>> + if (sum < 0) {
> Oh, heh. I never replied to your question about XFS_IS_CORRUPT.
> That's the macro helper to report metadata corruptions that aren't
> caught by the verifiers (e.g. you expected a nonzero summary counter,
> but it was zero) because verifiers only look for discrepancies within a
> block.
Okay, thank you for the explanation.
>
> IOWs, this would be fine:
>
> if (XFS_IS_CORRUPT(oargs->mp, sum < 0)) {
> error = -EFSCORRUPTED;
> goto out;
> }
>
> --D
Okay, thank you. I can make the change.
--NR
>
>> + ASSERT(0);
>> + error = -EFSCORRUPTED;
>> + goto out;
>> + }
>> if (sum == 0)
>> continue;
>> error = xfs_rtmodify_summary(oargs, log, bbno, -sum);
>> @@ -120,7 +125,6 @@ xfs_rtcopy_summary(
>> error = xfs_rtmodify_summary(nargs, log, bbno, sum);
>> if (error)
>> goto out;
>> - ASSERT(sum > 0);
>> }
>> }
>> error = 0;
>> --
>> 2.43.5
>>
>>
--
Nirjhar Roy
Linux Kernel Developer
IBM, Bangalore
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [patch v3 2/2] xfs: Fix in xfs_rtalloc_query_range()
2026-02-03 15:34 ` Darrick J. Wong
@ 2026-02-03 15:43 ` Nirjhar Roy (IBM)
0 siblings, 0 replies; 7+ messages in thread
From: Nirjhar Roy (IBM) @ 2026-02-03 15:43 UTC (permalink / raw)
To: Darrick J. Wong; +Cc: hch, cem, linux-xfs, ritesh.list, ojaswin
On 2/3/26 21:04, Darrick J. Wong wrote:
> On Tue, Feb 03, 2026 at 08:24:29PM +0530, Nirjhar Roy (IBM) wrote:
>> xfs_rtalloc_query_range() should not return 0 by doing a NOP when
>> start == end i.e, when the rtgroup size is 1. This causes incorrect
>> calculation of free rtextents i.e, the count is reduced by 1 since
>> the last rtgroup's rtextent count is not taken and hence xfs_scrub
>> throws false summary counter report (from xchk_fscounters()).
>>
>> A simple way to reproduce the above bug:
>>
>> $ mkfs.xfs -f -m metadir=1 \
>> -r rtdev=/dev/loop2,extsize=4096,rgcount=4,size=1G \
>> -d size=1G /dev/loop1
>> meta-data=/dev/loop1 isize=512 agcount=4, agsize=65536 blks
>> = sectsz=512 attr=2, projid32bit=1
>> = crc=1 finobt=1, sparse=1, rmapbt=1
>> = reflink=0 bigtime=1 inobtcount=1 nrext64=1
>> = exchange=1 metadir=1
>> data = bsize=4096 blocks=262144, imaxpct=25
>> = sunit=0 swidth=0 blks
>> naming =version 2 bsize=4096 ascii-ci=0, ftype=1, parent=0
>> log =internal log bsize=4096 blocks=16384, version=2
>> = sectsz=512 sunit=0 blks, lazy-count=1
>> realtime =/dev/loop2 extsz=4096 blocks=262144, rtextents=262144
>> = rgcount=4 rgsize=65536 extents
>> = zoned=0 start=0 reserved=0
>> Discarding blocks...Done.
>> Discarding blocks...Done.
>> $ mount -o rtdev=/dev/loop2 /dev/loop1 /mnt1/scratch
>> $ xfs_growfs -R $(( 65536 * 4 + 1 )) /mnt1/scratch
>> meta-data=/dev/loop1 isize=512 agcount=4, agsize=65536 blks
>> = sectsz=512 attr=2, projid32bit=1
>> = crc=1 finobt=1, sparse=1, rmapbt=1
>> = reflink=0 bigtime=1 inobtcount=1 nrext64=1
>> = exchange=1 metadir=1
>> data = bsize=4096 blocks=262144, imaxpct=25
>> = sunit=0 swidth=0 blks
>> naming =version 2 bsize=4096 ascii-ci=0, ftype=1, parent=0
>> log =internal log bsize=4096 blocks=16384, version=2
>> = sectsz=512 sunit=0 blks, lazy-count=1
>> realtime =/dev/loop2 extsz=4096 blocks=262144, rtextents=262144
>> = rgcount=4 rgsize=65536 extents
>> = zoned=0 start=0 reserved=0
>> calling xfsctl with in.newblocks = 262145
>> realtime blocks changed from 262144 to 262145
>> $ xfs_scrub -n -v /mnt1/scratch
>> Phase 1: Find filesystem geometry.
>> /mnt1/scratch: using 2 threads to scrub.
>> Phase 2: Check internal metadata.
>> Corruption: rtgroup 4 realtime summary: Repairs are required.
>> Phase 3: Scan all inodes.
>> Phase 5: Check directory tree.
>> Info: /mnt1/scratch: Filesystem has errors, skipping connectivity checks.
>> Phase 7: Check summary counters.
>> Corruption: filesystem summary counters: Repairs are required.
>> 125.0MiB data used; 8.0KiB realtime data used; 15 inodes used.
>> 64.3MiB data found; 4.0KiB realtime data found; 18 inodes found.
>> 18 inodes counted; 18 inodes checked.
>> Phase 8: Trim filesystem storage.
>> /mnt1/scratch: corruptions found: 2
>> /mnt1/scratch: Re-run xfs_scrub without -n.
>>
>> Cc: <stable@vger.kernel.org> # v6.13
>> Fixes: e3088ae2dcae3c ("xfs: move RT bitmap and summary information to the rtgroup")
>>
>> Reviewed-by: "Darrick J. Wong" <djwong@kernel.org>
> Nit: no blank lines between Fixes: and the first Reviewed-by:.
>
> Some peoples' commit scanning scripts only look for git trailers from
> the end of the commit message backwards to the first blank line.
Noted. I will fix this. Thank you.
--NR
>
> --D
>
>> Reviewed-by: Carlos Maiolino <cmaiolino@redhat.com>
>> Signed-off-by: Nirjhar Roy (IBM) <nirjhar.roy.lists@gmail.com>
>> ---
>> fs/xfs/libxfs/xfs_rtbitmap.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/fs/xfs/libxfs/xfs_rtbitmap.c b/fs/xfs/libxfs/xfs_rtbitmap.c
>> index 618061d898d4..8f552129ffcc 100644
>> --- a/fs/xfs/libxfs/xfs_rtbitmap.c
>> +++ b/fs/xfs/libxfs/xfs_rtbitmap.c
>> @@ -1170,7 +1170,7 @@ xfs_rtalloc_query_range(
>>
>> if (start > end)
>> return -EINVAL;
>> - if (start == end || start >= rtg->rtg_extents)
>> + if (start >= rtg->rtg_extents)
>> return 0;
>>
>> end = min(end, rtg->rtg_extents - 1);
>> --
>> 2.43.5
>>
>>
--
Nirjhar Roy
Linux Kernel Developer
IBM, Bangalore
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2026-02-03 15:43 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-02-03 14:54 [patch v3 0/2] Misc fixes in XFS realtime Nirjhar Roy (IBM)
2026-02-03 14:54 ` [patch v3 1/2] xfs: Move ASSERTion location in xfs_rtcopy_summary() Nirjhar Roy (IBM)
2026-02-03 15:33 ` Darrick J. Wong
2026-02-03 15:41 ` Nirjhar Roy (IBM)
2026-02-03 14:54 ` [patch v3 2/2] xfs: Fix in xfs_rtalloc_query_range() Nirjhar Roy (IBM)
2026-02-03 15:34 ` Darrick J. Wong
2026-02-03 15:43 ` Nirjhar Roy (IBM)
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox