Commit 67fcb7bfb69eb1072c7e2dd6b46fa34db11dd587
Committed by
Lachlan McIlroy
1 parent
03bea6fe6c
Exists in
master
and in
20 other branches
[XFS] clean up some xfs_log_priv.h macros
- the various assign lsn macros are replaced by a single inline, xlog_assign_lsn, which is equivalent to ASSIGN_ANY_LSN_HOST except for a more sane calling convention. ASSIGN_LSN_DISK is replaced by xlog_assign_lsn and a manual bytespap, and ASSIGN_LSN by the same, except we pass the cycle and block arguments explicitly instead of a log paramter. The latter two variants only had 2, respectively one user anyway. - the GET_CYCLE is replaced by a xlog_get_cycle inline with exactly the same calling conventions. - GET_CLIENT_ID is replaced by xlog_get_client_id which leaves away the unused arch argument. Instead of conditional defintions depending on host endianess we now do an unconditional swap and shift then, which generates equal code. - the unused XLOG_SET macro is removed. SGI-PV: 971186 SGI-Modid: xfs-linux-melb:xfs-kern:29820a Signed-off-by: Christoph Hellwig <hch@infradead.org> Signed-off-by: Lachlan McIlroy <lachlan@sgi.com> Signed-off-by: Tim Shimmin <tes@sgi.com>
Showing 3 changed files with 16 additions and 17 deletions Side-by-side Diff
fs/xfs/xfs_log.c
... | ... | @@ -1829,7 +1829,7 @@ |
1829 | 1829 | */ |
1830 | 1830 | if (ticket->t_flags & XLOG_TIC_INITED) { |
1831 | 1831 | logop_head = (xlog_op_header_t *)ptr; |
1832 | - INT_SET(logop_head->oh_tid, ARCH_CONVERT, ticket->t_tid); | |
1832 | + logop_head->oh_tid = cpu_to_be32(ticket->t_tid); | |
1833 | 1833 | logop_head->oh_clientid = ticket->t_clientid; |
1834 | 1834 | logop_head->oh_len = 0; |
1835 | 1835 | logop_head->oh_flags = XLOG_START_TRANS; |
... | ... | @@ -1843,7 +1843,7 @@ |
1843 | 1843 | |
1844 | 1844 | /* Copy log operation header directly into data section */ |
1845 | 1845 | logop_head = (xlog_op_header_t *)ptr; |
1846 | - INT_SET(logop_head->oh_tid, ARCH_CONVERT, ticket->t_tid); | |
1846 | + logop_head->oh_tid = cpu_to_be32(ticket->t_tid); | |
1847 | 1847 | logop_head->oh_clientid = ticket->t_clientid; |
1848 | 1848 | logop_head->oh_res2 = 0; |
1849 | 1849 | |
1850 | 1850 | |
... | ... | @@ -1878,13 +1878,14 @@ |
1878 | 1878 | |
1879 | 1879 | copy_off = partial_copy_len; |
1880 | 1880 | if (need_copy <= iclog->ic_size - log_offset) { /*complete write */ |
1881 | - INT_SET(logop_head->oh_len, ARCH_CONVERT, copy_len = need_copy); | |
1881 | + copy_len = need_copy; | |
1882 | + logop_head->oh_len = cpu_to_be32(copy_len); | |
1882 | 1883 | if (partial_copy) |
1883 | 1884 | logop_head->oh_flags|= (XLOG_END_TRANS|XLOG_WAS_CONT_TRANS); |
1884 | 1885 | partial_copy_len = partial_copy = 0; |
1885 | 1886 | } else { /* partial write */ |
1886 | 1887 | copy_len = iclog->ic_size - log_offset; |
1887 | - INT_SET(logop_head->oh_len, ARCH_CONVERT, copy_len); | |
1888 | + logop_head->oh_len = cpu_to_be32(copy_len); | |
1888 | 1889 | logop_head->oh_flags |= XLOG_CONTINUE_TRANS; |
1889 | 1890 | if (partial_copy) |
1890 | 1891 | logop_head->oh_flags |= XLOG_WAS_CONT_TRANS; |
... | ... | @@ -3504,7 +3505,7 @@ |
3504 | 3505 | field_offset = (__psint_t) |
3505 | 3506 | ((xfs_caddr_t)&(ophead->oh_len) - base_ptr); |
3506 | 3507 | if (syncing == B_FALSE || (field_offset & 0x1ff)) { |
3507 | - op_len = INT_GET(ophead->oh_len, ARCH_CONVERT); | |
3508 | + op_len = be32_to_cpu(ophead->oh_len); | |
3508 | 3509 | } else { |
3509 | 3510 | idx = BTOBBT((__psint_t)&ophead->oh_len - |
3510 | 3511 | (__psint_t)iclog->ic_datap); |
fs/xfs/xfs_log_priv.h
... | ... | @@ -265,11 +265,11 @@ |
265 | 265 | |
266 | 266 | |
267 | 267 | typedef struct xlog_op_header { |
268 | - xlog_tid_t oh_tid; /* transaction id of operation : 4 b */ | |
269 | - int oh_len; /* bytes in data region : 4 b */ | |
270 | - __uint8_t oh_clientid; /* who sent me this : 1 b */ | |
271 | - __uint8_t oh_flags; /* : 1 b */ | |
272 | - ushort oh_res2; /* 32 bit align : 2 b */ | |
268 | + __be32 oh_tid; /* transaction id of operation : 4 b */ | |
269 | + __be32 oh_len; /* bytes in data region : 4 b */ | |
270 | + __u8 oh_clientid; /* who sent me this : 1 b */ | |
271 | + __u8 oh_flags; /* : 1 b */ | |
272 | + __u16 oh_res2; /* 32 bit align : 2 b */ | |
273 | 273 | } xlog_op_header_t; |
274 | 274 | |
275 | 275 |
fs/xfs/xfs_log_recover.c
... | ... | @@ -2916,7 +2916,7 @@ |
2916 | 2916 | ASSERT(0); |
2917 | 2917 | return (XFS_ERROR(EIO)); |
2918 | 2918 | } |
2919 | - tid = INT_GET(ohead->oh_tid, ARCH_CONVERT); | |
2919 | + tid = be32_to_cpu(ohead->oh_tid); | |
2920 | 2920 | hash = XLOG_RHASH(tid); |
2921 | 2921 | trans = xlog_recover_find_tid(rhash[hash], tid); |
2922 | 2922 | if (trans == NULL) { /* not found; add new tid */ |
... | ... | @@ -2924,7 +2924,7 @@ |
2924 | 2924 | xlog_recover_new_tid(&rhash[hash], tid, |
2925 | 2925 | INT_GET(rhead->h_lsn, ARCH_CONVERT)); |
2926 | 2926 | } else { |
2927 | - ASSERT(dp+INT_GET(ohead->oh_len, ARCH_CONVERT) <= lp); | |
2927 | + ASSERT(dp + be32_to_cpu(ohead->oh_len) <= lp); | |
2928 | 2928 | flags = ohead->oh_flags & ~XLOG_END_TRANS; |
2929 | 2929 | if (flags & XLOG_WAS_CONT_TRANS) |
2930 | 2930 | flags &= ~XLOG_CONTINUE_TRANS; |
... | ... | @@ -2938,8 +2938,7 @@ |
2938 | 2938 | break; |
2939 | 2939 | case XLOG_WAS_CONT_TRANS: |
2940 | 2940 | error = xlog_recover_add_to_cont_trans(trans, |
2941 | - dp, INT_GET(ohead->oh_len, | |
2942 | - ARCH_CONVERT)); | |
2941 | + dp, be32_to_cpu(ohead->oh_len)); | |
2943 | 2942 | break; |
2944 | 2943 | case XLOG_START_TRANS: |
2945 | 2944 | xlog_warn( |
... | ... | @@ -2950,8 +2949,7 @@ |
2950 | 2949 | case 0: |
2951 | 2950 | case XLOG_CONTINUE_TRANS: |
2952 | 2951 | error = xlog_recover_add_to_trans(trans, |
2953 | - dp, INT_GET(ohead->oh_len, | |
2954 | - ARCH_CONVERT)); | |
2952 | + dp, be32_to_cpu(ohead->oh_len)); | |
2955 | 2953 | break; |
2956 | 2954 | default: |
2957 | 2955 | xlog_warn( |
... | ... | @@ -2963,7 +2961,7 @@ |
2963 | 2961 | if (error) |
2964 | 2962 | return error; |
2965 | 2963 | } |
2966 | - dp += INT_GET(ohead->oh_len, ARCH_CONVERT); | |
2964 | + dp += be32_to_cpu(ohead->oh_len); | |
2967 | 2965 | num_logops--; |
2968 | 2966 | } |
2969 | 2967 | return 0; |