xfs: widen quota block counters to 64-bit integers
Widen the incore quota transaction delta structure to treat block counters as 64-bit integers. This is a necessary addition so that we can widen the i_delayed_blks counter to be a 64-bit integer. Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> Reviewed-by: Allison Collins <allison.henderson@oracle.com> Reviewed-by: Dave Chinner <dchinner@redhat.com> Reviewed-by: Christoph Hellwig <hch@lst.de>
This commit is contained in:
@@ -80,7 +80,7 @@ xfs_trans_dup_dqinfo(
|
||||
xfs_dqtrx_t *oq, *nq;
|
||||
int i, j;
|
||||
xfs_dqtrx_t *oqa, *nqa;
|
||||
ulong blk_res_used;
|
||||
uint64_t blk_res_used;
|
||||
|
||||
if (!otp->t_dqinfo)
|
||||
return;
|
||||
@@ -137,7 +137,7 @@ xfs_trans_mod_dquot_byino(
|
||||
xfs_trans_t *tp,
|
||||
xfs_inode_t *ip,
|
||||
uint field,
|
||||
long delta)
|
||||
int64_t delta)
|
||||
{
|
||||
xfs_mount_t *mp = tp->t_mountp;
|
||||
|
||||
@@ -194,7 +194,7 @@ xfs_trans_mod_dquot(
|
||||
xfs_trans_t *tp,
|
||||
xfs_dquot_t *dqp,
|
||||
uint field,
|
||||
long delta)
|
||||
int64_t delta)
|
||||
{
|
||||
xfs_dqtrx_t *qtrx;
|
||||
|
||||
@@ -219,14 +219,14 @@ xfs_trans_mod_dquot(
|
||||
* regular disk blk reservation
|
||||
*/
|
||||
case XFS_TRANS_DQ_RES_BLKS:
|
||||
qtrx->qt_blk_res += (ulong)delta;
|
||||
qtrx->qt_blk_res += delta;
|
||||
break;
|
||||
|
||||
/*
|
||||
* inode reservation
|
||||
*/
|
||||
case XFS_TRANS_DQ_RES_INOS:
|
||||
qtrx->qt_ino_res += (ulong)delta;
|
||||
qtrx->qt_ino_res += delta;
|
||||
break;
|
||||
|
||||
/*
|
||||
@@ -245,7 +245,7 @@ xfs_trans_mod_dquot(
|
||||
*/
|
||||
case XFS_TRANS_DQ_ICOUNT:
|
||||
if (qtrx->qt_ino_res && delta > 0) {
|
||||
qtrx->qt_ino_res_used += (ulong)delta;
|
||||
qtrx->qt_ino_res_used += delta;
|
||||
ASSERT(qtrx->qt_ino_res >= qtrx->qt_ino_res_used);
|
||||
}
|
||||
qtrx->qt_icount_delta += delta;
|
||||
@@ -255,7 +255,7 @@ xfs_trans_mod_dquot(
|
||||
* rtblk reservation
|
||||
*/
|
||||
case XFS_TRANS_DQ_RES_RTBLKS:
|
||||
qtrx->qt_rtblk_res += (ulong)delta;
|
||||
qtrx->qt_rtblk_res += delta;
|
||||
break;
|
||||
|
||||
/*
|
||||
@@ -263,7 +263,7 @@ xfs_trans_mod_dquot(
|
||||
*/
|
||||
case XFS_TRANS_DQ_RTBCOUNT:
|
||||
if (qtrx->qt_rtblk_res && delta > 0) {
|
||||
qtrx->qt_rtblk_res_used += (ulong)delta;
|
||||
qtrx->qt_rtblk_res_used += delta;
|
||||
ASSERT(qtrx->qt_rtblk_res >= qtrx->qt_rtblk_res_used);
|
||||
}
|
||||
qtrx->qt_rtbcount_delta += delta;
|
||||
@@ -320,8 +320,8 @@ xfs_trans_apply_dquot_deltas(
|
||||
struct xfs_dquot *dqp;
|
||||
struct xfs_dqtrx *qtrx, *qa;
|
||||
struct xfs_disk_dquot *d;
|
||||
long totalbdelta;
|
||||
long totalrtbdelta;
|
||||
int64_t totalbdelta;
|
||||
int64_t totalrtbdelta;
|
||||
|
||||
if (!(tp->t_flags & XFS_TRANS_DQ_DIRTY))
|
||||
return;
|
||||
@@ -413,7 +413,7 @@ xfs_trans_apply_dquot_deltas(
|
||||
* reservation that a transaction structure knows of.
|
||||
*/
|
||||
if (qtrx->qt_blk_res != 0) {
|
||||
ulong blk_res_used = 0;
|
||||
uint64_t blk_res_used = 0;
|
||||
|
||||
if (qtrx->qt_bcount_delta > 0)
|
||||
blk_res_used = qtrx->qt_bcount_delta;
|
||||
@@ -585,7 +585,7 @@ xfs_trans_dqresv(
|
||||
xfs_trans_t *tp,
|
||||
xfs_mount_t *mp,
|
||||
xfs_dquot_t *dqp,
|
||||
long nblks,
|
||||
int64_t nblks,
|
||||
long ninos,
|
||||
uint flags)
|
||||
{
|
||||
@@ -745,7 +745,7 @@ xfs_trans_reserve_quota_bydquots(
|
||||
struct xfs_dquot *udqp,
|
||||
struct xfs_dquot *gdqp,
|
||||
struct xfs_dquot *pdqp,
|
||||
long nblks,
|
||||
int64_t nblks,
|
||||
long ninos,
|
||||
uint flags)
|
||||
{
|
||||
@@ -804,7 +804,7 @@ int
|
||||
xfs_trans_reserve_quota_nblks(
|
||||
struct xfs_trans *tp,
|
||||
struct xfs_inode *ip,
|
||||
long nblks,
|
||||
int64_t nblks,
|
||||
long ninos,
|
||||
uint flags)
|
||||
{
|
||||
|
Reference in New Issue
Block a user