From 7571f7f297c8d8b4fb4657f84437b1d156957e16 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcin=20Ko=C5=9Bcielnicki?= Date: Fri, 30 Oct 2015 15:51:57 +0000 Subject: gdb/linux-record: Fix sizes of sigaction and sigset_t The values were mistakenly set to size of glibc's sigset_t (128 bytes) and sigaction (140 or 152 bytes) instead of the kernel ones. The kernel has 4 or 8 byte old_sigset_t, 8 byte sigset_t, 16 or 32 byte old_sigaction, 20 or 32 byte sigaction. gdb/ChangeLog: * aarch64-linux-tdep.c (aarch64_linux_init_abi): Fix size_sigaction, size_sigset_t, size_old_sigaction, size_old_sigset_t. * amd64-linux-tdep.c (amd64_linux_init_abi): Fix size_sigaction, size_sigset_t, size_old_sigaction, size_old_sigset_t. (amd64_x32_linux_init_abi): Fix size_sigaction, size_sigset_t, size_old_sigaction, size_old_sigset_t. * arm-linux-tdep.c (arm_linux_init_abi): Fix size_sigaction, size_old_sigaction, size_old_sigset_t. * i386-linux-tdep.c (i386_linux_init_abi): Fix size_sigaction, size_old_sigaction, size_old_sigset_t. * ppc-linux-tdep.c (ppc_init_linux_record_tdep): Fix size_sigaction, size_sigset_t, size_old_sigaction, size_old_sigset_t. --- gdb/aarch64-linux-tdep.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'gdb/aarch64-linux-tdep.c') diff --git a/gdb/aarch64-linux-tdep.c b/gdb/aarch64-linux-tdep.c index 4169200..57cb973 100644 --- a/gdb/aarch64-linux-tdep.c +++ b/gdb/aarch64-linux-tdep.c @@ -1000,8 +1000,8 @@ aarch64_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) aarch64_linux_record_tdep.size_flock = 32; aarch64_linux_record_tdep.size_oldold_utsname = 45; aarch64_linux_record_tdep.size_ustat = 32; - aarch64_linux_record_tdep.size_old_sigaction = 152; - aarch64_linux_record_tdep.size_old_sigset_t = 128; + aarch64_linux_record_tdep.size_old_sigaction = 32; + aarch64_linux_record_tdep.size_old_sigset_t = 8; aarch64_linux_record_tdep.size_rlimit = 16; aarch64_linux_record_tdep.size_rusage = 144; aarch64_linux_record_tdep.size_timeval = 16; @@ -1037,8 +1037,8 @@ aarch64_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) aarch64_linux_record_tdep.size_NFS_FHSIZE = 32; aarch64_linux_record_tdep.size_knfsd_fh = 132; aarch64_linux_record_tdep.size_TASK_COMM_LEN = 16; - aarch64_linux_record_tdep.size_sigaction = 152; - aarch64_linux_record_tdep.size_sigset_t = 128; + aarch64_linux_record_tdep.size_sigaction = 32; + aarch64_linux_record_tdep.size_sigset_t = 8; aarch64_linux_record_tdep.size_siginfo_t = 128; aarch64_linux_record_tdep.size_cap_user_data_t = 8; aarch64_linux_record_tdep.size_stack_t = 24; -- cgit v1.1