[2/2,gdb/tdep] Fix mmap syscall mapping
Checks
| Context |
Check |
Description |
| linaro-tcwg-bot/tcwg_gdb_build--master-aarch64 |
success
|
Build passed
|
| linaro-tcwg-bot/tcwg_gdb_build--master-arm |
success
|
Build passed
|
| linaro-tcwg-bot/tcwg_gdb_check--master-aarch64 |
success
|
Test passed
|
| linaro-tcwg-bot/tcwg_gdb_check--master-arm |
success
|
Test passed
|
Commit Message
There are a few spots where an mmap system call is mapped onto enum
gdb_syscall value gdb_sys_mmap2.
Strictly speaking, this is incorrect.
Fix this by mapping to enum gdb_syscall value gdb_old_mmap instead.
No functional changes: both gdb_old_mmap and gdb_sys_mmap2 are handled the
same in record_linux_system_call.
Tested by rebuilding on x86_64-linux.
---
gdb/aarch64-linux-tdep.c | 2 +-
gdb/amd64-linux-tdep.c | 2 +-
gdb/loongarch-linux-tdep.c | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
Comments
On 3/12/25 15:06, Tom de Vries wrote:
> There are a few spots where an mmap system call is mapped onto enum
> gdb_syscall value gdb_sys_mmap2.
>
> Strictly speaking, this is incorrect.
>
> Fix this by mapping to enum gdb_syscall value gdb_old_mmap instead.
>
> No functional changes: both gdb_old_mmap and gdb_sys_mmap2 are handled the
> same in record_linux_system_call.
>
I've pushed this patch, given that it's trivial enough.
Thanks,
- Tom
> Tested by rebuilding on x86_64-linux.
> ---
> gdb/aarch64-linux-tdep.c | 2 +-
> gdb/amd64-linux-tdep.c | 2 +-
> gdb/loongarch-linux-tdep.c | 2 +-
> 3 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/gdb/aarch64-linux-tdep.c b/gdb/aarch64-linux-tdep.c
> index eeb541c66db..b59369399e7 100644
> --- a/gdb/aarch64-linux-tdep.c
> +++ b/gdb/aarch64-linux-tdep.c
> @@ -2275,7 +2275,7 @@ aarch64_canonicalize_syscall (enum aarch64_syscall syscall_number)
> SYSCALL_MAP (clone);
> SYSCALL_MAP (execve);
>
> - SYSCALL_MAP_RENAME (mmap, gdb_sys_mmap2);
> + SYSCALL_MAP_RENAME (mmap, gdb_old_mmap);
>
> SYSCALL_MAP (fadvise64);
> SYSCALL_MAP (swapon);
> diff --git a/gdb/amd64-linux-tdep.c b/gdb/amd64-linux-tdep.c
> index 2c76a1de5a8..7acb711b8f1 100644
> --- a/gdb/amd64-linux-tdep.c
> +++ b/gdb/amd64-linux-tdep.c
> @@ -412,7 +412,7 @@ amd64_canonicalize_syscall (enum amd64_syscall syscall_number)
>
> case amd64_sys_mmap:
> case amd64_x32_sys_mmap:
> - return gdb_sys_mmap2;
> + return gdb_old_mmap;
>
> case amd64_sys_mprotect:
> case amd64_x32_sys_mprotect:
> diff --git a/gdb/loongarch-linux-tdep.c b/gdb/loongarch-linux-tdep.c
> index 633e152b182..471e4beb506 100644
> --- a/gdb/loongarch-linux-tdep.c
> +++ b/gdb/loongarch-linux-tdep.c
> @@ -812,7 +812,7 @@ loongarch_canonicalize_syscall (enum loongarch_syscall syscall_number)
> SYSCALL_MAP (clone);
> SYSCALL_MAP (execve);
>
> - SYSCALL_MAP_RENAME (mmap, gdb_sys_mmap2);
> + SYSCALL_MAP_RENAME (mmap, gdb_old_mmap);
>
> SYSCALL_MAP (fadvise64);
> SYSCALL_MAP (swapon);
@@ -2275,7 +2275,7 @@ aarch64_canonicalize_syscall (enum aarch64_syscall syscall_number)
SYSCALL_MAP (clone);
SYSCALL_MAP (execve);
- SYSCALL_MAP_RENAME (mmap, gdb_sys_mmap2);
+ SYSCALL_MAP_RENAME (mmap, gdb_old_mmap);
SYSCALL_MAP (fadvise64);
SYSCALL_MAP (swapon);
@@ -412,7 +412,7 @@ amd64_canonicalize_syscall (enum amd64_syscall syscall_number)
case amd64_sys_mmap:
case amd64_x32_sys_mmap:
- return gdb_sys_mmap2;
+ return gdb_old_mmap;
case amd64_sys_mprotect:
case amd64_x32_sys_mprotect:
@@ -812,7 +812,7 @@ loongarch_canonicalize_syscall (enum loongarch_syscall syscall_number)
SYSCALL_MAP (clone);
SYSCALL_MAP (execve);
- SYSCALL_MAP_RENAME (mmap, gdb_sys_mmap2);
+ SYSCALL_MAP_RENAME (mmap, gdb_old_mmap);
SYSCALL_MAP (fadvise64);
SYSCALL_MAP (swapon);