xfs: add an entries pointer to struct xfs_dir3_icleaf_hdr
All callers of the ->node_tree_p dir operation already have a struct xfs_dir3_icleaf_hdr from a previous call to xfs_da_leaf_hdr_from_disk at hand, or just need slight changes to the calling conventions to do so. Add a pointer to the entries to struct xfs_dir3_icleaf_hdr to clean up this pattern. To make this possible the xfs_dir3_leaf_log_ents function grow a new argument to pass the xfs_dir3_icleaf_hdr that call callers already have, and xfs_dir2_leaf_lookup_int returns the xfs_dir3_icleaf_hdr to the callers so that they can later use it. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com> Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
This commit is contained in:

committed by
Darrick J. Wong

parent
163fbbb356
commit
787b0893ad
@@ -18,6 +18,12 @@ struct xfs_dir3_icleaf_hdr {
|
||||
uint16_t magic;
|
||||
uint16_t count;
|
||||
uint16_t stale;
|
||||
|
||||
/*
|
||||
* Pointer to the on-disk format entries, which are behind the
|
||||
* variable size (v4 vs v5) header in the on-disk block.
|
||||
*/
|
||||
struct xfs_dir2_leaf_entry *ents;
|
||||
};
|
||||
|
||||
struct xfs_dir3_icfree_hdr {
|
||||
@@ -85,7 +91,8 @@ extern void xfs_dir3_leaf_compact_x1(struct xfs_dir3_icleaf_hdr *leafhdr,
|
||||
extern int xfs_dir3_leaf_get_buf(struct xfs_da_args *args, xfs_dir2_db_t bno,
|
||||
struct xfs_buf **bpp, uint16_t magic);
|
||||
extern void xfs_dir3_leaf_log_ents(struct xfs_da_args *args,
|
||||
struct xfs_buf *bp, int first, int last);
|
||||
struct xfs_dir3_icleaf_hdr *hdr, struct xfs_buf *bp, int first,
|
||||
int last);
|
||||
extern void xfs_dir3_leaf_log_header(struct xfs_da_args *args,
|
||||
struct xfs_buf *bp);
|
||||
extern int xfs_dir2_leaf_lookup(struct xfs_da_args *args);
|
||||
|
Reference in New Issue
Block a user