powerpc pci: fixed packing of ranges[]
By default mingw-gcc is trying to pack structures the way to preserve binary compatibility with MS Visual C what leads to incorrect and unexpected padding in the PCI bus ranges property of the sPAPR PHB. The patch replaces __attribute__((packed)) with more strict QEMU_PACKED which actually is __attribute__((gcc_struct, packed)) on Windows. Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> Tested-by: Stefan Weil <sw@weilnetz.de> Reviewed-by: Stefan Weil <sw@weilnetz.de> Acked-by: Alexander Graf <agraf@suse.de> Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
This commit is contained in:
		
							parent
							
								
									61dc008f35
								
							
						
					
					
						commit
						c4889f5423
					
				| 
						 | 
					@ -418,7 +418,7 @@ int spapr_populate_pci_devices(sPAPRPHBState *phb,
 | 
				
			||||||
        uint64_t child;
 | 
					        uint64_t child;
 | 
				
			||||||
        uint64_t parent;
 | 
					        uint64_t parent;
 | 
				
			||||||
        uint64_t size;
 | 
					        uint64_t size;
 | 
				
			||||||
    } __attribute__((packed)) ranges[] = {
 | 
					    } QEMU_PACKED ranges[] = {
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            cpu_to_be32(b_ss(1)), cpu_to_be64(0),
 | 
					            cpu_to_be32(b_ss(1)), cpu_to_be64(0),
 | 
				
			||||||
            cpu_to_be64(phb->io_win_addr),
 | 
					            cpu_to_be64(phb->io_win_addr),
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue