mirror of
https://github.com/torvalds/linux.git
synced 2026-05-25 23:52:08 +02:00
xfs: fix growfsrt failure during rt volume attach
One more series to fix a transaction reservation overrun while trying to attach a very large rt volume to a filesystem. This has been running on the djcloud for months with no problems. Enjoy! Signed-off-by: Darrick J. Wong <djwong@kernel.org> -----BEGIN PGP SIGNATURE----- iHUEABYKAB0WIQQ2qTKExjcn+O1o2YRKO3ySh0YRpgUCZXozjwAKCRBKO3ySh0YR pm0UAQD1NR8DZMki/y1e3m6ZsgwXIKwPtGlZ7/UxYsSoBqPQVwD8Cx2zJVXfeLH/ Be9sDChrnC3Wz9Z6WhjSIHANMy/mFAw= =bR3a -----END PGP SIGNATURE----- Merge tag 'fix-growfsrt-failures-6.8_2023-12-13' of https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux into xfs-6.8-mergeB xfs: fix growfsrt failure during rt volume attach One more series to fix a transaction reservation overrun while trying to attach a very large rt volume to a filesystem. Signed-off-by: Darrick J. Wong <djwong@kernel.org> Signed-off-by: Chandan Babu R <chandanbabu@kernel.org> * tag 'fix-growfsrt-failures-6.8_2023-12-13' of https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux: xfs: recompute growfsrtfree transaction reservation while growing rt volume
This commit is contained in:
commit
19b366dae1
|
|
@ -1038,6 +1038,9 @@ xfs_growfs_rt(
|
|||
nrsumblocks = xfs_rtsummary_blockcount(mp, nrsumlevels,
|
||||
nsbp->sb_rbmblocks);
|
||||
nmp->m_rsumsize = nrsumsize = XFS_FSB_TO_B(mp, nrsumblocks);
|
||||
/* recompute growfsrt reservation from new rsumsize */
|
||||
xfs_trans_resv_calc(nmp, &nmp->m_resv);
|
||||
|
||||
/*
|
||||
* Start a transaction, get the log reservation.
|
||||
*/
|
||||
|
|
@ -1124,6 +1127,8 @@ xfs_growfs_rt(
|
|||
*/
|
||||
mp->m_rsumlevels = nrsumlevels;
|
||||
mp->m_rsumsize = nrsumsize;
|
||||
/* recompute growfsrt reservation from new rsumsize */
|
||||
xfs_trans_resv_calc(mp, &mp->m_resv);
|
||||
|
||||
error = xfs_trans_commit(tp);
|
||||
if (error)
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user