« Previous | Next » 

Revision 61999750

ID61999750d3df96ee3f2b111420c7d0a117e57df7

Added by Blue Swirl over 12 years ago

sun4m: avoid structure holes spotted by pahole

Edited report from pahole on amd64 host:
struct sun4c_hwdef {
...
uint8_t nvram_machine_id; /* 112 1 */

/* XXX 1 byte hole, try to pack /
...
/
size: 136, cachelines: 3 /
/
sum members: 135, holes: 1, sum holes: 1 /
/
last cacheline: 8 bytes /
}; /
definitions: 1 */

struct sun4d_hwdef {
...
uint8_t nvram_machine_id; /* 128 1 */

/* XXX 1 byte hole, try to pack /
...
/
size: 152, cachelines: 3 /
/
sum members: 151, holes: 1, sum holes: 1 /
/
last cacheline: 24 bytes /
}; /
definitions: 1 */

struct sun4m_hwdef {
...
uint8_t nvram_machine_id; /* 260 1 */

/* XXX 1 byte hole, try to pack */
uint16_t                   machine_id;           /*   262     2 /
uint32_t iommu_version; /
264 4 */
/* XXX 4 bytes hole, try to pack /
...
/
size: 288, cachelines: 5 /
/
sum members: 283, holes: 2, sum holes: 5 /
/
last cacheline: 32 bytes /
}; /
definitions: 1 */

Fix by rearranging the structures to avoid padding.

Signed-off-by: Blue Swirl <>

Files

  • added
  • modified
  • copied
  • renamed
  • deleted

View differences