« Previous | Next » 

Revision 42c812b9

ID42c812b98bbdb1d9e12b111f779a4cc6d987727d

Added by Blue Swirl over 12 years ago

m48t59: avoid structure holes spotted by pahole

Report from pahole on amd64 host:
struct M48t59State {
uint32_t type; /* 0 4 */

/* XXX 4 bytes hole, try to pack */
qemu_irq                   IRQ;                  /*     8     8 /
uint32_t io_base; /
16 4 /
uint32_t size; /
20 4 /
time_t time_offset; /
24 8 /
time_t stop_time; /
32 8 /
struct tm alarm; /
40 56 /
/
--- cacheline 1 boundary (64 bytes) was 32 bytes ago --- /
struct QEMUTimer * alrm_timer; /
96 8 /
struct QEMUTimer * wd_timer; /
104 8 /
uint8_t lock; /
112 1 */
/* XXX 1 byte hole, try to pack */
uint16_t                   addr;                 /*   114     2 */
/* XXX 4 bytes hole, try to pack */
uint8_t *                  buffer;               /*   120     8 /
/
--- cacheline 2 boundary (128 bytes) --- */
/* size: 128, cachelines: 2 /
/
sum members: 119, holes: 3, sum holes: 9 /
}; /
definitions: 1 */

Fix by rearranging the structure to avoid padding.

Signed-off-by: Blue Swirl <>

Files

  • added
  • modified
  • copied
  • renamed
  • deleted

View differences