xfs: replace attr LBSIZE with xfs_da_geometry
Signed-off-by: Dave Chinner <dchinner@redhat.com> Reviewed-by: Brian Foster <bfoster@redhat.com> Signed-off-by: Dave Chinner <david@fromorbit.com>
This commit is contained in:

committed by
Dave Chinner

parent
c59f0ad23a
commit
c2c4c477e0
@@ -125,6 +125,7 @@ xfs_attr3_rmt_read_verify(
|
||||
char *ptr;
|
||||
int len;
|
||||
xfs_daddr_t bno;
|
||||
int blksize = mp->m_attr_geo->blksize;
|
||||
|
||||
/* no verification of non-crc buffers */
|
||||
if (!xfs_sb_version_hascrc(&mp->m_sb))
|
||||
@@ -133,21 +134,20 @@ xfs_attr3_rmt_read_verify(
|
||||
ptr = bp->b_addr;
|
||||
bno = bp->b_bn;
|
||||
len = BBTOB(bp->b_length);
|
||||
ASSERT(len >= XFS_LBSIZE(mp));
|
||||
ASSERT(len >= blksize);
|
||||
|
||||
while (len > 0) {
|
||||
if (!xfs_verify_cksum(ptr, XFS_LBSIZE(mp),
|
||||
XFS_ATTR3_RMT_CRC_OFF)) {
|
||||
if (!xfs_verify_cksum(ptr, blksize, XFS_ATTR3_RMT_CRC_OFF)) {
|
||||
xfs_buf_ioerror(bp, EFSBADCRC);
|
||||
break;
|
||||
}
|
||||
if (!xfs_attr3_rmt_verify(mp, ptr, XFS_LBSIZE(mp), bno)) {
|
||||
if (!xfs_attr3_rmt_verify(mp, ptr, blksize, bno)) {
|
||||
xfs_buf_ioerror(bp, EFSCORRUPTED);
|
||||
break;
|
||||
}
|
||||
len -= XFS_LBSIZE(mp);
|
||||
ptr += XFS_LBSIZE(mp);
|
||||
bno += mp->m_bsize;
|
||||
len -= blksize;
|
||||
ptr += blksize;
|
||||
bno += BTOBB(blksize);
|
||||
}
|
||||
|
||||
if (bp->b_error)
|
||||
@@ -165,6 +165,7 @@ xfs_attr3_rmt_write_verify(
|
||||
char *ptr;
|
||||
int len;
|
||||
xfs_daddr_t bno;
|
||||
int blksize = mp->m_attr_geo->blksize;
|
||||
|
||||
/* no verification of non-crc buffers */
|
||||
if (!xfs_sb_version_hascrc(&mp->m_sb))
|
||||
@@ -173,10 +174,10 @@ xfs_attr3_rmt_write_verify(
|
||||
ptr = bp->b_addr;
|
||||
bno = bp->b_bn;
|
||||
len = BBTOB(bp->b_length);
|
||||
ASSERT(len >= XFS_LBSIZE(mp));
|
||||
ASSERT(len >= blksize);
|
||||
|
||||
while (len > 0) {
|
||||
if (!xfs_attr3_rmt_verify(mp, ptr, XFS_LBSIZE(mp), bno)) {
|
||||
if (!xfs_attr3_rmt_verify(mp, ptr, blksize, bno)) {
|
||||
xfs_buf_ioerror(bp, EFSCORRUPTED);
|
||||
xfs_verifier_error(bp);
|
||||
return;
|
||||
@@ -187,11 +188,11 @@ xfs_attr3_rmt_write_verify(
|
||||
rmt = (struct xfs_attr3_rmt_hdr *)ptr;
|
||||
rmt->rm_lsn = cpu_to_be64(bip->bli_item.li_lsn);
|
||||
}
|
||||
xfs_update_cksum(ptr, XFS_LBSIZE(mp), XFS_ATTR3_RMT_CRC_OFF);
|
||||
xfs_update_cksum(ptr, blksize, XFS_ATTR3_RMT_CRC_OFF);
|
||||
|
||||
len -= XFS_LBSIZE(mp);
|
||||
ptr += XFS_LBSIZE(mp);
|
||||
bno += mp->m_bsize;
|
||||
len -= blksize;
|
||||
ptr += blksize;
|
||||
bno += BTOBB(blksize);
|
||||
}
|
||||
ASSERT(len == 0);
|
||||
}
|
||||
@@ -240,12 +241,13 @@ xfs_attr_rmtval_copyout(
|
||||
char *src = bp->b_addr;
|
||||
xfs_daddr_t bno = bp->b_bn;
|
||||
int len = BBTOB(bp->b_length);
|
||||
int blksize = mp->m_attr_geo->blksize;
|
||||
|
||||
ASSERT(len >= XFS_LBSIZE(mp));
|
||||
ASSERT(len >= blksize);
|
||||
|
||||
while (len > 0 && *valuelen > 0) {
|
||||
int hdr_size = 0;
|
||||
int byte_cnt = XFS_ATTR3_RMT_BUF_SPACE(mp, XFS_LBSIZE(mp));
|
||||
int byte_cnt = XFS_ATTR3_RMT_BUF_SPACE(mp, blksize);
|
||||
|
||||
byte_cnt = min(*valuelen, byte_cnt);
|
||||
|
||||
@@ -263,9 +265,9 @@ xfs_attr_rmtval_copyout(
|
||||
memcpy(*dst, src + hdr_size, byte_cnt);
|
||||
|
||||
/* roll buffer forwards */
|
||||
len -= XFS_LBSIZE(mp);
|
||||
src += XFS_LBSIZE(mp);
|
||||
bno += mp->m_bsize;
|
||||
len -= blksize;
|
||||
src += blksize;
|
||||
bno += BTOBB(blksize);
|
||||
|
||||
/* roll attribute data forwards */
|
||||
*valuelen -= byte_cnt;
|
||||
@@ -287,12 +289,13 @@ xfs_attr_rmtval_copyin(
|
||||
char *dst = bp->b_addr;
|
||||
xfs_daddr_t bno = bp->b_bn;
|
||||
int len = BBTOB(bp->b_length);
|
||||
int blksize = mp->m_attr_geo->blksize;
|
||||
|
||||
ASSERT(len >= XFS_LBSIZE(mp));
|
||||
ASSERT(len >= blksize);
|
||||
|
||||
while (len > 0 && *valuelen > 0) {
|
||||
int hdr_size;
|
||||
int byte_cnt = XFS_ATTR3_RMT_BUF_SPACE(mp, XFS_LBSIZE(mp));
|
||||
int byte_cnt = XFS_ATTR3_RMT_BUF_SPACE(mp, blksize);
|
||||
|
||||
byte_cnt = min(*valuelen, byte_cnt);
|
||||
hdr_size = xfs_attr3_rmt_hdr_set(mp, dst, ino, *offset,
|
||||
@@ -304,17 +307,17 @@ xfs_attr_rmtval_copyin(
|
||||
* If this is the last block, zero the remainder of it.
|
||||
* Check that we are actually the last block, too.
|
||||
*/
|
||||
if (byte_cnt + hdr_size < XFS_LBSIZE(mp)) {
|
||||
if (byte_cnt + hdr_size < blksize) {
|
||||
ASSERT(*valuelen - byte_cnt == 0);
|
||||
ASSERT(len == XFS_LBSIZE(mp));
|
||||
ASSERT(len == blksize);
|
||||
memset(dst + hdr_size + byte_cnt, 0,
|
||||
XFS_LBSIZE(mp) - hdr_size - byte_cnt);
|
||||
blksize - hdr_size - byte_cnt);
|
||||
}
|
||||
|
||||
/* roll buffer forwards */
|
||||
len -= XFS_LBSIZE(mp);
|
||||
dst += XFS_LBSIZE(mp);
|
||||
bno += mp->m_bsize;
|
||||
len -= blksize;
|
||||
dst += blksize;
|
||||
bno += BTOBB(blksize);
|
||||
|
||||
/* roll attribute data forwards */
|
||||
*valuelen -= byte_cnt;
|
||||
|
Reference in New Issue
Block a user