diff options
author | Darrick J. Wong <djwong@kernel.org> | 2021-05-09 16:22:54 -0700 |
---|---|---|
committer | Darrick J. Wong <djwong@kernel.org> | 2021-05-16 18:45:03 -0700 |
commit | 9d5e8492eee017ffdaa9f0957e91d39d83163197 (patch) | |
tree | 0d17a5040e4b6acb6c0fa8e75b38f97055bf0d74 /fs/xfs/xfs_trace.h | |
parent | d07f6ca923ea0927a1024dfccafc5b53b61cfecc (diff) |
xfs: adjust rt allocation minlen when extszhint > rtextsize
xfs_bmap_rtalloc doesn't handle realtime extent files with extent size
hints larger than the rt volume's extent size properly, because
xfs_bmap_extsize_align can adjust the offset/length parameters to try to
fit the extent size hint.
Under these conditions, minlen has to be large enough so that any
allocation returned by xfs_rtallocate_extent will be large enough to
cover at least one of the blocks that the caller asked for. If the
allocation is too short, bmapi_write will return no mapping for the
requested range, which causes ENOSPC errors in other parts of the
filesystem.
Therefore, adjust minlen upwards to fix this. This can be found by
running generic/263 (g/127 or g/522) with a realtime extent size hint
that's larger than the rt volume extent size.
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Allison Henderson <allison.henderson@oracle.com>
Diffstat (limited to 'fs/xfs/xfs_trace.h')
0 files changed, 0 insertions, 0 deletions