aboutsummaryrefslogtreecommitdiffstats
path: root/fs/xfs/libxfs/xfs_inode_buf.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/xfs/libxfs/xfs_inode_buf.c')
-rw-r--r--fs/xfs/libxfs/xfs_inode_buf.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/fs/xfs/libxfs/xfs_inode_buf.c b/fs/xfs/libxfs/xfs_inode_buf.c
index 002b6b3a1988..6526e7696184 100644
--- a/fs/xfs/libxfs/xfs_inode_buf.c
+++ b/fs/xfs/libxfs/xfs_inode_buf.c
@@ -46,8 +46,7 @@ xfs_inobp_check(
46 j = mp->m_inode_cluster_size >> mp->m_sb.sb_inodelog; 46 j = mp->m_inode_cluster_size >> mp->m_sb.sb_inodelog;
47 47
48 for (i = 0; i < j; i++) { 48 for (i = 0; i < j; i++) {
49 dip = (xfs_dinode_t *)xfs_buf_offset(bp, 49 dip = xfs_buf_offset(bp, i * mp->m_sb.sb_inodesize);
50 i * mp->m_sb.sb_inodesize);
51 if (!dip->di_next_unlinked) { 50 if (!dip->di_next_unlinked) {
52 xfs_alert(mp, 51 xfs_alert(mp,
53 "Detected bogus zero next_unlinked field in inode %d buffer 0x%llx.", 52 "Detected bogus zero next_unlinked field in inode %d buffer 0x%llx.",
@@ -86,8 +85,7 @@ xfs_inode_buf_verify(
86 int di_ok; 85 int di_ok;
87 xfs_dinode_t *dip; 86 xfs_dinode_t *dip;
88 87
89 dip = (struct xfs_dinode *)xfs_buf_offset(bp, 88 dip = xfs_buf_offset(bp, (i << mp->m_sb.sb_inodelog));
90 (i << mp->m_sb.sb_inodelog));
91 di_ok = dip->di_magic == cpu_to_be16(XFS_DINODE_MAGIC) && 89 di_ok = dip->di_magic == cpu_to_be16(XFS_DINODE_MAGIC) &&
92 XFS_DINODE_GOOD_VERSION(dip->di_version); 90 XFS_DINODE_GOOD_VERSION(dip->di_version);
93 if (unlikely(XFS_TEST_ERROR(!di_ok, mp, 91 if (unlikely(XFS_TEST_ERROR(!di_ok, mp,
@@ -186,7 +184,7 @@ xfs_imap_to_bp(
186 } 184 }
187 185
188 *bpp = bp; 186 *bpp = bp;
189 *dipp = (struct xfs_dinode *)xfs_buf_offset(bp, imap->im_boffset); 187 *dipp = xfs_buf_offset(bp, imap->im_boffset);
190 return 0; 188 return 0;
191} 189}
192 190