Details
-
Bug
-
Resolution: Fixed
-
Minor
-
Lustre 2.4.0
-
-7
-
3
-
7456
Description
Before:
struct lod_object { struct dt_object ldo_obj; /* 0 88 */ /* --- cacheline 1 boundary (64 bytes) was 24 bytes ago --- */ __u16 ldo_stripenr; /* 88 2 */ __u16 ldo_layout_gen; /* 90 2 */ __u32 ldo_stripe_size; /* 92 4 */ char * ldo_pool; /* 96 8 */ struct dt_object * * ldo_stripe; /* 104 8 */ int ldo_stripes_allocated; /* 112 4 */ unsigned int ldo_striping_cached:1; /* 116:31 4 */ unsigned int ldo_def_striping_set:1; /* 116:30 4 */ /* XXX 30 bits hole, try to pack */ __u32 ldo_def_stripe_size; /* 120 4 */ __u16 ldo_def_stripenr; /* 124 2 */ __u16 ldo_def_stripe_offset; /* 126 2 */ /* --- cacheline 2 boundary (128 bytes) --- */ mdsno_t ldo_mds_num; /* 128 4 */ /* size: 136, cachelines: 3, members: 13 */ /* bit holes: 1, sum bit holes: 30 bits */ /* padding: 4 */ /* last cacheline: 8 bytes */ };
After:
struct lod_object { struct dt_object ldo_obj; /* 0 88 */ /* --- cacheline 1 boundary (64 bytes) was 24 bytes ago --- */ __u16 ldo_stripenr; /* 88 2 */ __u16 ldo_layout_gen; /* 90 2 */ __u32 ldo_stripe_size; /* 92 4 */ char * ldo_pool; /* 96 8 */ struct dt_object * * ldo_stripe; /* 104 8 */ unsigned int ldo_stripes_allocated:16; /* 112:16 4 */ unsigned int ldo_striping_cached:1; /* 112:15 4 */ unsigned int ldo_def_striping_set:1; /* 112:14 4 */ /* XXX 14 bits hole, try to pack */ __u32 ldo_def_stripe_size; /* 116 4 */ __u16 ldo_def_stripenr; /* 120 2 */ __u16 ldo_def_stripe_offset; /* 122 2 */ mdsno_t ldo_mds_num; /* 124 4 */ /* --- cacheline 2 boundary (128 bytes) --- */ /* size: 128, cachelines: 2, members: 13 */ /* bit holes: 1, sum bit holes: 14 bits */ };
Attachments
Issue Links
- is related to
-
LU-2789 lod_load_striping()) ASSERTION( lo->ldo_stripenr == 0 ) failed
- Closed