]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
[gdb/tdep] Handle sycall statx for arm-linux
authorTom de Vries <tdevries@suse.de>
Wed, 13 Nov 2024 18:37:04 +0000 (19:37 +0100)
committerTom de Vries <tdevries@suse.de>
Wed, 13 Nov 2024 18:37:04 +0000 (19:37 +0100)
When running test-case gdb.reverse/fstatat-reverse.exp on arm-linux, I run
into:
...
(gdb) continue^M
Continuing.^M
Process record and replay target doesn't support syscall number 397^M
Process record does not support instruction 0xdf00 at address 0xf7ebf774.^M
Process record: failed to record execution log.^M
^M
Program stopped.^M
0xf7ebf774 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6^M
(gdb) FAIL: gdb.reverse/fstatat-reverse.exp: continue to breakpoint: marker2
...

Syscall number 397 stands for statx on arm-linux.

Fix this by handling 397 in arm_canonicalize_syscall.

Tested on arm-linux.

Reviewed-By: Guinevere Larsen <guinevere@redhat.com>
Approved-By: Luis Machado <luis.machado@arm.com>
gdb/arm-linux-tdep.c

index c8a9936b5c19ffd098ee75612b48b4c6bf62badb..dddd57741c3481d0e54ef2d920999d937ec21114 100644 (file)
@@ -1645,6 +1645,7 @@ arm_canonicalize_syscall (int syscall)
     case 379: return gdb_sys_finit_module;
       */
     case 384: return gdb_sys_getrandom;
+    case 397: return gdb_sys_statx;
     case 983041: /* ARM_breakpoint */ return gdb_sys_no_syscall;
     case 983042: /* ARM_cacheflush */ return gdb_sys_no_syscall;
     case 983043: /* ARM_usr26 */ return gdb_sys_no_syscall;