Message ID | 20240812011505.1414130-1-wozizhi@huawei.com (mailing list archive) |
---|---|
Headers | show |
Series | Some bugfix for xfs fsmap | expand |
friendly ping 在 2024/8/12 9:15, Zizhi Wo 写道: > Changes since V2[1]: > - Split the original patch into two, each for a different problem. > - The fix focuses solely on addressing the omission problem and does not > involve the precision of intervals. > > This patch set contains two patches to repair fsmap. Although they are both > problems of missing query intervals, the root causes of the two are > inconsistent, so two patches are proposed. > > Patch 1: The fix addresses the interval omission issue caused by the > incorrect setting of "rm_owner" in the high_key during rmap queries. In > this scenario, fsmap finds the record on the rmapbt, but due to the > incorrect setting of the "rm_owner", the key of the record is larger than > the high_key, causing the query result to be incorrect. This issue is > resolved by fixing the "rm_owner" setup logic. > > Patch 2: The fix addresses the interval omission issue caused by bit > shifting during gap queries in fsmap. In this scenario, fsmap does not > find the record on the rmapbt, so it needs to locate it by the gap of the > info->next_daddr and high_key address. However, due to the shift, the > two are reduced to 0, so the query error is caused. The issue is resolved > by introducing the "end_daddr" field in the xfs_getfsmap_info structure to > store the high_key at the sector granularity. > > [1] https://lore.kernel.org/all/20240808144759.1330237-1-wozizhi@huawei.com/ > > Zizhi Wo (2): > xfs: Fix the owner setting issue for rmap query in xfs fsmap > xfs: Fix missing interval for missing_owner in xfs fsmap > > fs/xfs/xfs_fsmap.c | 19 ++++++++++++++++++- > 1 file changed, 18 insertions(+), 1 deletion(-) >