[XFS] kill struct xfs_btree_hdr
This type is only embedded in struct xfs_btree_block and never used directly. By moving the fields directly into struct xfs_btree_block a lot of the macros for struct xfs_btree_sblock and struct xfs_btree_lblock can be used for struct xfs_btree_block too now which helps greatly with some of the migrations during implementing the generic btree code. SGI-PV: 985583 SGI-Modid: xfs-linux-melb:xfs-kern:32174a Signed-off-by: Christoph Hellwig <hch@infradead.org> Signed-off-by: Lachlan McIlroy <lachlan@sgi.com> Signed-off-by: Bill O'Donnell <billodo@sgi.com> Signed-off-by: David Chinner <david@fromorbit.com>
This commit is contained in:
parent
f338f90364
commit
f2277f06e6
@ -62,13 +62,13 @@ xfs_btree_maxrecs(
|
|||||||
case XFS_BTNUM_BNO:
|
case XFS_BTNUM_BNO:
|
||||||
case XFS_BTNUM_CNT:
|
case XFS_BTNUM_CNT:
|
||||||
return (int)XFS_ALLOC_BLOCK_MAXRECS(
|
return (int)XFS_ALLOC_BLOCK_MAXRECS(
|
||||||
be16_to_cpu(block->bb_h.bb_level), cur);
|
be16_to_cpu(block->bb_level), cur);
|
||||||
case XFS_BTNUM_BMAP:
|
case XFS_BTNUM_BMAP:
|
||||||
return (int)XFS_BMAP_BLOCK_IMAXRECS(
|
return (int)XFS_BMAP_BLOCK_IMAXRECS(
|
||||||
be16_to_cpu(block->bb_h.bb_level), cur);
|
be16_to_cpu(block->bb_level), cur);
|
||||||
case XFS_BTNUM_INO:
|
case XFS_BTNUM_INO:
|
||||||
return (int)XFS_INOBT_BLOCK_MAXRECS(
|
return (int)XFS_INOBT_BLOCK_MAXRECS(
|
||||||
be16_to_cpu(block->bb_h.bb_level), cur);
|
be16_to_cpu(block->bb_level), cur);
|
||||||
default:
|
default:
|
||||||
ASSERT(0);
|
ASSERT(0);
|
||||||
return 0;
|
return 0;
|
||||||
@ -634,7 +634,7 @@ xfs_btree_firstrec(
|
|||||||
/*
|
/*
|
||||||
* It's empty, there is no such record.
|
* It's empty, there is no such record.
|
||||||
*/
|
*/
|
||||||
if (!block->bb_h.bb_numrecs)
|
if (!block->bb_numrecs)
|
||||||
return 0;
|
return 0;
|
||||||
/*
|
/*
|
||||||
* Set the ptr value to 1, that's the first record/key.
|
* Set the ptr value to 1, that's the first record/key.
|
||||||
@ -663,12 +663,12 @@ xfs_btree_lastrec(
|
|||||||
/*
|
/*
|
||||||
* It's empty, there is no such record.
|
* It's empty, there is no such record.
|
||||||
*/
|
*/
|
||||||
if (!block->bb_h.bb_numrecs)
|
if (!block->bb_numrecs)
|
||||||
return 0;
|
return 0;
|
||||||
/*
|
/*
|
||||||
* Set the ptr value to numrecs, that's the last record/key.
|
* Set the ptr value to numrecs, that's the last record/key.
|
||||||
*/
|
*/
|
||||||
cur->bc_ptrs[level] = be16_to_cpu(block->bb_h.bb_numrecs);
|
cur->bc_ptrs[level] = be16_to_cpu(block->bb_numrecs);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -63,15 +63,10 @@ typedef struct xfs_btree_lblock {
|
|||||||
/*
|
/*
|
||||||
* Combined header and structure, used by common code.
|
* Combined header and structure, used by common code.
|
||||||
*/
|
*/
|
||||||
typedef struct xfs_btree_hdr
|
typedef struct xfs_btree_block {
|
||||||
{
|
|
||||||
__be32 bb_magic; /* magic number for block type */
|
__be32 bb_magic; /* magic number for block type */
|
||||||
__be16 bb_level; /* 0 is a leaf */
|
__be16 bb_level; /* 0 is a leaf */
|
||||||
__be16 bb_numrecs; /* current # of data records */
|
__be16 bb_numrecs; /* current # of data records */
|
||||||
} xfs_btree_hdr_t;
|
|
||||||
|
|
||||||
typedef struct xfs_btree_block {
|
|
||||||
xfs_btree_hdr_t bb_h; /* header */
|
|
||||||
union {
|
union {
|
||||||
struct {
|
struct {
|
||||||
__be32 bb_leftsib;
|
__be32 bb_leftsib;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user