On 3 April 2013 11:32, Paolo Bonzini <pbonz...@redhat.com> wrote: > Previously, this was done for target_long/ulong, and propagated to > abi_long/ulong via a typedef. But target_long/ulong should not > have any specific alignment, it is never used to access guest > memory.
Agreed in principle, but you seem to have missed some structs which use target_ulong currently and which presumably should use abi_ulong instead, eg all the target_ucontext etc structs in linux-user/signal.c Also linux-user/elfload.c:symfind() is casting a pointer to target_ulong* and dereferencing it, and that might now cause an alignment fault on some host CPUs if the host CPU alignment requirements are stricter than the guest's. thanks -- PMM