From 72aded8673d6cb2d0e33696e010a778e9bbfa817 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcin=20Ko=C5=9Bcielnicki?= Date: Fri, 30 Oct 2015 15:51:58 +0000 Subject: gdb/linux-record: Fix readdir and getdents handling getdents buffer size is given in bytes, not dirent entries (which have variable size anyway). We don't need size_dirent and size_dirent64 for this reason. readdir, on the other hand, needs size of old_linux_dirent, which is a somewhat different structure. Accordingly, rename size_dirent to size_old_dirent. gdb/ChangeLog: * aarch64-linux-tdep.c (aarch64_linux_init_abi): Remove size_dirent{,64}, add size_old_dirent. * amd64-linux-tdep.c (amd64_linux_init_abi): Remove size_dirent{,64}, add size_old_dirent. (amd64_x32_linux_init_abi): Remove size_dirent{,64}, add size_old_dirent. * arm-linux-tdep.c (arm_linux_init_abi): Remove size_dirent{,64}, add size_old_dirent. * i386-linux-tdep.c (i386_linux_init_abi): Remove size_dirent{,64}, add size_old_dirent. * linux-record.c (record_linux_system_call): Fix handling of readdir and getdents{,64}. * linux-record.h (struct linux_record_tdep): Remove size_dirent{,64}, add size_old_dirent. * ppc-linux-tdep.c (ppc_init_linux_record_tdep): Remove size_dirent{,64}, add size_old_dirent. --- gdb/ChangeLog | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'gdb/ChangeLog') diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 87a462e..296e861 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,24 @@ 2015-10-30 Marcin Koƛcielnicki + * aarch64-linux-tdep.c (aarch64_linux_init_abi): Remove + size_dirent{,64}, add size_old_dirent. + * amd64-linux-tdep.c (amd64_linux_init_abi): Remove size_dirent{,64}, + add size_old_dirent. + (amd64_x32_linux_init_abi): Remove size_dirent{,64}, add + size_old_dirent. + * arm-linux-tdep.c (arm_linux_init_abi): Remove size_dirent{,64}, + add size_old_dirent. + * i386-linux-tdep.c (i386_linux_init_abi): Remove size_dirent{,64}, + add size_old_dirent. + * linux-record.c (record_linux_system_call): Fix handling of readdir + and getdents{,64}. + * linux-record.h (struct linux_record_tdep): Remove size_dirent{,64}, + add size_old_dirent. + * ppc-linux-tdep.c (ppc_init_linux_record_tdep): Remove + size_dirent{,64}, add size_old_dirent. + +2015-10-30 Marcin Koƛcielnicki + * 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, -- cgit v1.1