xfs: move struct xfs_attr_shortform to xfs_da_format.h
Move the shortform attr structure definition to the same place as the other attribute structure definitions for consistency and also so that xfs/122 verifies the structure size. Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> Reviewed-by: Dave Chinner <dchinner@redhat.com> Signed-off-by: Dave Chinner <david@fromorbit.com>
This commit is contained in:
Родитель
18f1df4e00
Коммит
244efeafb6
|
@ -24,22 +24,6 @@
|
|||
* Small attribute lists are packed as tightly as possible so as
|
||||
* to fit into the literal area of the inode.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Entries are packed toward the top as tight as possible.
|
||||
*/
|
||||
typedef struct xfs_attr_shortform {
|
||||
struct xfs_attr_sf_hdr { /* constant-structure header block */
|
||||
__be16 totsize; /* total bytes in shortform list */
|
||||
__u8 count; /* count of active entries */
|
||||
} hdr;
|
||||
struct xfs_attr_sf_entry {
|
||||
__uint8_t namelen; /* actual length of name (no NULL) */
|
||||
__uint8_t valuelen; /* actual length of value (no NULL) */
|
||||
__uint8_t flags; /* flags bits (see xfs_attr_leaf.h) */
|
||||
__uint8_t nameval[1]; /* name & value bytes concatenated */
|
||||
} list[1]; /* variable sized array */
|
||||
} xfs_attr_shortform_t;
|
||||
typedef struct xfs_attr_sf_hdr xfs_attr_sf_hdr_t;
|
||||
typedef struct xfs_attr_sf_entry xfs_attr_sf_entry_t;
|
||||
|
||||
|
|
|
@ -641,6 +641,22 @@ xfs_dir2_block_leaf_p(struct xfs_dir2_block_tail *btp)
|
|||
*/
|
||||
#define XFS_ATTR_LEAF_MAPSIZE 3 /* how many freespace slots */
|
||||
|
||||
/*
|
||||
* Entries are packed toward the top as tight as possible.
|
||||
*/
|
||||
typedef struct xfs_attr_shortform {
|
||||
struct xfs_attr_sf_hdr { /* constant-structure header block */
|
||||
__be16 totsize; /* total bytes in shortform list */
|
||||
__u8 count; /* count of active entries */
|
||||
} hdr;
|
||||
struct xfs_attr_sf_entry {
|
||||
__uint8_t namelen; /* actual length of name (no NULL) */
|
||||
__uint8_t valuelen; /* actual length of value (no NULL) */
|
||||
__uint8_t flags; /* flags bits (see xfs_attr_leaf.h) */
|
||||
__uint8_t nameval[1]; /* name & value bytes concatenated */
|
||||
} list[1]; /* variable sized array */
|
||||
} xfs_attr_shortform_t;
|
||||
|
||||
typedef struct xfs_attr_leaf_map { /* RLE map of free bytes */
|
||||
__be16 base; /* base of free region */
|
||||
__be16 size; /* length of free region */
|
||||
|
|
|
@ -31,6 +31,7 @@
|
|||
#include "xfs_error.h"
|
||||
#include "xfs_trace.h"
|
||||
#include "xfs_attr_sf.h"
|
||||
#include "xfs_da_format.h"
|
||||
|
||||
kmem_zone_t *xfs_ifork_zone;
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче