diff options
author | Darrick J. Wong <darrick.wong@oracle.com> | 2016-08-26 01:59:31 -0400 |
---|---|---|
committer | Dave Chinner <david@fromorbit.com> | 2016-08-26 01:59:31 -0400 |
commit | da1f039d6947b1a49f13b39a6de0df2a3e9e1ed1 (patch) | |
tree | dad5b15e4028a9116c0d45773c7cebd4f19fb1d5 | |
parent | 738f57c16a2bb527c705641f0fc1c68ff8cba72a (diff) |
xfs: don't log the entire end of the AGF
When we're logging the last non-spare field in the AGF, we don't
need to log the spare fields, so plumb in a new AGF logging flag
to help us avoid that.
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
-rw-r--r-- | fs/xfs/libxfs/xfs_alloc.c | 2 | ||||
-rw-r--r-- | fs/xfs/libxfs/xfs_format.h | 6 |
2 files changed, 6 insertions, 2 deletions
diff --git a/fs/xfs/libxfs/xfs_alloc.c b/fs/xfs/libxfs/xfs_alloc.c index 3dd8f1d54498..05b5243d89f6 100644 --- a/fs/xfs/libxfs/xfs_alloc.c +++ b/fs/xfs/libxfs/xfs_alloc.c | |||
@@ -2278,6 +2278,8 @@ xfs_alloc_log_agf( | |||
2278 | offsetof(xfs_agf_t, agf_btreeblks), | 2278 | offsetof(xfs_agf_t, agf_btreeblks), |
2279 | offsetof(xfs_agf_t, agf_uuid), | 2279 | offsetof(xfs_agf_t, agf_uuid), |
2280 | offsetof(xfs_agf_t, agf_rmap_blocks), | 2280 | offsetof(xfs_agf_t, agf_rmap_blocks), |
2281 | /* needed so that we don't log the whole rest of the structure: */ | ||
2282 | offsetof(xfs_agf_t, agf_spare64), | ||
2281 | sizeof(xfs_agf_t) | 2283 | sizeof(xfs_agf_t) |
2282 | }; | 2284 | }; |
2283 | 2285 | ||
diff --git a/fs/xfs/libxfs/xfs_format.h b/fs/xfs/libxfs/xfs_format.h index e6a8bea0f7ba..270fb5cf4fa1 100644 --- a/fs/xfs/libxfs/xfs_format.h +++ b/fs/xfs/libxfs/xfs_format.h | |||
@@ -674,7 +674,8 @@ typedef struct xfs_agf { | |||
674 | #define XFS_AGF_BTREEBLKS 0x00000800 | 674 | #define XFS_AGF_BTREEBLKS 0x00000800 |
675 | #define XFS_AGF_UUID 0x00001000 | 675 | #define XFS_AGF_UUID 0x00001000 |
676 | #define XFS_AGF_RMAP_BLOCKS 0x00002000 | 676 | #define XFS_AGF_RMAP_BLOCKS 0x00002000 |
677 | #define XFS_AGF_NUM_BITS 14 | 677 | #define XFS_AGF_SPARE64 0x00004000 |
678 | #define XFS_AGF_NUM_BITS 15 | ||
678 | #define XFS_AGF_ALL_BITS ((1 << XFS_AGF_NUM_BITS) - 1) | 679 | #define XFS_AGF_ALL_BITS ((1 << XFS_AGF_NUM_BITS) - 1) |
679 | 680 | ||
680 | #define XFS_AGF_FLAGS \ | 681 | #define XFS_AGF_FLAGS \ |
@@ -691,7 +692,8 @@ typedef struct xfs_agf { | |||
691 | { XFS_AGF_LONGEST, "LONGEST" }, \ | 692 | { XFS_AGF_LONGEST, "LONGEST" }, \ |
692 | { XFS_AGF_BTREEBLKS, "BTREEBLKS" }, \ | 693 | { XFS_AGF_BTREEBLKS, "BTREEBLKS" }, \ |
693 | { XFS_AGF_UUID, "UUID" }, \ | 694 | { XFS_AGF_UUID, "UUID" }, \ |
694 | { XFS_AGF_RMAP_BLOCKS, "RMAP_BLOCKS" } | 695 | { XFS_AGF_RMAP_BLOCKS, "RMAP_BLOCKS" }, \ |
696 | { XFS_AGF_SPARE64, "SPARE64" } | ||
695 | 697 | ||
696 | /* disk block (xfs_daddr_t) in the AG */ | 698 | /* disk block (xfs_daddr_t) in the AG */ |
697 | #define XFS_AGF_DADDR(mp) ((xfs_daddr_t)(1 << (mp)->m_sectbb_log)) | 699 | #define XFS_AGF_DADDR(mp) ((xfs_daddr_t)(1 << (mp)->m_sectbb_log)) |