Il 04/04/2013 16:18, Peter Maydell ha scritto: >>> 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. >> > >> > I had seen this, but it is only used with bsearch and safe > Ah yes, you're right. Sorry.
Regarding the others, none of them are in target-generic places, and none of them affect m68k (ARM only uses non-standard alignment for llong): - linux-user/mips64/syscall.h is correct with target_ulong, and in general MIPS is best left as it is (it often uses uint32_t/uint64_t or target_long/ulong explicitly so that n32 is handled correctly). - linux-user/openrisc/syscall.h could use abi_ulong instead of target_ulong, and abi_uint instead of uint32_t, but it doesn't change anything so it is more of a cleanup - linux-user/syscall_defs.h's use of target_ulong for st_ino would be a bug, but on these architectures target_ulong==abi_ulong. In general the whole struct should be using abi_* types, but again it is more of a cleanup. So the patch is okay as is, I think. Paolo