diff options
Diffstat (limited to 'fs/xfs/xfs_fsops.c')
-rw-r--r-- | fs/xfs/xfs_fsops.c | 37 |
1 files changed, 13 insertions, 24 deletions
diff --git a/fs/xfs/xfs_fsops.c b/fs/xfs/xfs_fsops.c index 7b0a997cf62b..a5034af35db7 100644 --- a/fs/xfs/xfs_fsops.c +++ b/fs/xfs/xfs_fsops.c | |||
@@ -125,7 +125,6 @@ xfs_growfs_data_private( | |||
125 | xfs_extlen_t agsize; | 125 | xfs_extlen_t agsize; |
126 | xfs_extlen_t tmpsize; | 126 | xfs_extlen_t tmpsize; |
127 | xfs_alloc_rec_t *arec; | 127 | xfs_alloc_rec_t *arec; |
128 | struct xfs_btree_block *block; | ||
129 | xfs_buf_t *bp; | 128 | xfs_buf_t *bp; |
130 | int bucket; | 129 | int bucket; |
131 | int dpct; | 130 | int dpct; |
@@ -263,17 +262,14 @@ xfs_growfs_data_private( | |||
263 | error = ENOMEM; | 262 | error = ENOMEM; |
264 | goto error0; | 263 | goto error0; |
265 | } | 264 | } |
266 | block = XFS_BUF_TO_BLOCK(bp); | 265 | xfs_buf_zero(bp, 0, BBTOB(bp->b_length)); |
267 | memset(block, 0, mp->m_sb.sb_blocksize); | 266 | xfs_btree_init_block(mp, bp, XFS_ABTB_MAGIC, 0, 1, 0); |
268 | block->bb_magic = cpu_to_be32(XFS_ABTB_MAGIC); | 267 | |
269 | block->bb_level = 0; | 268 | arec = XFS_ALLOC_REC_ADDR(mp, XFS_BUF_TO_BLOCK(bp), 1); |
270 | block->bb_numrecs = cpu_to_be16(1); | ||
271 | block->bb_u.s.bb_leftsib = cpu_to_be32(NULLAGBLOCK); | ||
272 | block->bb_u.s.bb_rightsib = cpu_to_be32(NULLAGBLOCK); | ||
273 | arec = XFS_ALLOC_REC_ADDR(mp, block, 1); | ||
274 | arec->ar_startblock = cpu_to_be32(XFS_PREALLOC_BLOCKS(mp)); | 269 | arec->ar_startblock = cpu_to_be32(XFS_PREALLOC_BLOCKS(mp)); |
275 | arec->ar_blockcount = cpu_to_be32( | 270 | arec->ar_blockcount = cpu_to_be32( |
276 | agsize - be32_to_cpu(arec->ar_startblock)); | 271 | agsize - be32_to_cpu(arec->ar_startblock)); |
272 | |||
277 | error = xfs_bwrite(bp); | 273 | error = xfs_bwrite(bp); |
278 | xfs_buf_relse(bp); | 274 | xfs_buf_relse(bp); |
279 | if (error) | 275 | if (error) |
@@ -289,18 +285,15 @@ xfs_growfs_data_private( | |||
289 | error = ENOMEM; | 285 | error = ENOMEM; |
290 | goto error0; | 286 | goto error0; |
291 | } | 287 | } |
292 | block = XFS_BUF_TO_BLOCK(bp); | 288 | xfs_buf_zero(bp, 0, BBTOB(bp->b_length)); |
293 | memset(block, 0, mp->m_sb.sb_blocksize); | 289 | xfs_btree_init_block(mp, bp, XFS_ABTC_MAGIC, 0, 1, 0); |
294 | block->bb_magic = cpu_to_be32(XFS_ABTC_MAGIC); | 290 | |
295 | block->bb_level = 0; | 291 | arec = XFS_ALLOC_REC_ADDR(mp, XFS_BUF_TO_BLOCK(bp), 1); |
296 | block->bb_numrecs = cpu_to_be16(1); | ||
297 | block->bb_u.s.bb_leftsib = cpu_to_be32(NULLAGBLOCK); | ||
298 | block->bb_u.s.bb_rightsib = cpu_to_be32(NULLAGBLOCK); | ||
299 | arec = XFS_ALLOC_REC_ADDR(mp, block, 1); | ||
300 | arec->ar_startblock = cpu_to_be32(XFS_PREALLOC_BLOCKS(mp)); | 292 | arec->ar_startblock = cpu_to_be32(XFS_PREALLOC_BLOCKS(mp)); |
301 | arec->ar_blockcount = cpu_to_be32( | 293 | arec->ar_blockcount = cpu_to_be32( |
302 | agsize - be32_to_cpu(arec->ar_startblock)); | 294 | agsize - be32_to_cpu(arec->ar_startblock)); |
303 | nfree += be32_to_cpu(arec->ar_blockcount); | 295 | nfree += be32_to_cpu(arec->ar_blockcount); |
296 | |||
304 | error = xfs_bwrite(bp); | 297 | error = xfs_bwrite(bp); |
305 | xfs_buf_relse(bp); | 298 | xfs_buf_relse(bp); |
306 | if (error) | 299 | if (error) |
@@ -316,13 +309,9 @@ xfs_growfs_data_private( | |||
316 | error = ENOMEM; | 309 | error = ENOMEM; |
317 | goto error0; | 310 | goto error0; |
318 | } | 311 | } |
319 | block = XFS_BUF_TO_BLOCK(bp); | 312 | xfs_buf_zero(bp, 0, BBTOB(bp->b_length)); |
320 | memset(block, 0, mp->m_sb.sb_blocksize); | 313 | xfs_btree_init_block(mp, bp, XFS_IBT_MAGIC, 0, 0, 0); |
321 | block->bb_magic = cpu_to_be32(XFS_IBT_MAGIC); | 314 | |
322 | block->bb_level = 0; | ||
323 | block->bb_numrecs = 0; | ||
324 | block->bb_u.s.bb_leftsib = cpu_to_be32(NULLAGBLOCK); | ||
325 | block->bb_u.s.bb_rightsib = cpu_to_be32(NULLAGBLOCK); | ||
326 | error = xfs_bwrite(bp); | 315 | error = xfs_bwrite(bp); |
327 | xfs_buf_relse(bp); | 316 | xfs_buf_relse(bp); |
328 | if (error) | 317 | if (error) |