• B
    sun4m_iommu: avoid structure holes spotted by pahole · 149e1ea1
    Blue Swirl 提交于
    Report from pahole on amd64 host:
    struct IOMMUState {
    	SysBusDevice               busdev;               /*     0  5648 */
    	/* --- cacheline 88 boundary (5632 bytes) was 16 bytes ago --- */
    	uint32_t                   regs[4096];           /*  5648 16384 */
    	/* --- cacheline 344 boundary (22016 bytes) was 16 bytes ago --- */
    	target_phys_addr_t         iostart;              /* 22032     8 */
    	uint32_t                   version;              /* 22040     4 */
    
    	/* XXX 4 bytes hole, try to pack */
    
    	qemu_irq                   irq;                  /* 22048     8 */
    
    	/* size: 22056, cachelines: 345 */
    	/* sum members: 22052, holes: 1, sum holes: 4 */
    	/* last cacheline: 40 bytes */
    };	/* definitions: 1 */
    
    Fix by rearranging the structure to avoid padding.
    Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
    149e1ea1
sun4m_iommu.c 12.8 KB