gdb: syscalls: Add some tips for LoongArch xml files
Checks
Context |
Check |
Description |
linaro-tcwg-bot/tcwg_gdb_build--master-aarch64 |
success
|
Testing passed
|
linaro-tcwg-bot/tcwg_gdb_build--master-arm |
success
|
Testing passed
|
linaro-tcwg-bot/tcwg_gdb_check--master-arm |
success
|
Testing passed
|
linaro-tcwg-bot/tcwg_gdb_check--master-aarch64 |
success
|
Testing passed
|
Commit Message
In commit a08dc2aa004b (gdb: syscalls: Add loongarch-linux.xml.in),
it needs special handling when generating xml file. This should at
least be mentioned in the file comment rather than git log to help
the next person who regenerates this file understand what needs to
be done, suggested by Pedro Alves, thank you.
At the beginning, I only added the tips in loongarch-linux.xml.in,
after executing the command "make" to generate loongarch-linux.xml
from loongarch-linux.xml.in, it generates the same tips in the file
loongarch-linux.xml automatically, so update loongarch-linux.xml.in
and loongarch-linux.xml together.
Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn>
---
gdb/syscalls/loongarch-linux.xml | 24 +++++++++++++++++++++++-
gdb/syscalls/loongarch-linux.xml.in | 23 ++++++++++++++++++++++-
2 files changed, 45 insertions(+), 2 deletions(-)
Comments
On 2024-03-21 01:55, Tiezhu Yang wrote:
> In commit a08dc2aa004b (gdb: syscalls: Add loongarch-linux.xml.in),
> it needs special handling when generating xml file. This should at
> least be mentioned in the file comment rather than git log to help
> the next person who regenerates this file understand what needs to
> be done, suggested by Pedro Alves, thank you.
>
> At the beginning, I only added the tips in loongarch-linux.xml.in,
> after executing the command "make" to generate loongarch-linux.xml
> from loongarch-linux.xml.in, it generates the same tips in the file
> loongarch-linux.xml automatically, so update loongarch-linux.xml.in
> and loongarch-linux.xml together.
>
> Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn>
Thanks!
Approved-by: Pedro Alves <pedro@palves.net>
On 3/21/24 21:20, Pedro Alves wrote:
> On 2024-03-21 01:55, Tiezhu Yang wrote:
>> In commit a08dc2aa004b (gdb: syscalls: Add loongarch-linux.xml.in),
>> it needs special handling when generating xml file. This should at
>> least be mentioned in the file comment rather than git log to help
>> the next person who regenerates this file understand what needs to
>> be done, suggested by Pedro Alves, thank you.
>>
>> At the beginning, I only added the tips in loongarch-linux.xml.in,
>> after executing the command "make" to generate loongarch-linux.xml
>> from loongarch-linux.xml.in, it generates the same tips in the file
>> loongarch-linux.xml automatically, so update loongarch-linux.xml.in
>> and loongarch-linux.xml together.
>>
>> Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn>
>
> Thanks!
>
> Approved-by: Pedro Alves <pedro@palves.net>
Pushed.
Thanks,
Tiezhu
@@ -9,7 +9,29 @@
<sys/syscall.h>
- The file mentioned above belongs to the Linux Kernel. -->
+ The file mentioned above belongs to the Linux Kernel.
+
+ Note that the system header file /usr/include/asm-generic/unistd.h
+ may be different with the latest upstream Linux kernel uapi header
+ file include/uapi/asm-generic/unistd.h, it is better to copy the
+ upstream header file into the system header file when generating
+ loongarch-linux.xml.in.
+
+ There exist some __NR3264_ prefixed syscall numbers, replace them
+ with digital numbers according to /usr/include/asm-generic/unistd.h
+ and sort them by syscall number manually, maybe we can modify the
+ script to do it automatically in the future.
+
+ <syscall name="fcntl" number="__NR3264_fcntl"/>
+ <syscall name="statfs" number="__NR3264_statfs"/>
+ <syscall name="fstatfs" number="__NR3264_fstatfs"/>
+ <syscall name="truncate" number="__NR3264_truncate"/>
+ <syscall name="ftruncate" number="__NR3264_ftruncate"/>
+ <syscall name="lseek" number="__NR3264_lseek"/>
+ <syscall name="sendfile" number="__NR3264_sendfile"/>
+ <syscall name="mmap" number="__NR3264_mmap"/>
+ <syscall name="fadvise64" number="__NR3264_fadvise64"/>
+-->
<syscalls_info>
<syscall name="io_setup" number="0" groups="memory"/>
<syscall name="io_destroy" number="1" groups="memory"/>
@@ -11,8 +11,29 @@
<sys/syscall.h>
- The file mentioned above belongs to the Linux Kernel. -->
+ The file mentioned above belongs to the Linux Kernel.
+ Note that the system header file /usr/include/asm-generic/unistd.h
+ may be different with the latest upstream Linux kernel uapi header
+ file include/uapi/asm-generic/unistd.h, it is better to copy the
+ upstream header file into the system header file when generating
+ loongarch-linux.xml.in.
+
+ There exist some __NR3264_ prefixed syscall numbers, replace them
+ with digital numbers according to /usr/include/asm-generic/unistd.h
+ and sort them by syscall number manually, maybe we can modify the
+ script to do it automatically in the future.
+
+ <syscall name="fcntl" number="__NR3264_fcntl"/>
+ <syscall name="statfs" number="__NR3264_statfs"/>
+ <syscall name="fstatfs" number="__NR3264_fstatfs"/>
+ <syscall name="truncate" number="__NR3264_truncate"/>
+ <syscall name="ftruncate" number="__NR3264_ftruncate"/>
+ <syscall name="lseek" number="__NR3264_lseek"/>
+ <syscall name="sendfile" number="__NR3264_sendfile"/>
+ <syscall name="mmap" number="__NR3264_mmap"/>
+ <syscall name="fadvise64" number="__NR3264_fadvise64"/>
+-->
<syscalls_info>
<syscall name="io_setup" number="0"/>