xfs: reduce quota reservation when doing a dax unwritten extent conversion
In commit3b0fe47805
, we reduced the free space requirement to perform a pre-write unwritten extent conversion on an S_DAX file. Since we're not actually allocating any space, the logic goes, we only need enough reservation to handle shape changes in the bmbt. The same logic should have been applied to quota -- we're not allocating any space, so we only need to reserve enough quota to handle the bmbt shape changes. Fixes:3b0fe47805
("xfs: Don't use reserved blocks for data blocks with DAX") Signed-off-by: Darrick J. Wong <djwong@kernel.org> Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Brian Foster <bfoster@redhat.com>
This commit is contained in:
Родитель
1aecf3734a
Коммит
b8055ed677
|
@ -236,7 +236,7 @@ xfs_iomap_write_direct(
|
|||
bmapi_flags = XFS_BMAPI_CONVERT | XFS_BMAPI_ZERO;
|
||||
if (imap->br_state == XFS_EXT_UNWRITTEN) {
|
||||
tflags |= XFS_TRANS_RESERVE;
|
||||
resblks = XFS_DIOSTRAT_SPACE_RES(mp, 0) << 1;
|
||||
resblks = qblocks = XFS_DIOSTRAT_SPACE_RES(mp, 0) << 1;
|
||||
}
|
||||
}
|
||||
error = xfs_trans_alloc(mp, &M_RES(mp)->tr_write, resblks, resrtextents,
|
||||
|
|
Загрузка…
Ссылка в новой задаче