diff options
author | Gabriel Krisman Bertazi <gabriel@krisman.be> | 2016-07-23 18:38:24 -0300 |
---|---|---|
committer | Gabriel Krisman Bertazi <gabriel@krisman.be> | 2016-07-23 18:38:24 -0300 |
commit | e34879080d8935792ef3942efa5f25b4c3169b5a (patch) | |
tree | daab863d91a6bb66ab2c10f1f4ef50b52dab66ea /gdb/syscalls/bfin-linux.xml | |
parent | 49ecef2a7da2ee9df4ae675f99b70518fbf1bb23 (diff) | |
download | binutils-gdb-e34879080d8935792ef3942efa5f25b4c3169b5a.tar.gz |
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.
Diffstat (limited to 'gdb/syscalls/bfin-linux.xml')
-rw-r--r-- | gdb/syscalls/bfin-linux.xml | 326 |
1 files changed, 0 insertions, 326 deletions
diff --git a/gdb/syscalls/bfin-linux.xml b/gdb/syscalls/bfin-linux.xml deleted file mode 100644 index 448c6962e44..00000000000 --- a/gdb/syscalls/bfin-linux.xml +++ /dev/null @@ -1,326 +0,0 @@ -<?xml version="1.0"?> -<!-- Copyright (C) 2010-2016 Free Software Foundation, Inc. - - 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: - - gawk '$2 ~ /^__NR_/ { gsub(/__NR_/,""); print " <syscall name=\"" $2 "\" number=\"" $3 "\"/>" }' - /usr/src/linux/arch/blackfin/include/asm/unistd.h - - The file mentioned above belongs to the Linux Kernel. --> - -<syscalls_info> - <syscall name="restart_syscall" number="0"/> - <syscall name="exit" number="1"/> - <syscall name="fork" number="2"/> - <syscall name="read" number="3"/> - <syscall name="write" number="4"/> - <syscall name="open" number="5"/> - <syscall name="close" number="6"/> - <syscall name="creat" number="8"/> - <syscall name="link" number="9"/> - <syscall name="unlink" number="10"/> - <syscall name="execve" number="11"/> - <syscall name="chdir" number="12"/> - <syscall name="time" number="13"/> - <syscall name="mknod" number="14"/> - <syscall name="chmod" number="15"/> - <syscall name="chown" number="16"/> - <syscall name="lseek" number="19"/> - <syscall name="getpid" number="20"/> - <syscall name="mount" number="21"/> - <syscall name="setuid" number="23"/> - <syscall name="getuid" number="24"/> - <syscall name="stime" number="25"/> - <syscall name="ptrace" number="26"/> - <syscall name="alarm" number="27"/> - <syscall name="pause" number="29"/> - <syscall name="access" number="33"/> - <syscall name="nice" number="34"/> - <syscall name="sync" number="36"/> - <syscall name="kill" number="37"/> - <syscall name="rename" number="38"/> - <syscall name="mkdir" number="39"/> - <syscall name="rmdir" number="40"/> - <syscall name="dup" number="41"/> - <syscall name="pipe" number="42"/> - <syscall name="times" number="43"/> - <syscall name="brk" number="45"/> - <syscall name="setgid" number="46"/> - <syscall name="getgid" number="47"/> - <syscall name="geteuid" number="49"/> - <syscall name="getegid" number="50"/> - <syscall name="acct" number="51"/> - <syscall name="umount2" number="52"/> - <syscall name="ioctl" number="54"/> - <syscall name="fcntl" number="55"/> - <syscall name="setpgid" number="57"/> - <syscall name="umask" number="60"/> - <syscall name="chroot" number="61"/> - <syscall name="ustat" number="62"/> - <syscall name="dup2" number="63"/> - <syscall name="getppid" number="64"/> - <syscall name="getpgrp" number="65"/> - <syscall name="setsid" number="66"/> - <syscall name="sgetmask" number="68"/> - <syscall name="ssetmask" number="69"/> - <syscall name="setreuid" number="70"/> - <syscall name="setregid" number="71"/> - <syscall name="sethostname" number="74"/> - <syscall name="setrlimit" number="75"/> - <syscall name="getrusage" number="77"/> - <syscall name="gettimeofday" number="78"/> - <syscall name="settimeofday" number="79"/> - <syscall name="getgroups" number="80"/> - <syscall name="setgroups" number="81"/> - <syscall name="symlink" number="83"/> - <syscall name="readlink" number="85"/> - <syscall name="reboot" number="88"/> - <syscall name="munmap" number="91"/> - <syscall name="truncate" number="92"/> - <syscall name="ftruncate" number="93"/> - <syscall name="fchmod" number="94"/> - <syscall name="fchown" number="95"/> - <syscall name="getpriority" number="96"/> - <syscall name="setpriority" number="97"/> - <syscall name="statfs" number="99"/> - <syscall name="fstatfs" number="100"/> - <syscall name="syslog" number="103"/> - <syscall name="setitimer" number="104"/> - <syscall name="getitimer" number="105"/> - <syscall name="stat" number="106"/> - <syscall name="lstat" number="107"/> - <syscall name="fstat" number="108"/> - <syscall name="vhangup" number="111"/> - <syscall name="wait4" number="114"/> - <syscall name="sysinfo" number="116"/> - <syscall name="fsync" number="118"/> - <syscall name="clone" number="120"/> - <syscall name="setdomainname" number="121"/> - <syscall name="uname" number="122"/> - <syscall name="adjtimex" number="124"/> - <syscall name="mprotect" number="125"/> - <syscall name="init_module" number="128"/> - <syscall name="delete_module" number="129"/> - <syscall name="quotactl" number="131"/> - <syscall name="getpgid" number="132"/> - <syscall name="fchdir" number="133"/> - <syscall name="bdflush" number="134"/> - <syscall name="personality" number="136"/> - <syscall name="setfsuid" number="138"/> - <syscall name="setfsgid" number="139"/> - <syscall name="_llseek" number="140"/> - <syscall name="getdents" number="141"/> - <syscall name="flock" number="143"/> - <syscall name="readv" number="145"/> - <syscall name="writev" number="146"/> - <syscall name="getsid" number="147"/> - <syscall name="fdatasync" number="148"/> - <syscall name="_sysctl" number="149"/> - <syscall name="sched_setparam" number="154"/> - <syscall name="sched_getparam" number="155"/> - <syscall name="sched_setscheduler" number="156"/> - <syscall name="sched_getscheduler" number="157"/> - <syscall name="sched_yield" number="158"/> - <syscall name="sched_get_priority_max" number="159"/> - <syscall name="sched_get_priority_min" number="160"/> - <syscall name="sched_rr_get_interval" number="161"/> - <syscall name="nanosleep" number="162"/> - <syscall name="mremap" number="163"/> - <syscall name="setresuid" number="164"/> - <syscall name="getresuid" number="165"/> - <syscall name="nfsservctl" number="169"/> - <syscall name="setresgid" number="170"/> - <syscall name="getresgid" number="171"/> - <syscall name="prctl" number="172"/> - <syscall name="rt_sigreturn" number="173"/> - <syscall name="rt_sigaction" number="174"/> - <syscall name="rt_sigprocmask" number="175"/> - <syscall name="rt_sigpending" number="176"/> - <syscall name="rt_sigtimedwait" number="177"/> - <syscall name="rt_sigqueueinfo" number="178"/> - <syscall name="rt_sigsuspend" number="179"/> - <syscall name="pread" number="180"/> - <syscall name="pwrite" number="181"/> - <syscall name="lchown" number="182"/> - <syscall name="getcwd" number="183"/> - <syscall name="capget" number="184"/> - <syscall name="capset" number="185"/> - <syscall name="sigaltstack" number="186"/> - <syscall name="sendfile" number="187"/> - <syscall name="vfork" number="190"/> - <syscall name="getrlimit" number="191"/> - <syscall name="mmap2" number="192"/> - <syscall name="truncate64" number="193"/> - <syscall name="ftruncate64" number="194"/> - <syscall name="stat64" number="195"/> - <syscall name="lstat64" number="196"/> - <syscall name="fstat64" number="197"/> - <syscall name="chown32" number="198"/> - <syscall name="getuid32" number="199"/> - <syscall name="getgid32" number="200"/> - <syscall name="geteuid32" number="201"/> - <syscall name="getegid32" number="202"/> - <syscall name="setreuid32" number="203"/> - <syscall name="setregid32" number="204"/> - <syscall name="getgroups32" number="205"/> - <syscall name="setgroups32" number="206"/> - <syscall name="fchown32" number="207"/> - <syscall name="setresuid32" number="208"/> - <syscall name="getresuid32" number="209"/> - <syscall name="setresgid32" number="210"/> - <syscall name="getresgid32" number="211"/> - <syscall name="lchown32" number="212"/> - <syscall name="setuid32" number="213"/> - <syscall name="setgid32" number="214"/> - <syscall name="setfsuid32" number="215"/> - <syscall name="setfsgid32" number="216"/> - <syscall name="pivot_root" number="217"/> - <syscall name="getdents64" number="220"/> - <syscall name="fcntl64" number="221"/> - <syscall name="gettid" number="224"/> - <syscall name="readahead" number="225"/> - <syscall name="setxattr" number="226"/> - <syscall name="lsetxattr" number="227"/> - <syscall name="fsetxattr" number="228"/> - <syscall name="getxattr" number="229"/> - <syscall name="lgetxattr" number="230"/> - <syscall name="fgetxattr" number="231"/> - <syscall name="listxattr" number="232"/> - <syscall name="llistxattr" number="233"/> - <syscall name="flistxattr" number="234"/> - <syscall name="removexattr" number="235"/> - <syscall name="lremovexattr" number="236"/> - <syscall name="fremovexattr" number="237"/> - <syscall name="tkill" number="238"/> - <syscall name="sendfile64" number="239"/> - <syscall name="futex" number="240"/> - <syscall name="sched_setaffinity" number="241"/> - <syscall name="sched_getaffinity" number="242"/> - <syscall name="io_setup" number="245"/> - <syscall name="io_destroy" number="246"/> - <syscall name="io_getevents" number="247"/> - <syscall name="io_submit" number="248"/> - <syscall name="io_cancel" number="249"/> - <syscall name="exit_group" number="252"/> - <syscall name="lookup_dcookie" number="253"/> - <syscall name="bfin_spinlock" number="254"/> - <syscall name="epoll_create" number="255"/> - <syscall name="epoll_ctl" number="256"/> - <syscall name="epoll_wait" number="257"/> - <syscall name="set_tid_address" number="259"/> - <syscall name="timer_create" number="260"/> - <syscall name="timer_settime" number="261"/> - <syscall name="timer_gettime" number="262"/> - <syscall name="timer_getoverrun" number="263"/> - <syscall name="timer_delete" number="264"/> - <syscall name="clock_settime" number="265"/> - <syscall name="clock_gettime" number="266"/> - <syscall name="clock_getres" number="267"/> - <syscall name="clock_nanosleep" number="268"/> - <syscall name="statfs64" number="269"/> - <syscall name="fstatfs64" number="270"/> - <syscall name="tgkill" number="271"/> - <syscall name="utimes" number="272"/> - <syscall name="fadvise64_64" number="273"/> - <syscall name="mq_open" number="278"/> - <syscall name="mq_unlink" number="279"/> - <syscall name="mq_timedsend" number="280"/> - <syscall name="mq_timedreceive" number="281"/> - <syscall name="mq_notify" number="282"/> - <syscall name="mq_getsetattr" number="283"/> - <syscall name="kexec_load" number="284"/> - <syscall name="waitid" number="285"/> - <syscall name="add_key" number="286"/> - <syscall name="request_key" number="287"/> - <syscall name="keyctl" number="288"/> - <syscall name="ioprio_set" number="289"/> - <syscall name="ioprio_get" number="290"/> - <syscall name="inotify_init" number="291"/> - <syscall name="inotify_add_watch" number="292"/> - <syscall name="inotify_rm_watch" number="293"/> - <syscall name="openat" number="295"/> - <syscall name="mkdirat" number="296"/> - <syscall name="mknodat" number="297"/> - <syscall name="fchownat" number="298"/> - <syscall name="futimesat" number="299"/> - <syscall name="fstatat64" number="300"/> - <syscall name="unlinkat" number="301"/> - <syscall name="renameat" number="302"/> - <syscall name="linkat" number="303"/> - <syscall name="symlinkat" number="304"/> - <syscall name="readlinkat" number="305"/> - <syscall name="fchmodat" number="306"/> - <syscall name="faccessat" number="307"/> - <syscall name="pselect6" number="308"/> - <syscall name="ppoll" number="309"/> - <syscall name="unshare" number="310"/> - <syscall name="sram_alloc" number="311"/> - <syscall name="sram_free" number="312"/> - <syscall name="dma_memcpy" number="313"/> - <syscall name="accept" number="314"/> - <syscall name="bind" number="315"/> - <syscall name="connect" number="316"/> - <syscall name="getpeername" number="317"/> - <syscall name="getsockname" number="318"/> - <syscall name="getsockopt" number="319"/> - <syscall name="listen" number="320"/> - <syscall name="recv" number="321"/> - <syscall name="recvfrom" number="322"/> - <syscall name="recvmsg" number="323"/> - <syscall name="send" number="324"/> - <syscall name="sendmsg" number="325"/> - <syscall name="sendto" number="326"/> - <syscall name="setsockopt" number="327"/> - <syscall name="shutdown" number="328"/> - <syscall name="socket" number="329"/> - <syscall name="socketpair" number="330"/> - <syscall name="semctl" number="331"/> - <syscall name="semget" number="332"/> - <syscall name="semop" number="333"/> - <syscall name="msgctl" number="334"/> - <syscall name="msgget" number="335"/> - <syscall name="msgrcv" number="336"/> - <syscall name="msgsnd" number="337"/> - <syscall name="shmat" number="338"/> - <syscall name="shmctl" number="339"/> - <syscall name="shmdt" number="340"/> - <syscall name="shmget" number="341"/> - <syscall name="splice" number="342"/> - <syscall name="sync_file_range" number="343"/> - <syscall name="tee" number="344"/> - <syscall name="vmsplice" number="345"/> - <syscall name="epoll_pwait" number="346"/> - <syscall name="utimensat" number="347"/> - <syscall name="signalfd" number="348"/> - <syscall name="timerfd_create" number="349"/> - <syscall name="eventfd" number="350"/> - <syscall name="pread64" number="351"/> - <syscall name="pwrite64" number="352"/> - <syscall name="fadvise64" number="353"/> - <syscall name="set_robust_list" number="354"/> - <syscall name="get_robust_list" number="355"/> - <syscall name="fallocate" number="356"/> - <syscall name="semtimedop" number="357"/> - <syscall name="timerfd_settime" number="358"/> - <syscall name="timerfd_gettime" number="359"/> - <syscall name="signalfd4" number="360"/> - <syscall name="eventfd2" number="361"/> - <syscall name="epoll_create1" number="362"/> - <syscall name="dup3" number="363"/> - <syscall name="pipe2" number="364"/> - <syscall name="inotify_init1" number="365"/> - <syscall name="preadv" number="366"/> - <syscall name="pwritev" number="367"/> - <syscall name="rt_tgsigqueueinfo" number="368"/> - <syscall name="perf_event_open" number="369"/> - <syscall name="recvmmsg" number="370"/> - <syscall name="fanotify_init" number="371"/> - <syscall name="fanotify_mark" number="372"/> - <syscall name="prlimit64" number="373"/> -</syscalls_info> |