slavio_misc: avoid structure holes spotted by pahole
Report from pahole on amd64 host: struct MiscState { SysBusDevice busdev; /* 0 5648 */ /* --- cacheline 88 boundary (5632 bytes) was 16 bytes ago --- */ qemu_irq irq; /* 5648 8 */ uint32_t dummy; /* 5656 4 */ uint8_t config; /* 5660 1 */ uint8_t aux1; /* 5661 1 */ uint8_t aux2; /* 5662 1 */ uint8_t diag; /* 5663 1 */ uint8_t mctrl; /* 5664 1 */ uint8_t sysctrl; /* 5665 1 */ uint16_t leds; /* 5666 2 */ /* XXX 4 bytes hole, try to pack */ qemu_irq fdc_tc; /* 5672 8 */ /* size: 5680, cachelines: 89 */ /* sum members: 5676, holes: 1, sum holes: 4 */ /* last cacheline: 48 bytes */ }; /* definitions: 1 */ Fix by rearranging the structure to avoid padding. Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
This commit is contained in:
parent
f90074f493
commit
97bbb109b1
@ -37,13 +37,13 @@
|
||||
typedef struct MiscState {
|
||||
SysBusDevice busdev;
|
||||
qemu_irq irq;
|
||||
qemu_irq fdc_tc;
|
||||
uint32_t dummy;
|
||||
uint8_t config;
|
||||
uint8_t aux1, aux2;
|
||||
uint8_t diag, mctrl;
|
||||
uint8_t sysctrl;
|
||||
uint16_t leds;
|
||||
qemu_irq fdc_tc;
|
||||
} MiscState;
|
||||
|
||||
typedef struct APCState {
|
||||
|
Loading…
Reference in New Issue
Block a user