408091 Missing pkey syscalls
408414 Add support for missing for preadv2 and pwritev2 syscalls
404406 s390x: z14 miscellaneous instructions not implemented
+405201 Incorrect size of struct vki_siginfo on 64-bit Linux architectures
409141 Valgrind hangs when SIGKILLed
409367 exit_group() after signal to thread waiting in futex() causes hangs
410599 Non-deterministic behaviour of pth_self_kill_15_other test
#define VKI_RLIMIT_CORE 4 /* max core file size */
#define VKI_RLIMIT_NOFILE 7 /* max number of open files */
+//----------------------------------------------------------------------
+// From linux-5.0.0/arch/x86/include/uapi/asm/siginfo.h
+//----------------------------------------------------------------------
+
+/* We need that to ensure that sizeof(siginfo) == 128. */
+#ifdef __x86_64__
+# ifdef __ILP32__
+typedef long long __vki_kernel_si_clock_t __attribute__((aligned(4)));
+# define __VKI_ARCH_SI_CLOCK_T __vki_kernel_si_clock_t
+# define __VKI_ARCH_SI_ATTRIBUTES __attribute__((aligned(8)))
+# else
+# define __VKI_ARCH_SI_PREAMBLE_SIZE (4 * sizeof(int))
+# endif
+#endif
+
//----------------------------------------------------------------------
// From linux-2.6.9/include/asm-x86_64/socket.h
//----------------------------------------------------------------------
__vki_u8 __reserved[4096] __attribute__((__aligned__(16)));
};
+//----------------------------------------------------------------------
+// From linux-5.0.0/arch/arm64/include/uapi/asm/siginfo.h
+//----------------------------------------------------------------------
+
+#define __VKI_ARCH_SI_PREAMBLE_SIZE (4 * sizeof(int))
+
//----------------------------------------------------------------------
// From linux-3.10.5/uapi/include/asm-generic/mman-common.h
//----------------------------------------------------------------------
#define __VKI_ARCH_SI_BAND_T long
#endif
+#ifndef __VKI_ARCH_SI_CLOCK_T
+#define __VKI_ARCH_SI_CLOCK_T vki_clock_t
+#endif
+
+#ifndef __VKI_ARCH_SI_ATTRIBUTES
+#define __VKI_ARCH_SI_ATTRIBUTES
+#endif
+
// [[Nb: this type changed between 2.4 and 2.6, but not in a way that
// affects Valgrind.]]
typedef struct vki_siginfo {
vki_pid_t _pid; /* which child */
__VKI_ARCH_SI_UID_T _uid; /* sender's uid */
int _status; /* exit code */
- vki_clock_t _utime;
- vki_clock_t _stime;
+ __VKI_ARCH_SI_CLOCK_T _utime;
+ __VKI_ARCH_SI_CLOCK_T _stime;
} _sigchld;
/* SIGILL, SIGFPE, SIGSEGV, SIGBUS */
int _fd;
} _sigpoll;
} _sifields;
-} vki_siginfo_t;
+} __VKI_ARCH_SI_ATTRIBUTES vki_siginfo_t;
#endif
#define __VKI_SI_FAULT 0
long vmx_reserve[VKI_ELF_NVRREG+VKI_ELF_NVRREG+1];
};
+//----------------------------------------------------------------------
+// From linux-5.0.0/arch/powerpc/include/uapi/asm/siginfo.h
+//----------------------------------------------------------------------
+
+#ifdef __powerpc64__
+# define __VKI_ARCH_SI_PREAMBLE_SIZE (4 * sizeof(int))
+#endif
+
//----------------------------------------------------------------------
// From linux-2.6.13/include/asm-ppc64/mman.h
//----------------------------------------------------------------------