binutils-gdb/gdb/syscalls/amd64-linux.xml.in

315 lines
13 KiB
XML
Raw Normal View History

Implement catch syscall group Implement support to add catchpoints for a group of related syscalls using the syntax: (gdb) catch syscall group:<group> or (gdb) catch syscall g:<group> Several groups are predefined in the xml files for all architectures supported by GDB over Linux. They are based on the groups defined by strace. gdb/ * xml-syscall.c (get_syscalls_by_group): New. (get_syscall_group_names): New. (struct syscall_group_desc): New structure to store group data. (struct syscalls_info): Include field to store the group list. (sysinfo_free_syscall_group_desc): New. (free_syscalls_info): Free group list. (syscall_group_create_syscall_group_desc): New. (syscall_group_add_syscall): New. (syscall_create_syscall_desc): Add syscall to its groups. (syscall_start_syscall): Load group attribute. (syscall_group_get_group_by_name): New. (xml_list_syscalls_by_group): New. (xml_list_of_groups): New. * xml-syscall.h (get_syscalls_by_group): Export function to retrieve a list of syscalls filtered by the group name. (get_syscall_group_names): Export function to retrieve the list of syscall groups. * break-catch-syscall.c (catch_syscall_split_args): Verify if argument is a syscall group and expand it to a list of syscalls when creating catchpoints. (catch_syscall_completer): Add word completion for system call groups. * configure.ac: Include dependency for xsltproc when building in maintainer-mode. * break-catch-syscall.c (_initialize_breakpoint): Update catch syscall command documentation. * NEWS: Include section about catching groups of syscalls. * configure: Regenerate. * data-directory/Makefile.in: Generate syscall xml when building in maintainer mode. * syscalls/gdb-syscalls.dtd: Include group attribute to the syscall element. * syscalls/apply-defaults.xsl: New. * syscalls/linux-defaults.xml.in: New. * syscalls/aarch64-linux.xml: Rename to aarch64-linux.xml.in. * syscalls/amd64-linux.xml: Rename to amd64-linux.xml.in. * syscalls/arm-linux.xml: Rename to arm-linux.xml.in. * syscalls/bfin-linux.xml: Rename to bfin-linux.xml.in. * syscalls/i386-linux.xml: Rename to i386-linux.xml.in. * syscalls/mips-n32-linux.xml: Rename to mips-n32-linux.xml.in. * syscalls/mips-n64-linux.xml: Rename to mips-n64-linux.xml.in. * syscalls/mips-o32-linux.xml: Rename to mips-o32-linux.xml.in. * syscalls/ppc-linux.xml: Rename to ppc-linux.xml.in. * syscalls/ppc64-linux.xml: Rename to ppc64-linux.xml.in. * syscalls/s390-linux.xml: Rename to s390-linux.xml.in. * syscalls/s390x-linux.xml: Rename to s390x-linux.xml.in. * syscalls/sparc-linux.xml: Rename to sparc-linux.xml.in. * syscalls/sparc64-linux.xml: Rename to sparc64-linux.xml.in. * syscalls/aarch64-linux.xml: Regenerate. * syscalls/amd64-linux.xml: Regenerate. * syscalls/arm-linux.xml: Regenerate. * syscalls/i386-linux.xml: Regenerate. * syscalls/mips-n32-linux.xml: Regenerate. * syscalls/mips-n64-linux.xml: Regenerate. * syscalls/mips-o32-linux.xml: Regenerate. * syscalls/ppc-linux.xml: Regenerate. * syscalls/ppc64-linux.xml: Regenerate. * syscalls/s390-linux.xml: Regenerate. * syscalls/s390x-linux.xml: Regenerate. * syscalls/sparc-linux.xml: Regenerate. * syscalls/sparc64-linux.xml: Regenerate. gdb/testsuite/ * gdb.base/catch-syscall.exp (do_syscall_tests): Add call to test_catch_syscall_group. (test_catch_syscall_group): New. gdb/doc/ * gdb.texinfo (Set Catchpoints): Add 'group' argument to catch syscall.
2016-07-24 05:38:24 +08:00
<?xml version="1.0"?>
<!-- Copyright (C) 2009-2017 Free Software Foundation, Inc.
Implement catch syscall group Implement support to add catchpoints for a group of related syscalls using the syntax: (gdb) catch syscall group:<group> or (gdb) catch syscall g:<group> Several groups are predefined in the xml files for all architectures supported by GDB over Linux. They are based on the groups defined by strace. gdb/ * xml-syscall.c (get_syscalls_by_group): New. (get_syscall_group_names): New. (struct syscall_group_desc): New structure to store group data. (struct syscalls_info): Include field to store the group list. (sysinfo_free_syscall_group_desc): New. (free_syscalls_info): Free group list. (syscall_group_create_syscall_group_desc): New. (syscall_group_add_syscall): New. (syscall_create_syscall_desc): Add syscall to its groups. (syscall_start_syscall): Load group attribute. (syscall_group_get_group_by_name): New. (xml_list_syscalls_by_group): New. (xml_list_of_groups): New. * xml-syscall.h (get_syscalls_by_group): Export function to retrieve a list of syscalls filtered by the group name. (get_syscall_group_names): Export function to retrieve the list of syscall groups. * break-catch-syscall.c (catch_syscall_split_args): Verify if argument is a syscall group and expand it to a list of syscalls when creating catchpoints. (catch_syscall_completer): Add word completion for system call groups. * configure.ac: Include dependency for xsltproc when building in maintainer-mode. * break-catch-syscall.c (_initialize_breakpoint): Update catch syscall command documentation. * NEWS: Include section about catching groups of syscalls. * configure: Regenerate. * data-directory/Makefile.in: Generate syscall xml when building in maintainer mode. * syscalls/gdb-syscalls.dtd: Include group attribute to the syscall element. * syscalls/apply-defaults.xsl: New. * syscalls/linux-defaults.xml.in: New. * syscalls/aarch64-linux.xml: Rename to aarch64-linux.xml.in. * syscalls/amd64-linux.xml: Rename to amd64-linux.xml.in. * syscalls/arm-linux.xml: Rename to arm-linux.xml.in. * syscalls/bfin-linux.xml: Rename to bfin-linux.xml.in. * syscalls/i386-linux.xml: Rename to i386-linux.xml.in. * syscalls/mips-n32-linux.xml: Rename to mips-n32-linux.xml.in. * syscalls/mips-n64-linux.xml: Rename to mips-n64-linux.xml.in. * syscalls/mips-o32-linux.xml: Rename to mips-o32-linux.xml.in. * syscalls/ppc-linux.xml: Rename to ppc-linux.xml.in. * syscalls/ppc64-linux.xml: Rename to ppc64-linux.xml.in. * syscalls/s390-linux.xml: Rename to s390-linux.xml.in. * syscalls/s390x-linux.xml: Rename to s390x-linux.xml.in. * syscalls/sparc-linux.xml: Rename to sparc-linux.xml.in. * syscalls/sparc64-linux.xml: Rename to sparc64-linux.xml.in. * syscalls/aarch64-linux.xml: Regenerate. * syscalls/amd64-linux.xml: Regenerate. * syscalls/arm-linux.xml: Regenerate. * syscalls/i386-linux.xml: Regenerate. * syscalls/mips-n32-linux.xml: Regenerate. * syscalls/mips-n64-linux.xml: Regenerate. * syscalls/mips-o32-linux.xml: Regenerate. * syscalls/ppc-linux.xml: Regenerate. * syscalls/ppc64-linux.xml: Regenerate. * syscalls/s390-linux.xml: Regenerate. * syscalls/s390x-linux.xml: Regenerate. * syscalls/sparc-linux.xml: Regenerate. * syscalls/sparc64-linux.xml: Regenerate. gdb/testsuite/ * gdb.base/catch-syscall.exp (do_syscall_tests): Add call to test_catch_syscall_group. (test_catch_syscall_group): New. gdb/doc/ * gdb.texinfo (Set Catchpoints): Add 'group' argument to catch syscall.
2016-07-24 05:38:24 +08:00
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved. -->
<!DOCTYPE feature SYSTEM "gdb-syscalls.dtd">
<!-- This file was generated using the following file:
/usr/src/linux/arch/x86/include/asm/unistd_64.h
The file mentioned above belongs to the Linux Kernel. -->
<syscalls_info>
<syscall name="read" number="0"/>
<syscall name="write" number="1"/>
<syscall name="open" number="2"/>
<syscall name="close" number="3"/>
<syscall name="stat" number="4"/>
<syscall name="fstat" number="5"/>
<syscall name="lstat" number="6"/>
<syscall name="poll" number="7"/>
<syscall name="lseek" number="8"/>
<syscall name="mmap" number="9"/>
<syscall name="mprotect" number="10"/>
<syscall name="munmap" number="11"/>
<syscall name="brk" number="12"/>
<syscall name="rt_sigaction" number="13"/>
<syscall name="rt_sigprocmask" number="14"/>
<syscall name="rt_sigreturn" number="15"/>
<syscall name="ioctl" number="16"/>
<syscall name="pread64" number="17"/>
<syscall name="pwrite64" number="18"/>
<syscall name="readv" number="19"/>
<syscall name="writev" number="20"/>
<syscall name="access" number="21"/>
<syscall name="pipe" number="22"/>
<syscall name="select" number="23"/>
<syscall name="sched_yield" number="24"/>
<syscall name="mremap" number="25"/>
<syscall name="msync" number="26"/>
<syscall name="mincore" number="27"/>
<syscall name="madvise" number="28"/>
<syscall name="shmget" number="29"/>
<syscall name="shmat" number="30"/>
<syscall name="shmctl" number="31"/>
<syscall name="dup" number="32"/>
<syscall name="dup2" number="33"/>
<syscall name="pause" number="34"/>
<syscall name="nanosleep" number="35"/>
<syscall name="getitimer" number="36"/>
<syscall name="alarm" number="37"/>
<syscall name="setitimer" number="38"/>
<syscall name="getpid" number="39"/>
<syscall name="sendfile" number="40"/>
<syscall name="socket" number="41"/>
<syscall name="connect" number="42"/>
<syscall name="accept" number="43"/>
<syscall name="sendto" number="44"/>
<syscall name="recvfrom" number="45"/>
<syscall name="sendmsg" number="46"/>
<syscall name="recvmsg" number="47"/>
<syscall name="shutdown" number="48"/>
<syscall name="bind" number="49"/>
<syscall name="listen" number="50"/>
<syscall name="getsockname" number="51"/>
<syscall name="getpeername" number="52"/>
<syscall name="socketpair" number="53"/>
<syscall name="setsockopt" number="54"/>
<syscall name="getsockopt" number="55"/>
<syscall name="clone" number="56"/>
<syscall name="fork" number="57"/>
<syscall name="vfork" number="58"/>
<syscall name="execve" number="59"/>
<syscall name="exit" number="60"/>
<syscall name="wait4" number="61"/>
<syscall name="kill" number="62"/>
<syscall name="uname" number="63"/>
<syscall name="semget" number="64"/>
<syscall name="semop" number="65"/>
<syscall name="semctl" number="66"/>
<syscall name="shmdt" number="67"/>
<syscall name="msgget" number="68"/>
<syscall name="msgsnd" number="69"/>
<syscall name="msgrcv" number="70"/>
<syscall name="msgctl" number="71"/>
<syscall name="fcntl" number="72"/>
<syscall name="flock" number="73"/>
<syscall name="fsync" number="74"/>
<syscall name="fdatasync" number="75"/>
<syscall name="truncate" number="76"/>
<syscall name="ftruncate" number="77"/>
<syscall name="getdents" number="78"/>
<syscall name="getcwd" number="79"/>
<syscall name="chdir" number="80"/>
<syscall name="fchdir" number="81"/>
<syscall name="rename" number="82"/>
<syscall name="mkdir" number="83"/>
<syscall name="rmdir" number="84"/>
<syscall name="creat" number="85"/>
<syscall name="link" number="86"/>
<syscall name="unlink" number="87"/>
<syscall name="symlink" number="88"/>
<syscall name="readlink" number="89"/>
<syscall name="chmod" number="90"/>
<syscall name="fchmod" number="91"/>
<syscall name="chown" number="92"/>
<syscall name="fchown" number="93"/>
<syscall name="lchown" number="94"/>
<syscall name="umask" number="95"/>
<syscall name="gettimeofday" number="96"/>
<syscall name="getrlimit" number="97"/>
<syscall name="getrusage" number="98"/>
<syscall name="sysinfo" number="99"/>
<syscall name="times" number="100"/>
<syscall name="ptrace" number="101"/>
<syscall name="getuid" number="102"/>
<syscall name="syslog" number="103"/>
<syscall name="getgid" number="104"/>
<syscall name="setuid" number="105"/>
<syscall name="setgid" number="106"/>
<syscall name="geteuid" number="107"/>
<syscall name="getegid" number="108"/>
<syscall name="setpgid" number="109"/>
<syscall name="getppid" number="110"/>
<syscall name="getpgrp" number="111"/>
<syscall name="setsid" number="112"/>
<syscall name="setreuid" number="113"/>
<syscall name="setregid" number="114"/>
<syscall name="getgroups" number="115"/>
<syscall name="setgroups" number="116"/>
<syscall name="setresuid" number="117"/>
<syscall name="getresuid" number="118"/>
<syscall name="setresgid" number="119"/>
<syscall name="getresgid" number="120"/>
<syscall name="getpgid" number="121"/>
<syscall name="setfsuid" number="122"/>
<syscall name="setfsgid" number="123"/>
<syscall name="getsid" number="124"/>
<syscall name="capget" number="125"/>
<syscall name="capset" number="126"/>
<syscall name="rt_sigpending" number="127"/>
<syscall name="rt_sigtimedwait" number="128"/>
<syscall name="rt_sigqueueinfo" number="129"/>
<syscall name="rt_sigsuspend" number="130"/>
<syscall name="sigaltstack" number="131"/>
<syscall name="utime" number="132"/>
<syscall name="mknod" number="133"/>
<syscall name="uselib" number="134"/>
<syscall name="personality" number="135"/>
<syscall name="ustat" number="136"/>
<syscall name="statfs" number="137"/>
<syscall name="fstatfs" number="138"/>
<syscall name="sysfs" number="139"/>
<syscall name="getpriority" number="140"/>
<syscall name="setpriority" number="141"/>
<syscall name="sched_setparam" number="142"/>
<syscall name="sched_getparam" number="143"/>
<syscall name="sched_setscheduler" number="144"/>
<syscall name="sched_getscheduler" number="145"/>
<syscall name="sched_get_priority_max" number="146"/>
<syscall name="sched_get_priority_min" number="147"/>
<syscall name="sched_rr_get_interval" number="148"/>
<syscall name="mlock" number="149"/>
<syscall name="munlock" number="150"/>
<syscall name="mlockall" number="151"/>
<syscall name="munlockall" number="152"/>
<syscall name="vhangup" number="153"/>
<syscall name="modify_ldt" number="154"/>
<syscall name="pivot_root" number="155"/>
<syscall name="_sysctl" number="156"/>
<syscall name="prctl" number="157"/>
<syscall name="arch_prctl" number="158"/>
<syscall name="adjtimex" number="159"/>
<syscall name="setrlimit" number="160"/>
<syscall name="chroot" number="161"/>
<syscall name="sync" number="162"/>
<syscall name="acct" number="163"/>
<syscall name="settimeofday" number="164"/>
<syscall name="mount" number="165"/>
<syscall name="umount2" number="166"/>
<syscall name="swapon" number="167"/>
<syscall name="swapoff" number="168"/>
<syscall name="reboot" number="169"/>
<syscall name="sethostname" number="170"/>
<syscall name="setdomainname" number="171"/>
<syscall name="iopl" number="172"/>
<syscall name="ioperm" number="173"/>
<syscall name="create_module" number="174"/>
<syscall name="init_module" number="175"/>
<syscall name="delete_module" number="176"/>
<syscall name="get_kernel_syms" number="177"/>
<syscall name="query_module" number="178"/>
<syscall name="quotactl" number="179"/>
<syscall name="nfsservctl" number="180"/>
<syscall name="getpmsg" number="181"/>
<syscall name="putpmsg" number="182"/>
<syscall name="afs_syscall" number="183"/>
<syscall name="tuxcall" number="184"/>
<syscall name="security" number="185"/>
<syscall name="gettid" number="186"/>
<syscall name="readahead" number="187"/>
<syscall name="setxattr" number="188"/>
<syscall name="lsetxattr" number="189"/>
<syscall name="fsetxattr" number="190"/>
<syscall name="getxattr" number="191"/>
<syscall name="lgetxattr" number="192"/>
<syscall name="fgetxattr" number="193"/>
<syscall name="listxattr" number="194"/>
<syscall name="llistxattr" number="195"/>
<syscall name="flistxattr" number="196"/>
<syscall name="removexattr" number="197"/>
<syscall name="lremovexattr" number="198"/>
<syscall name="fremovexattr" number="199"/>
<syscall name="tkill" number="200"/>
<syscall name="time" number="201"/>
<syscall name="futex" number="202"/>
<syscall name="sched_setaffinity" number="203"/>
<syscall name="sched_getaffinity" number="204"/>
<syscall name="set_thread_area" number="205"/>
<syscall name="io_setup" number="206"/>
<syscall name="io_destroy" number="207"/>
<syscall name="io_getevents" number="208"/>
<syscall name="io_submit" number="209"/>
<syscall name="io_cancel" number="210"/>
<syscall name="get_thread_area" number="211"/>
<syscall name="lookup_dcookie" number="212"/>
<syscall name="epoll_create" number="213"/>
<syscall name="epoll_ctl_old" number="214"/>
<syscall name="epoll_wait_old" number="215"/>
<syscall name="remap_file_pages" number="216"/>
<syscall name="getdents64" number="217"/>
<syscall name="set_tid_address" number="218"/>
<syscall name="restart_syscall" number="219"/>
<syscall name="semtimedop" number="220"/>
<syscall name="fadvise64" number="221"/>
<syscall name="timer_create" number="222"/>
<syscall name="timer_settime" number="223"/>
<syscall name="timer_gettime" number="224"/>
<syscall name="timer_getoverrun" number="225"/>
<syscall name="timer_delete" number="226"/>
<syscall name="clock_settime" number="227"/>
<syscall name="clock_gettime" number="228"/>
<syscall name="clock_getres" number="229"/>
<syscall name="clock_nanosleep" number="230"/>
<syscall name="exit_group" number="231"/>
<syscall name="epoll_wait" number="232"/>
<syscall name="epoll_ctl" number="233"/>
<syscall name="tgkill" number="234"/>
<syscall name="utimes" number="235"/>
<syscall name="vserver" number="236"/>
<syscall name="mbind" number="237"/>
<syscall name="set_mempolicy" number="238"/>
<syscall name="get_mempolicy" number="239"/>
<syscall name="mq_open" number="240"/>
<syscall name="mq_unlink" number="241"/>
<syscall name="mq_timedsend" number="242"/>
<syscall name="mq_timedreceive" number="243"/>
<syscall name="mq_notify" number="244"/>
<syscall name="mq_getsetattr" number="245"/>
<syscall name="kexec_load" number="246"/>
<syscall name="waitid" number="247"/>
<syscall name="add_key" number="248"/>
<syscall name="request_key" number="249"/>
<syscall name="keyctl" number="250"/>
<syscall name="ioprio_set" number="251"/>
<syscall name="ioprio_get" number="252"/>
<syscall name="inotify_init" number="253"/>
<syscall name="inotify_add_watch" number="254"/>
<syscall name="inotify_rm_watch" number="255"/>
<syscall name="migrate_pages" number="256"/>
<syscall name="openat" number="257"/>
<syscall name="mkdirat" number="258"/>
<syscall name="mknodat" number="259"/>
<syscall name="fchownat" number="260"/>
<syscall name="futimesat" number="261"/>
<syscall name="newfstatat" number="262"/>
<syscall name="unlinkat" number="263"/>
<syscall name="renameat" number="264"/>
<syscall name="linkat" number="265"/>
<syscall name="symlinkat" number="266"/>
<syscall name="readlinkat" number="267"/>
<syscall name="fchmodat" number="268"/>
<syscall name="faccessat" number="269"/>
<syscall name="pselect6" number="270"/>
<syscall name="ppoll" number="271"/>
<syscall name="unshare" number="272"/>
<syscall name="set_robust_list" number="273"/>
<syscall name="get_robust_list" number="274"/>
<syscall name="splice" number="275"/>
<syscall name="tee" number="276"/>
<syscall name="sync_file_range" number="277"/>
<syscall name="vmsplice" number="278"/>
<syscall name="move_pages" number="279"/>
<syscall name="utimensat" number="280"/>
<syscall name="epoll_pwait" number="281"/>
<syscall name="signalfd" number="282"/>
<syscall name="timerfd_create" number="283"/>
<syscall name="eventfd" number="284"/>
<syscall name="fallocate" number="285"/>
<syscall name="timerfd_settime" number="286"/>
<syscall name="timerfd_gettime" number="287"/>
<syscall name="accept4" number="288"/>
<syscall name="signalfd4" number="289"/>
<syscall name="eventfd2" number="290"/>
<syscall name="epoll_create1" number="291"/>
<syscall name="dup3" number="292"/>
<syscall name="pipe2" number="293"/>
<syscall name="inotify_init1" number="294"/>
<syscall name="preadv" number="295"/>
<syscall name="pwritev" number="296"/>
</syscalls_info>