aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/xfs/xfs_bmap.c26
-rw-r--r--fs/xfs/xfs_mount.c22
-rw-r--r--fs/xfs/xfs_mount.h7
-rw-r--r--fs/xfs/xfs_trans.c32
-rw-r--r--fs/xfs/xfs_trans.h42
5 files changed, 68 insertions, 61 deletions
diff --git a/fs/xfs/xfs_bmap.c b/fs/xfs/xfs_bmap.c
index 024d8452c3d3..fa459a184b8a 100644
--- a/fs/xfs/xfs_bmap.c
+++ b/fs/xfs/xfs_bmap.c
@@ -684,7 +684,7 @@ xfs_bmap_add_extent(
684 ASSERT(nblks <= da_old); 684 ASSERT(nblks <= da_old);
685 if (nblks < da_old) 685 if (nblks < da_old)
686 xfs_mod_incore_sb(ip->i_mount, XFS_SBS_FDBLOCKS, 686 xfs_mod_incore_sb(ip->i_mount, XFS_SBS_FDBLOCKS,
687 (int)(da_old - nblks), rsvd); 687 (int64_t)(da_old - nblks), rsvd);
688 } 688 }
689 /* 689 /*
690 * Clear out the allocated field, done with it now in any case. 690 * Clear out the allocated field, done with it now in any case.
@@ -1209,7 +1209,7 @@ xfs_bmap_add_extent_delay_real(
1209 diff = (int)(temp + temp2 - STARTBLOCKVAL(PREV.br_startblock) - 1209 diff = (int)(temp + temp2 - STARTBLOCKVAL(PREV.br_startblock) -
1210 (cur ? cur->bc_private.b.allocated : 0)); 1210 (cur ? cur->bc_private.b.allocated : 0));
1211 if (diff > 0 && 1211 if (diff > 0 &&
1212 xfs_mod_incore_sb(ip->i_mount, XFS_SBS_FDBLOCKS, -diff, rsvd)) { 1212 xfs_mod_incore_sb(ip->i_mount, XFS_SBS_FDBLOCKS, -((int64_t)diff), rsvd)) {
1213 /* 1213 /*
1214 * Ick gross gag me with a spoon. 1214 * Ick gross gag me with a spoon.
1215 */ 1215 */
@@ -1220,7 +1220,7 @@ xfs_bmap_add_extent_delay_real(
1220 diff--; 1220 diff--;
1221 if (!diff || 1221 if (!diff ||
1222 !xfs_mod_incore_sb(ip->i_mount, 1222 !xfs_mod_incore_sb(ip->i_mount,
1223 XFS_SBS_FDBLOCKS, -diff, rsvd)) 1223 XFS_SBS_FDBLOCKS, -((int64_t)diff), rsvd))
1224 break; 1224 break;
1225 } 1225 }
1226 if (temp2) { 1226 if (temp2) {
@@ -1228,7 +1228,7 @@ xfs_bmap_add_extent_delay_real(
1228 diff--; 1228 diff--;
1229 if (!diff || 1229 if (!diff ||
1230 !xfs_mod_incore_sb(ip->i_mount, 1230 !xfs_mod_incore_sb(ip->i_mount,
1231 XFS_SBS_FDBLOCKS, -diff, rsvd)) 1231 XFS_SBS_FDBLOCKS, -((int64_t)diff), rsvd))
1232 break; 1232 break;
1233 } 1233 }
1234 } 1234 }
@@ -2015,7 +2015,7 @@ xfs_bmap_add_extent_hole_delay(
2015 if (oldlen != newlen) { 2015 if (oldlen != newlen) {
2016 ASSERT(oldlen > newlen); 2016 ASSERT(oldlen > newlen);
2017 xfs_mod_incore_sb(ip->i_mount, XFS_SBS_FDBLOCKS, 2017 xfs_mod_incore_sb(ip->i_mount, XFS_SBS_FDBLOCKS,
2018 (int)(oldlen - newlen), rsvd); 2018 (int64_t)(oldlen - newlen), rsvd);
2019 /* 2019 /*
2020 * Nothing to do for disk quota accounting here. 2020 * Nothing to do for disk quota accounting here.
2021 */ 2021 */
@@ -3359,7 +3359,7 @@ xfs_bmap_del_extent(
3359 */ 3359 */
3360 ASSERT(da_old >= da_new); 3360 ASSERT(da_old >= da_new);
3361 if (da_old > da_new) 3361 if (da_old > da_new)
3362 xfs_mod_incore_sb(mp, XFS_SBS_FDBLOCKS, (int)(da_old - da_new), 3362 xfs_mod_incore_sb(mp, XFS_SBS_FDBLOCKS, (int64_t)(da_old - da_new),
3363 rsvd); 3363 rsvd);
3364 if (delta) { 3364 if (delta) {
3365 /* DELTA: report the original extent. */ 3365 /* DELTA: report the original extent. */
@@ -4930,28 +4930,28 @@ xfs_bmapi(
4930 if (rt) { 4930 if (rt) {
4931 error = xfs_mod_incore_sb(mp, 4931 error = xfs_mod_incore_sb(mp,
4932 XFS_SBS_FREXTENTS, 4932 XFS_SBS_FREXTENTS,
4933 -(extsz), (flags & 4933 -((int64_t)extsz), (flags &
4934 XFS_BMAPI_RSVBLOCKS)); 4934 XFS_BMAPI_RSVBLOCKS));
4935 } else { 4935 } else {
4936 error = xfs_mod_incore_sb(mp, 4936 error = xfs_mod_incore_sb(mp,
4937 XFS_SBS_FDBLOCKS, 4937 XFS_SBS_FDBLOCKS,
4938 -(alen), (flags & 4938 -((int64_t)alen), (flags &
4939 XFS_BMAPI_RSVBLOCKS)); 4939 XFS_BMAPI_RSVBLOCKS));
4940 } 4940 }
4941 if (!error) { 4941 if (!error) {
4942 error = xfs_mod_incore_sb(mp, 4942 error = xfs_mod_incore_sb(mp,
4943 XFS_SBS_FDBLOCKS, 4943 XFS_SBS_FDBLOCKS,
4944 -(indlen), (flags & 4944 -((int64_t)indlen), (flags &
4945 XFS_BMAPI_RSVBLOCKS)); 4945 XFS_BMAPI_RSVBLOCKS));
4946 if (error && rt) 4946 if (error && rt)
4947 xfs_mod_incore_sb(mp, 4947 xfs_mod_incore_sb(mp,
4948 XFS_SBS_FREXTENTS, 4948 XFS_SBS_FREXTENTS,
4949 extsz, (flags & 4949 (int64_t)extsz, (flags &
4950 XFS_BMAPI_RSVBLOCKS)); 4950 XFS_BMAPI_RSVBLOCKS));
4951 else if (error) 4951 else if (error)
4952 xfs_mod_incore_sb(mp, 4952 xfs_mod_incore_sb(mp,
4953 XFS_SBS_FDBLOCKS, 4953 XFS_SBS_FDBLOCKS,
4954 alen, (flags & 4954 (int64_t)alen, (flags &
4955 XFS_BMAPI_RSVBLOCKS)); 4955 XFS_BMAPI_RSVBLOCKS));
4956 } 4956 }
4957 4957
@@ -5617,13 +5617,13 @@ xfs_bunmapi(
5617 rtexts = XFS_FSB_TO_B(mp, del.br_blockcount); 5617 rtexts = XFS_FSB_TO_B(mp, del.br_blockcount);
5618 do_div(rtexts, mp->m_sb.sb_rextsize); 5618 do_div(rtexts, mp->m_sb.sb_rextsize);
5619 xfs_mod_incore_sb(mp, XFS_SBS_FREXTENTS, 5619 xfs_mod_incore_sb(mp, XFS_SBS_FREXTENTS,
5620 (int)rtexts, rsvd); 5620 (int64_t)rtexts, rsvd);
5621 (void)XFS_TRANS_RESERVE_QUOTA_NBLKS(mp, 5621 (void)XFS_TRANS_RESERVE_QUOTA_NBLKS(mp,
5622 NULL, ip, -((long)del.br_blockcount), 0, 5622 NULL, ip, -((long)del.br_blockcount), 0,
5623 XFS_QMOPT_RES_RTBLKS); 5623 XFS_QMOPT_RES_RTBLKS);
5624 } else { 5624 } else {
5625 xfs_mod_incore_sb(mp, XFS_SBS_FDBLOCKS, 5625 xfs_mod_incore_sb(mp, XFS_SBS_FDBLOCKS,
5626 (int)del.br_blockcount, rsvd); 5626 (int64_t)del.br_blockcount, rsvd);
5627 (void)XFS_TRANS_RESERVE_QUOTA_NBLKS(mp, 5627 (void)XFS_TRANS_RESERVE_QUOTA_NBLKS(mp,
5628 NULL, ip, -((long)del.br_blockcount), 0, 5628 NULL, ip, -((long)del.br_blockcount), 0,
5629 XFS_QMOPT_RES_REGBLKS); 5629 XFS_QMOPT_RES_REGBLKS);
diff --git a/fs/xfs/xfs_mount.c b/fs/xfs/xfs_mount.c
index cbe729310eee..0df07c1df76e 100644
--- a/fs/xfs/xfs_mount.c
+++ b/fs/xfs/xfs_mount.c
@@ -52,11 +52,11 @@ STATIC void xfs_unmountfs_wait(xfs_mount_t *);
52 52
53#ifdef HAVE_PERCPU_SB 53#ifdef HAVE_PERCPU_SB
54STATIC void xfs_icsb_destroy_counters(xfs_mount_t *); 54STATIC void xfs_icsb_destroy_counters(xfs_mount_t *);
55STATIC void xfs_icsb_balance_counter(xfs_mount_t *, xfs_sb_field_t, int, 55STATIC void xfs_icsb_balance_counter(xfs_mount_t *, xfs_sb_field_t,
56int); 56 int, int);
57STATIC void xfs_icsb_sync_counters(xfs_mount_t *); 57STATIC void xfs_icsb_sync_counters(xfs_mount_t *);
58STATIC int xfs_icsb_modify_counters(xfs_mount_t *, xfs_sb_field_t, 58STATIC int xfs_icsb_modify_counters(xfs_mount_t *, xfs_sb_field_t,
59 int, int); 59 int64_t, int);
60STATIC int xfs_icsb_disable_counter(xfs_mount_t *, xfs_sb_field_t); 60STATIC int xfs_icsb_disable_counter(xfs_mount_t *, xfs_sb_field_t);
61 61
62#else 62#else
@@ -1254,8 +1254,11 @@ xfs_mod_sb(xfs_trans_t *tp, __int64_t fields)
1254 * The SB_LOCK must be held when this routine is called. 1254 * The SB_LOCK must be held when this routine is called.
1255 */ 1255 */
1256int 1256int
1257xfs_mod_incore_sb_unlocked(xfs_mount_t *mp, xfs_sb_field_t field, 1257xfs_mod_incore_sb_unlocked(
1258 int delta, int rsvd) 1258 xfs_mount_t *mp,
1259 xfs_sb_field_t field,
1260 int64_t delta,
1261 int rsvd)
1259{ 1262{
1260 int scounter; /* short counter for 32 bit fields */ 1263 int scounter; /* short counter for 32 bit fields */
1261 long long lcounter; /* long counter for 64 bit fields */ 1264 long long lcounter; /* long counter for 64 bit fields */
@@ -1287,7 +1290,6 @@ xfs_mod_incore_sb_unlocked(xfs_mount_t *mp, xfs_sb_field_t field,
1287 mp->m_sb.sb_ifree = lcounter; 1290 mp->m_sb.sb_ifree = lcounter;
1288 return 0; 1291 return 0;
1289 case XFS_SBS_FDBLOCKS: 1292 case XFS_SBS_FDBLOCKS:
1290
1291 lcounter = (long long) 1293 lcounter = (long long)
1292 mp->m_sb.sb_fdblocks - XFS_ALLOC_SET_ASIDE(mp); 1294 mp->m_sb.sb_fdblocks - XFS_ALLOC_SET_ASIDE(mp);
1293 res_used = (long long)(mp->m_resblks - mp->m_resblks_avail); 1295 res_used = (long long)(mp->m_resblks - mp->m_resblks_avail);
@@ -1418,7 +1420,11 @@ xfs_mod_incore_sb_unlocked(xfs_mount_t *mp, xfs_sb_field_t field,
1418 * routine to do the work. 1420 * routine to do the work.
1419 */ 1421 */
1420int 1422int
1421xfs_mod_incore_sb(xfs_mount_t *mp, xfs_sb_field_t field, int delta, int rsvd) 1423xfs_mod_incore_sb(
1424 xfs_mount_t *mp,
1425 xfs_sb_field_t field,
1426 int64_t delta,
1427 int rsvd)
1422{ 1428{
1423 unsigned long s; 1429 unsigned long s;
1424 int status; 1430 int status;
@@ -2092,7 +2098,7 @@ int
2092xfs_icsb_modify_counters( 2098xfs_icsb_modify_counters(
2093 xfs_mount_t *mp, 2099 xfs_mount_t *mp,
2094 xfs_sb_field_t field, 2100 xfs_sb_field_t field,
2095 int delta, 2101 int64_t delta,
2096 int rsvd) 2102 int rsvd)
2097{ 2103{
2098 xfs_icsb_cnts_t *icsbp; 2104 xfs_icsb_cnts_t *icsbp;
diff --git a/fs/xfs/xfs_mount.h b/fs/xfs/xfs_mount.h
index 9c33af88514e..9a8e7151b65c 100644
--- a/fs/xfs/xfs_mount.h
+++ b/fs/xfs/xfs_mount.h
@@ -586,10 +586,11 @@ xfs_icsb_unlock(xfs_mount_t *mp)
586 586
587/* 587/*
588 * This structure is for use by the xfs_mod_incore_sb_batch() routine. 588 * This structure is for use by the xfs_mod_incore_sb_batch() routine.
589 * xfs_growfs can specify a few fields which are more than int limit
589 */ 590 */
590typedef struct xfs_mod_sb { 591typedef struct xfs_mod_sb {
591 xfs_sb_field_t msb_field; /* Field to modify, see below */ 592 xfs_sb_field_t msb_field; /* Field to modify, see below */
592 int msb_delta; /* Change to make to specified field */ 593 int64_t msb_delta; /* Change to make to specified field */
593} xfs_mod_sb_t; 594} xfs_mod_sb_t;
594 595
595#define XFS_MOUNT_ILOCK(mp) mutex_lock(&((mp)->m_ilock)) 596#define XFS_MOUNT_ILOCK(mp) mutex_lock(&((mp)->m_ilock))
@@ -607,9 +608,9 @@ extern int xfs_unmountfs(xfs_mount_t *, struct cred *);
607extern void xfs_unmountfs_close(xfs_mount_t *, struct cred *); 608extern void xfs_unmountfs_close(xfs_mount_t *, struct cred *);
608extern int xfs_unmountfs_writesb(xfs_mount_t *); 609extern int xfs_unmountfs_writesb(xfs_mount_t *);
609extern int xfs_unmount_flush(xfs_mount_t *, int); 610extern int xfs_unmount_flush(xfs_mount_t *, int);
610extern int xfs_mod_incore_sb(xfs_mount_t *, xfs_sb_field_t, int, int); 611extern int xfs_mod_incore_sb(xfs_mount_t *, xfs_sb_field_t, int64_t, int);
611extern int xfs_mod_incore_sb_unlocked(xfs_mount_t *, xfs_sb_field_t, 612extern int xfs_mod_incore_sb_unlocked(xfs_mount_t *, xfs_sb_field_t,
612 int, int); 613 int64_t, int);
613extern int xfs_mod_incore_sb_batch(xfs_mount_t *, xfs_mod_sb_t *, 614extern int xfs_mod_incore_sb_batch(xfs_mount_t *, xfs_mod_sb_t *,
614 uint, int); 615 uint, int);
615extern struct xfs_buf *xfs_getsb(xfs_mount_t *, int); 616extern struct xfs_buf *xfs_getsb(xfs_mount_t *, int);
diff --git a/fs/xfs/xfs_trans.c b/fs/xfs/xfs_trans.c
index ee2721e0de4d..301ff9445b6f 100644
--- a/fs/xfs/xfs_trans.c
+++ b/fs/xfs/xfs_trans.c
@@ -339,7 +339,7 @@ xfs_trans_reserve(
339 */ 339 */
340 if (blocks > 0) { 340 if (blocks > 0) {
341 error = xfs_mod_incore_sb(tp->t_mountp, XFS_SBS_FDBLOCKS, 341 error = xfs_mod_incore_sb(tp->t_mountp, XFS_SBS_FDBLOCKS,
342 -blocks, rsvd); 342 -((int64_t)blocks), rsvd);
343 if (error != 0) { 343 if (error != 0) {
344 current_restore_flags_nested(&tp->t_pflags, PF_FSTRANS); 344 current_restore_flags_nested(&tp->t_pflags, PF_FSTRANS);
345 return (XFS_ERROR(ENOSPC)); 345 return (XFS_ERROR(ENOSPC));
@@ -380,7 +380,7 @@ xfs_trans_reserve(
380 */ 380 */
381 if (rtextents > 0) { 381 if (rtextents > 0) {
382 error = xfs_mod_incore_sb(tp->t_mountp, XFS_SBS_FREXTENTS, 382 error = xfs_mod_incore_sb(tp->t_mountp, XFS_SBS_FREXTENTS,
383 -rtextents, rsvd); 383 -((int64_t)rtextents), rsvd);
384 if (error) { 384 if (error) {
385 error = XFS_ERROR(ENOSPC); 385 error = XFS_ERROR(ENOSPC);
386 goto undo_log; 386 goto undo_log;
@@ -410,7 +410,7 @@ undo_log:
410undo_blocks: 410undo_blocks:
411 if (blocks > 0) { 411 if (blocks > 0) {
412 (void) xfs_mod_incore_sb(tp->t_mountp, XFS_SBS_FDBLOCKS, 412 (void) xfs_mod_incore_sb(tp->t_mountp, XFS_SBS_FDBLOCKS,
413 blocks, rsvd); 413 (int64_t)blocks, rsvd);
414 tp->t_blk_res = 0; 414 tp->t_blk_res = 0;
415 } 415 }
416 416
@@ -432,7 +432,7 @@ void
432xfs_trans_mod_sb( 432xfs_trans_mod_sb(
433 xfs_trans_t *tp, 433 xfs_trans_t *tp,
434 uint field, 434 uint field,
435 long delta) 435 int64_t delta)
436{ 436{
437 437
438 switch (field) { 438 switch (field) {
@@ -663,62 +663,62 @@ xfs_trans_unreserve_and_mod_sb(
663 if (tp->t_flags & XFS_TRANS_SB_DIRTY) { 663 if (tp->t_flags & XFS_TRANS_SB_DIRTY) {
664 if (tp->t_icount_delta != 0) { 664 if (tp->t_icount_delta != 0) {
665 msbp->msb_field = XFS_SBS_ICOUNT; 665 msbp->msb_field = XFS_SBS_ICOUNT;
666 msbp->msb_delta = (int)tp->t_icount_delta; 666 msbp->msb_delta = tp->t_icount_delta;
667 msbp++; 667 msbp++;
668 } 668 }
669 if (tp->t_ifree_delta != 0) { 669 if (tp->t_ifree_delta != 0) {
670 msbp->msb_field = XFS_SBS_IFREE; 670 msbp->msb_field = XFS_SBS_IFREE;
671 msbp->msb_delta = (int)tp->t_ifree_delta; 671 msbp->msb_delta = tp->t_ifree_delta;
672 msbp++; 672 msbp++;
673 } 673 }
674 if (tp->t_fdblocks_delta != 0) { 674 if (tp->t_fdblocks_delta != 0) {
675 msbp->msb_field = XFS_SBS_FDBLOCKS; 675 msbp->msb_field = XFS_SBS_FDBLOCKS;
676 msbp->msb_delta = (int)tp->t_fdblocks_delta; 676 msbp->msb_delta = tp->t_fdblocks_delta;
677 msbp++; 677 msbp++;
678 } 678 }
679 if (tp->t_frextents_delta != 0) { 679 if (tp->t_frextents_delta != 0) {
680 msbp->msb_field = XFS_SBS_FREXTENTS; 680 msbp->msb_field = XFS_SBS_FREXTENTS;
681 msbp->msb_delta = (int)tp->t_frextents_delta; 681 msbp->msb_delta = tp->t_frextents_delta;
682 msbp++; 682 msbp++;
683 } 683 }
684 if (tp->t_dblocks_delta != 0) { 684 if (tp->t_dblocks_delta != 0) {
685 msbp->msb_field = XFS_SBS_DBLOCKS; 685 msbp->msb_field = XFS_SBS_DBLOCKS;
686 msbp->msb_delta = (int)tp->t_dblocks_delta; 686 msbp->msb_delta = tp->t_dblocks_delta;
687 msbp++; 687 msbp++;
688 } 688 }
689 if (tp->t_agcount_delta != 0) { 689 if (tp->t_agcount_delta != 0) {
690 msbp->msb_field = XFS_SBS_AGCOUNT; 690 msbp->msb_field = XFS_SBS_AGCOUNT;
691 msbp->msb_delta = (int)tp->t_agcount_delta; 691 msbp->msb_delta = tp->t_agcount_delta;
692 msbp++; 692 msbp++;
693 } 693 }
694 if (tp->t_imaxpct_delta != 0) { 694 if (tp->t_imaxpct_delta != 0) {
695 msbp->msb_field = XFS_SBS_IMAX_PCT; 695 msbp->msb_field = XFS_SBS_IMAX_PCT;
696 msbp->msb_delta = (int)tp->t_imaxpct_delta; 696 msbp->msb_delta = tp->t_imaxpct_delta;
697 msbp++; 697 msbp++;
698 } 698 }
699 if (tp->t_rextsize_delta != 0) { 699 if (tp->t_rextsize_delta != 0) {
700 msbp->msb_field = XFS_SBS_REXTSIZE; 700 msbp->msb_field = XFS_SBS_REXTSIZE;
701 msbp->msb_delta = (int)tp->t_rextsize_delta; 701 msbp->msb_delta = tp->t_rextsize_delta;
702 msbp++; 702 msbp++;
703 } 703 }
704 if (tp->t_rbmblocks_delta != 0) { 704 if (tp->t_rbmblocks_delta != 0) {
705 msbp->msb_field = XFS_SBS_RBMBLOCKS; 705 msbp->msb_field = XFS_SBS_RBMBLOCKS;
706 msbp->msb_delta = (int)tp->t_rbmblocks_delta; 706 msbp->msb_delta = tp->t_rbmblocks_delta;
707 msbp++; 707 msbp++;
708 } 708 }
709 if (tp->t_rblocks_delta != 0) { 709 if (tp->t_rblocks_delta != 0) {
710 msbp->msb_field = XFS_SBS_RBLOCKS; 710 msbp->msb_field = XFS_SBS_RBLOCKS;
711 msbp->msb_delta = (int)tp->t_rblocks_delta; 711 msbp->msb_delta = tp->t_rblocks_delta;
712 msbp++; 712 msbp++;
713 } 713 }
714 if (tp->t_rextents_delta != 0) { 714 if (tp->t_rextents_delta != 0) {
715 msbp->msb_field = XFS_SBS_REXTENTS; 715 msbp->msb_field = XFS_SBS_REXTENTS;
716 msbp->msb_delta = (int)tp->t_rextents_delta; 716 msbp->msb_delta = tp->t_rextents_delta;
717 msbp++; 717 msbp++;
718 } 718 }
719 if (tp->t_rextslog_delta != 0) { 719 if (tp->t_rextslog_delta != 0) {
720 msbp->msb_field = XFS_SBS_REXTSLOG; 720 msbp->msb_field = XFS_SBS_REXTSLOG;
721 msbp->msb_delta = (int)tp->t_rextslog_delta; 721 msbp->msb_delta = tp->t_rextslog_delta;
722 msbp++; 722 msbp++;
723 } 723 }
724 } 724 }
diff --git a/fs/xfs/xfs_trans.h b/fs/xfs/xfs_trans.h
index 9c975c6e6a4f..f1d7ab236726 100644
--- a/fs/xfs/xfs_trans.h
+++ b/fs/xfs/xfs_trans.h
@@ -350,25 +350,25 @@ typedef struct xfs_trans {
350 xfs_trans_callback_t t_callback; /* transaction callback */ 350 xfs_trans_callback_t t_callback; /* transaction callback */
351 void *t_callarg; /* callback arg */ 351 void *t_callarg; /* callback arg */
352 unsigned int t_flags; /* misc flags */ 352 unsigned int t_flags; /* misc flags */
353 long t_icount_delta; /* superblock icount change */ 353 int64_t t_icount_delta; /* superblock icount change */
354 long t_ifree_delta; /* superblock ifree change */ 354 int64_t t_ifree_delta; /* superblock ifree change */
355 long t_fdblocks_delta; /* superblock fdblocks chg */ 355 int64_t t_fdblocks_delta; /* superblock fdblocks chg */
356 long t_res_fdblocks_delta; /* on-disk only chg */ 356 int64_t t_res_fdblocks_delta; /* on-disk only chg */
357 long t_frextents_delta;/* superblock freextents chg*/ 357 int64_t t_frextents_delta;/* superblock freextents chg*/
358 long t_res_frextents_delta; /* on-disk only chg */ 358 int64_t t_res_frextents_delta; /* on-disk only chg */
359#ifdef DEBUG 359#ifdef DEBUG
360 long t_ag_freeblks_delta; /* debugging counter */ 360 int64_t t_ag_freeblks_delta; /* debugging counter */
361 long t_ag_flist_delta; /* debugging counter */ 361 int64_t t_ag_flist_delta; /* debugging counter */
362 long t_ag_btree_delta; /* debugging counter */ 362 int64_t t_ag_btree_delta; /* debugging counter */
363#endif 363#endif
364 long t_dblocks_delta;/* superblock dblocks change */ 364 int64_t t_dblocks_delta;/* superblock dblocks change */
365 long t_agcount_delta;/* superblock agcount change */ 365 int64_t t_agcount_delta;/* superblock agcount change */
366 long t_imaxpct_delta;/* superblock imaxpct change */ 366 int64_t t_imaxpct_delta;/* superblock imaxpct change */
367 long t_rextsize_delta;/* superblock rextsize chg */ 367 int64_t t_rextsize_delta;/* superblock rextsize chg */
368 long t_rbmblocks_delta;/* superblock rbmblocks chg */ 368 int64_t t_rbmblocks_delta;/* superblock rbmblocks chg */
369 long t_rblocks_delta;/* superblock rblocks change */ 369 int64_t t_rblocks_delta;/* superblock rblocks change */
370 long t_rextents_delta;/* superblocks rextents chg */ 370 int64_t t_rextents_delta;/* superblocks rextents chg */
371 long t_rextslog_delta;/* superblocks rextslog chg */ 371 int64_t t_rextslog_delta;/* superblocks rextslog chg */
372 unsigned int t_items_free; /* log item descs free */ 372 unsigned int t_items_free; /* log item descs free */
373 xfs_log_item_chunk_t t_items; /* first log item desc chunk */ 373 xfs_log_item_chunk_t t_items; /* first log item desc chunk */
374 xfs_trans_header_t t_header; /* header for in-log trans */ 374 xfs_trans_header_t t_header; /* header for in-log trans */
@@ -932,9 +932,9 @@ typedef struct xfs_trans {
932#define xfs_trans_set_sync(tp) ((tp)->t_flags |= XFS_TRANS_SYNC) 932#define xfs_trans_set_sync(tp) ((tp)->t_flags |= XFS_TRANS_SYNC)
933 933
934#ifdef DEBUG 934#ifdef DEBUG
935#define xfs_trans_agblocks_delta(tp, d) ((tp)->t_ag_freeblks_delta += (long)d) 935#define xfs_trans_agblocks_delta(tp, d) ((tp)->t_ag_freeblks_delta += (int64_t)d)
936#define xfs_trans_agflist_delta(tp, d) ((tp)->t_ag_flist_delta += (long)d) 936#define xfs_trans_agflist_delta(tp, d) ((tp)->t_ag_flist_delta += (int64_t)d)
937#define xfs_trans_agbtree_delta(tp, d) ((tp)->t_ag_btree_delta += (long)d) 937#define xfs_trans_agbtree_delta(tp, d) ((tp)->t_ag_btree_delta += (int64_t)d)
938#else 938#else
939#define xfs_trans_agblocks_delta(tp, d) 939#define xfs_trans_agblocks_delta(tp, d)
940#define xfs_trans_agflist_delta(tp, d) 940#define xfs_trans_agflist_delta(tp, d)
@@ -950,7 +950,7 @@ xfs_trans_t *_xfs_trans_alloc(struct xfs_mount *, uint);
950xfs_trans_t *xfs_trans_dup(xfs_trans_t *); 950xfs_trans_t *xfs_trans_dup(xfs_trans_t *);
951int xfs_trans_reserve(xfs_trans_t *, uint, uint, uint, 951int xfs_trans_reserve(xfs_trans_t *, uint, uint, uint,
952 uint, uint); 952 uint, uint);
953void xfs_trans_mod_sb(xfs_trans_t *, uint, long); 953void xfs_trans_mod_sb(xfs_trans_t *, uint, int64_t);
954struct xfs_buf *xfs_trans_get_buf(xfs_trans_t *, struct xfs_buftarg *, xfs_daddr_t, 954struct xfs_buf *xfs_trans_get_buf(xfs_trans_t *, struct xfs_buftarg *, xfs_daddr_t,
955 int, uint); 955 int, uint);
956int xfs_trans_read_buf(struct xfs_mount *, xfs_trans_t *, 956int xfs_trans_read_buf(struct xfs_mount *, xfs_trans_t *,