[XFS] superblock endianess annotations
Creates a new xfs_dsb_t that is __be annotated and keeps xfs_sb_t for the incore one. xfs_xlatesb is renamed to xfs_sb_to_disk and only handles the incore -> disk conversion. A new helper xfs_sb_from_disk handles the other direction and doesn't need the slightly hacky table-driven approach because we only ever read the full sb from disk. The handling of shared r/o filesystems has been buggy on little endian system and fixing this required shuffling around of some code in that area. SGI-PV: 968563 SGI-Modid: xfs-linux-melb:xfs-kern:29477a Signed-off-by: Christoph Hellwig <hch@infradead.org> Signed-off-by: David Chinner <dgc@sgi.com> Signed-off-by: Tim Shimmin <tes@sgi.com>
This commit is contained in:
committed by
Tim Shimmin
parent
347d1c0195
commit
2bdf7cd0ba
@@ -136,7 +136,6 @@ xfs_growfs_data_private(
|
||||
xfs_rfsblock_t nfree;
|
||||
xfs_agnumber_t oagcount;
|
||||
int pct;
|
||||
xfs_sb_t *sbp;
|
||||
xfs_trans_t *tp;
|
||||
|
||||
nb = in->newblocks;
|
||||
@@ -377,8 +376,7 @@ xfs_growfs_data_private(
|
||||
error, agno);
|
||||
break;
|
||||
}
|
||||
sbp = XFS_BUF_TO_SBP(bp);
|
||||
xfs_xlatesb(sbp, &mp->m_sb, -1, XFS_SB_ALL_BITS);
|
||||
xfs_sb_to_disk(XFS_BUF_TO_SBP(bp), &mp->m_sb, XFS_SB_ALL_BITS);
|
||||
/*
|
||||
* If we get an error writing out the alternate superblocks,
|
||||
* just issue a warning and continue. The real work is
|
||||
|
Reference in New Issue
Block a user