I've seen some failures on arm and s390x hosts after enabling host vector support. It turns out that the malloc for these hosts does not provide 16-byte alignment.
We already have a function that can alloc with alignment, but we need to pass this down from the structure. We also don't want to use this function unconditionally, because the windows version does page allocation, which would be overkill for the vast majority of the objects allocated. r~ Cc: Paolo Bonzini <[email protected]> Cc: "Daniel P. Berrangé" <[email protected]> Cc: Eduardo Habkost <[email protected]> Cc: Peter Maydell <[email protected]> Cc: David Gibson <[email protected]> Cc: Alistair Francis <[email protected]> Cc: David Hildenbrand <[email protected]> Cc: Cornelia Huck <[email protected]> Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Richard Henderson (5): qom: Allow objects to be allocated with increased alignment target/arm: Set instance_align on CPUARM TypeInfo target/ppc: Set instance_align on PowerPCCPU TypeInfo target/riscv: Set instance_align on RISCVCPU TypeInfo target/s390x: Set instance_align on S390CPU TypeInfo include/qom/object.h | 4 ++++ qom/object.c | 16 +++++++++++++--- target/arm/cpu.c | 2 ++ target/riscv/cpu.c | 1 + target/s390x/cpu.c | 1 + target/ppc/translate_init.c.inc | 1 + 6 files changed, 22 insertions(+), 3 deletions(-) -- 2.25.1
