From: Pierrick Bouvier Date: Mon, 19 Jan 2026 07:57:38 +0000 (-0800) Subject: bsd-user/syscall_defs.h: define STAT_TIME_T_EXT only for 32 bits X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f0de58ccf6566ad5cf04948788f9b0cfb8b960b4;p=thirdparty%2Fqemu.git bsd-user/syscall_defs.h: define STAT_TIME_T_EXT only for 32 bits Commit 369c1ba2b changed the wrong conditional "#if defined(__i386__)" to "#if defined(TARGET_I386)". However, TARGET_I386 is defined for target x86_64 also. This commit fixes it by identifying correctly 32 bits target. Found with: $ ./build/qemu-x86_64 \ -plugin ./build/contrib/plugins/libstoptrigger,icount=1000000 \ -plugin ./build/tests/tcg/plugins/libinsn \ -d plugin \ ./build/qemu-system-x86_64 --version ld-elf.so.1: /lib/libz.so.6: invalid file format cpu 0 insns: 59746 total insns: 59746 Fixes: 369c1ba2b ("Fix __i386__ test for TARGET_HAS_STAT_TIME_T_EXT") Signed-off-by: Pierrick Bouvier Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Warner Losh Reviewed-by: Michael Tokarev Signed-off-by: Michael Tokarev --- diff --git a/bsd-user/syscall_defs.h b/bsd-user/syscall_defs.h index c49be32bdc..cc4b484f3a 100644 --- a/bsd-user/syscall_defs.h +++ b/bsd-user/syscall_defs.h @@ -247,7 +247,7 @@ struct target_freebsd11_stat { unsigned int:(8 / 2) * (16 - (int)sizeof(struct target_freebsd_timespec)); } __packed; -#if defined(TARGET_I386) +#if defined(TARGET_I386) && !defined(TARGET_X86_64) #define TARGET_HAS_STAT_TIME_T_EXT 1 #endif