提交 804195b6 编写于 作者: E Eric Sandeen 提交者: Tim Shimmin

[XFS] Get rid of old 5.3/6.1 v1 log items. Cleanup patch sent in by Eric

Sandeen.

SGI-PV: 958736
SGI-Modid: xfs-linux-melb:xfs-kern:27596a
Signed-off-by: NEric Sandeen <sandeen@sandeen.net>
Signed-off-by: NTim Shimmin <tes@sgi.com>
上级 7989cb8e
...@@ -21,23 +21,7 @@ ...@@ -21,23 +21,7 @@
/* /*
* This is the structure used to lay out a buf log item in the * This is the structure used to lay out a buf log item in the
* log. The data map describes which 128 byte chunks of the buffer * log. The data map describes which 128 byte chunks of the buffer
* have been logged. This structure works only on buffers that * have been logged.
* reside up to the first TB in the filesystem. These buffers are
* generated only by pre-6.2 systems and are known as XFS_LI_6_1_BUF.
*/
typedef struct xfs_buf_log_format_v1 {
unsigned short blf_type; /* buf log item type indicator */
unsigned short blf_size; /* size of this item */
__int32_t blf_blkno; /* starting blkno of this buf */
ushort blf_flags; /* misc state */
ushort blf_len; /* number of blocks in this buf */
unsigned int blf_map_size; /* size of data bitmap in words */
unsigned int blf_data_map[1];/* variable size bitmap of */
/* regions of buffer in this item */
} xfs_buf_log_format_v1_t;
/*
* This is a form of the above structure with a 64 bit blkno field.
* For 6.2 and beyond, this is XFS_LI_BUF. We use this to log everything. * For 6.2 and beyond, this is XFS_LI_BUF. We use this to log everything.
*/ */
typedef struct xfs_buf_log_format_t { typedef struct xfs_buf_log_format_t {
......
...@@ -1514,7 +1514,6 @@ xlog_recover_reorder_trans( ...@@ -1514,7 +1514,6 @@ xlog_recover_reorder_trans(
{ {
xlog_recover_item_t *first_item, *itemq, *itemq_next; xlog_recover_item_t *first_item, *itemq, *itemq_next;
xfs_buf_log_format_t *buf_f; xfs_buf_log_format_t *buf_f;
xfs_buf_log_format_v1_t *obuf_f;
ushort flags = 0; ushort flags = 0;
first_item = itemq = trans->r_itemq; first_item = itemq = trans->r_itemq;
...@@ -1522,29 +1521,16 @@ xlog_recover_reorder_trans( ...@@ -1522,29 +1521,16 @@ xlog_recover_reorder_trans(
do { do {
itemq_next = itemq->ri_next; itemq_next = itemq->ri_next;
buf_f = (xfs_buf_log_format_t *)itemq->ri_buf[0].i_addr; buf_f = (xfs_buf_log_format_t *)itemq->ri_buf[0].i_addr;
switch (ITEM_TYPE(itemq)) {
case XFS_LI_BUF:
flags = buf_f->blf_flags;
break;
case XFS_LI_6_1_BUF:
case XFS_LI_5_3_BUF:
obuf_f = (xfs_buf_log_format_v1_t*)buf_f;
flags = obuf_f->blf_flags;
break;
}
switch (ITEM_TYPE(itemq)) { switch (ITEM_TYPE(itemq)) {
case XFS_LI_BUF: case XFS_LI_BUF:
case XFS_LI_6_1_BUF: flags = buf_f->blf_flags;
case XFS_LI_5_3_BUF:
if (!(flags & XFS_BLI_CANCEL)) { if (!(flags & XFS_BLI_CANCEL)) {
xlog_recover_insert_item_frontq(&trans->r_itemq, xlog_recover_insert_item_frontq(&trans->r_itemq,
itemq); itemq);
break; break;
} }
case XFS_LI_INODE: case XFS_LI_INODE:
case XFS_LI_6_1_INODE:
case XFS_LI_5_3_INODE:
case XFS_LI_DQUOT: case XFS_LI_DQUOT:
case XFS_LI_QUOTAOFF: case XFS_LI_QUOTAOFF:
case XFS_LI_EFD: case XFS_LI_EFD:
...@@ -1583,7 +1569,6 @@ xlog_recover_do_buffer_pass1( ...@@ -1583,7 +1569,6 @@ xlog_recover_do_buffer_pass1(
xfs_buf_cancel_t *nextp; xfs_buf_cancel_t *nextp;
xfs_buf_cancel_t *prevp; xfs_buf_cancel_t *prevp;
xfs_buf_cancel_t **bucket; xfs_buf_cancel_t **bucket;
xfs_buf_log_format_v1_t *obuf_f;
xfs_daddr_t blkno = 0; xfs_daddr_t blkno = 0;
uint len = 0; uint len = 0;
ushort flags = 0; ushort flags = 0;
...@@ -1594,13 +1579,6 @@ xlog_recover_do_buffer_pass1( ...@@ -1594,13 +1579,6 @@ xlog_recover_do_buffer_pass1(
len = buf_f->blf_len; len = buf_f->blf_len;
flags = buf_f->blf_flags; flags = buf_f->blf_flags;
break; break;
case XFS_LI_6_1_BUF:
case XFS_LI_5_3_BUF:
obuf_f = (xfs_buf_log_format_v1_t*)buf_f;
blkno = (xfs_daddr_t) obuf_f->blf_blkno;
len = obuf_f->blf_len;
flags = obuf_f->blf_flags;
break;
} }
/* /*
...@@ -1746,7 +1724,6 @@ xlog_recover_do_buffer_pass2( ...@@ -1746,7 +1724,6 @@ xlog_recover_do_buffer_pass2(
xlog_t *log, xlog_t *log,
xfs_buf_log_format_t *buf_f) xfs_buf_log_format_t *buf_f)
{ {
xfs_buf_log_format_v1_t *obuf_f;
xfs_daddr_t blkno = 0; xfs_daddr_t blkno = 0;
ushort flags = 0; ushort flags = 0;
uint len = 0; uint len = 0;
...@@ -1757,13 +1734,6 @@ xlog_recover_do_buffer_pass2( ...@@ -1757,13 +1734,6 @@ xlog_recover_do_buffer_pass2(
flags = buf_f->blf_flags; flags = buf_f->blf_flags;
len = buf_f->blf_len; len = buf_f->blf_len;
break; break;
case XFS_LI_6_1_BUF:
case XFS_LI_5_3_BUF:
obuf_f = (xfs_buf_log_format_v1_t*)buf_f;
blkno = (xfs_daddr_t) obuf_f->blf_blkno;
flags = obuf_f->blf_flags;
len = (xfs_daddr_t) obuf_f->blf_len;
break;
} }
return xlog_check_buffer_cancelled(log, blkno, len, flags); return xlog_check_buffer_cancelled(log, blkno, len, flags);
...@@ -1799,7 +1769,6 @@ xlog_recover_do_inode_buffer( ...@@ -1799,7 +1769,6 @@ xlog_recover_do_inode_buffer(
int inodes_per_buf; int inodes_per_buf;
xfs_agino_t *logged_nextp; xfs_agino_t *logged_nextp;
xfs_agino_t *buffer_nextp; xfs_agino_t *buffer_nextp;
xfs_buf_log_format_v1_t *obuf_f;
unsigned int *data_map = NULL; unsigned int *data_map = NULL;
unsigned int map_size = 0; unsigned int map_size = 0;
...@@ -1808,12 +1777,6 @@ xlog_recover_do_inode_buffer( ...@@ -1808,12 +1777,6 @@ xlog_recover_do_inode_buffer(
data_map = buf_f->blf_data_map; data_map = buf_f->blf_data_map;
map_size = buf_f->blf_map_size; map_size = buf_f->blf_map_size;
break; break;
case XFS_LI_6_1_BUF:
case XFS_LI_5_3_BUF:
obuf_f = (xfs_buf_log_format_v1_t*)buf_f;
data_map = obuf_f->blf_data_map;
map_size = obuf_f->blf_map_size;
break;
} }
/* /*
* Set the variables corresponding to the current region to * Set the variables corresponding to the current region to
...@@ -1912,7 +1875,6 @@ xlog_recover_do_reg_buffer( ...@@ -1912,7 +1875,6 @@ xlog_recover_do_reg_buffer(
int i; int i;
int bit; int bit;
int nbits; int nbits;
xfs_buf_log_format_v1_t *obuf_f;
unsigned int *data_map = NULL; unsigned int *data_map = NULL;
unsigned int map_size = 0; unsigned int map_size = 0;
int error; int error;
...@@ -1922,12 +1884,6 @@ xlog_recover_do_reg_buffer( ...@@ -1922,12 +1884,6 @@ xlog_recover_do_reg_buffer(
data_map = buf_f->blf_data_map; data_map = buf_f->blf_data_map;
map_size = buf_f->blf_map_size; map_size = buf_f->blf_map_size;
break; break;
case XFS_LI_6_1_BUF:
case XFS_LI_5_3_BUF:
obuf_f = (xfs_buf_log_format_v1_t*)buf_f;
data_map = obuf_f->blf_data_map;
map_size = obuf_f->blf_map_size;
break;
} }
bit = 0; bit = 0;
i = 1; /* 0 is the buf format structure */ i = 1; /* 0 is the buf format structure */
...@@ -2160,7 +2116,6 @@ xlog_recover_do_buffer_trans( ...@@ -2160,7 +2116,6 @@ xlog_recover_do_buffer_trans(
int pass) int pass)
{ {
xfs_buf_log_format_t *buf_f; xfs_buf_log_format_t *buf_f;
xfs_buf_log_format_v1_t *obuf_f;
xfs_mount_t *mp; xfs_mount_t *mp;
xfs_buf_t *bp; xfs_buf_t *bp;
int error; int error;
...@@ -2197,13 +2152,6 @@ xlog_recover_do_buffer_trans( ...@@ -2197,13 +2152,6 @@ xlog_recover_do_buffer_trans(
len = buf_f->blf_len; len = buf_f->blf_len;
flags = buf_f->blf_flags; flags = buf_f->blf_flags;
break; break;
case XFS_LI_6_1_BUF:
case XFS_LI_5_3_BUF:
obuf_f = (xfs_buf_log_format_v1_t*)buf_f;
blkno = obuf_f->blf_blkno;
len = obuf_f->blf_len;
flags = obuf_f->blf_flags;
break;
default: default:
xfs_fs_cmn_err(CE_ALERT, log->l_mp, xfs_fs_cmn_err(CE_ALERT, log->l_mp,
"xfs_log_recover: unknown buffer type 0x%x, logdev %s", "xfs_log_recover: unknown buffer type 0x%x, logdev %s",
...@@ -2830,9 +2778,7 @@ xlog_recover_do_trans( ...@@ -2830,9 +2778,7 @@ xlog_recover_do_trans(
* where xfs_daddr_t is 32-bits but mount will warn us * where xfs_daddr_t is 32-bits but mount will warn us
* off a > 1 TB filesystem before we get here. * off a > 1 TB filesystem before we get here.
*/ */
if ((ITEM_TYPE(item) == XFS_LI_BUF) || if ((ITEM_TYPE(item) == XFS_LI_BUF)) {
(ITEM_TYPE(item) == XFS_LI_6_1_BUF) ||
(ITEM_TYPE(item) == XFS_LI_5_3_BUF)) {
if ((error = xlog_recover_do_buffer_trans(log, item, if ((error = xlog_recover_do_buffer_trans(log, item,
pass))) pass)))
break; break;
......
...@@ -39,13 +39,9 @@ typedef struct xfs_trans_header { ...@@ -39,13 +39,9 @@ typedef struct xfs_trans_header {
/* /*
* Log item types. * Log item types.
*/ */
#define XFS_LI_5_3_BUF 0x1234 /* v1 bufs, 1-block inode buffers */
#define XFS_LI_5_3_INODE 0x1235 /* 1-block inode buffers */
#define XFS_LI_EFI 0x1236 #define XFS_LI_EFI 0x1236
#define XFS_LI_EFD 0x1237 #define XFS_LI_EFD 0x1237
#define XFS_LI_IUNLINK 0x1238 #define XFS_LI_IUNLINK 0x1238
#define XFS_LI_6_1_INODE 0x1239 /* 4K non-aligned inode bufs */
#define XFS_LI_6_1_BUF 0x123a /* v1, 4K inode buffers */
#define XFS_LI_INODE 0x123b /* aligned ino chunks, var-size ibufs */ #define XFS_LI_INODE 0x123b /* aligned ino chunks, var-size ibufs */
#define XFS_LI_BUF 0x123c /* v2 bufs, variable sized inode bufs */ #define XFS_LI_BUF 0x123c /* v2 bufs, variable sized inode bufs */
#define XFS_LI_DQUOT 0x123d #define XFS_LI_DQUOT 0x123d
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册