]> granicus.if.org Git - strace/commitdiff
2006-10-13 Ulrich Drepper <drepper@redhat.com>
authorDmitry V. Levin <ldv@altlinux.org>
Fri, 13 Oct 2006 20:25:12 +0000 (20:25 +0000)
committerDmitry V. Levin <ldv@altlinux.org>
Fri, 13 Oct 2006 20:25:12 +0000 (20:25 +0000)
    Bernhard Kaindl <bk@suse.de>
    Dmitry V. Levin  <ldv@altlinux.org>
    Michael Holzheu <holzheu@de.ibm.com>

Add hooks for new syscalls.  Add decoders for *at, inotify*,
pselect6, ppoll and unshare syscalls.

* defs.h: Declare print_sigset.
* desc.c (sys_pselect6): New function.
* file.c (decode_open, decode_access, decode_mkdir,
decode_readlink, decode_chmod, decode_utimes, decode_mknod):
New functions.
(sys_open, sys_access, sys_mkdir, sys_readlink, sys_chmod,
sys_utimes, sys_mknod): Use them.
[LINUX] (fstatatflags, unlinkatflags, inotify_modes): New
variables.
[LINUX] (print_dirfd, sys_openat, sys_faccessat,
sys_newfstatat, sys_mkdirat, sys_linkat, sys_unlinkat,
sys_symlinkat, sys_readlinkat, sys_renameat, sys_fchownat,
sys_fchmodat, sys_futimesat, sys_mknodat, sys_inotify_add_watch,
sys_inotify_rm_watch): New functions.
* process.c [LINUX] (sys_unshare): New function.
* signal.c (print_sigset): New function.
(sys_sigprocmask): Use it.
* stream.c (decode_poll): New function.
(sys_poll): Use it.
[LINUX] (sys_ppoll): New function.
* linux/syscall.h: Delcare new syscall handlers.
* linux/syscallent.h: Hook up new syscalls.
* linux/alpha/syscallent.h: Likewise.
* linux/hppa/syscallent.h: Likewise.
* linux/ia64/syscallent.h: Likewise.
* linux/mips/syscallent.h: Likewise.
* linux/powerpc/syscallent.h: Likewise.
* linux/s390/syscallent.h: Likewise.
* linux/s390x/syscallent.h: Likewise.
* linux/sparc/syscallent.h: Likewise.
* linux/sparc64/syscallent.h: Likewise.
* linux/x86_64/syscallent.h: Likewise.
Fixes RH#178633.

19 files changed:
ChangeLog
defs.h
desc.c
file.c
linux/alpha/syscallent.h
linux/hppa/syscallent.h
linux/ia64/syscallent.h
linux/mips/syscallent.h
linux/powerpc/syscallent.h
linux/s390/syscallent.h
linux/s390x/syscallent.h
linux/sparc/syscallent.h
linux/sparc64/syscallent.h
linux/syscall.h
linux/syscallent.h
linux/x86_64/syscallent.h
process.c
signal.c
stream.c

index 27eaed6f5f099a04fa0d4a17c5a4da62b55f2f73..b7715157931e15f3fca1e0cc9d35baa6d35e8928 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,45 @@
+2006-10-13  Ulrich Drepper  <drepper@redhat.com>
+           Bernhard Kaindl <bk@suse.de>
+           Dmitry V. Levin  <ldv@altlinux.org>
+           Michael Holzheu <holzheu@de.ibm.com>
+
+       Add hooks for new syscalls.  Add decoders for *at, inotify*,
+       pselect6, ppoll and unshare syscalls.
+
+       * defs.h: Declare print_sigset.
+       * desc.c (sys_pselect6): New function.
+       * file.c (decode_open, decode_access, decode_mkdir,
+       decode_readlink, decode_chmod, decode_utimes, decode_mknod):
+       New functions.
+       (sys_open, sys_access, sys_mkdir, sys_readlink, sys_chmod,
+       sys_utimes, sys_mknod): Use them.
+       [LINUX] (fstatatflags, unlinkatflags, inotify_modes): New
+       variables.
+       [LINUX] (print_dirfd, sys_openat, sys_faccessat,
+       sys_newfstatat, sys_mkdirat, sys_linkat, sys_unlinkat,
+       sys_symlinkat, sys_readlinkat, sys_renameat, sys_fchownat,
+       sys_fchmodat, sys_futimesat, sys_mknodat, sys_inotify_add_watch,
+       sys_inotify_rm_watch): New functions.
+       * process.c [LINUX] (sys_unshare): New function.
+       * signal.c (print_sigset): New function.
+       (sys_sigprocmask): Use it.
+       * stream.c (decode_poll): New function.
+       (sys_poll): Use it.
+       [LINUX] (sys_ppoll): New function.
+       * linux/syscall.h: Delcare new syscall handlers.
+       * linux/syscallent.h: Hook up new syscalls.
+       * linux/alpha/syscallent.h: Likewise.
+       * linux/hppa/syscallent.h: Likewise.
+       * linux/ia64/syscallent.h: Likewise.
+       * linux/mips/syscallent.h: Likewise.
+       * linux/powerpc/syscallent.h: Likewise.
+       * linux/s390/syscallent.h: Likewise.
+       * linux/s390x/syscallent.h: Likewise.
+       * linux/sparc/syscallent.h: Likewise.
+       * linux/sparc64/syscallent.h: Likewise.
+       * linux/x86_64/syscallent.h: Likewise.
+       Fixes RH#178633.
+
 2006-10-06  Dmitry V. Levin  <ldv@altlinux.org>
 
        * strace.c [!USE_PROCFS] (trace): Presence of PT_GETSIGINFO
diff --git a/defs.h b/defs.h
index 7790c0a737e0805f2e54ffdc17421a73abc8e7b9..312f28eb565fe2221fe49e21daa4739b43306224 100644 (file)
--- a/defs.h
+++ b/defs.h
@@ -463,6 +463,7 @@ extern int setbpt P((struct tcb *));
 extern int sigishandled P((struct tcb *, int));
 extern void printcall P((struct tcb *));
 extern const char *signame P((int));
+extern void print_sigset P((struct tcb *, long, int));
 extern void printsignal P((int));
 extern void printleader P((struct tcb *));
 extern void printtrailer P((struct tcb *));
diff --git a/desc.c b/desc.c
index bb30b6f0082b3b796d6b057aa917b4517a789ed1..9cdabbb8aa70bbccc5d02c76f91a7b653fab666e 100644 (file)
--- a/desc.c
+++ b/desc.c
@@ -871,6 +871,30 @@ int
 sys_select(tcp)
 struct tcb *tcp;
 {
-       long *args = tcp->u_arg;
-       return decode_select(tcp, args, 0);
+       return decode_select(tcp, tcp->u_arg, 0);
+}
+
+#ifdef LINUX
+int
+sys_pselect6(struct tcb *tcp)
+{
+       int rc = decode_select(tcp, tcp->u_arg, 0);
+       if (exiting(tcp)) {
+               struct {
+                       void *ss;
+                       unsigned long len;
+               } data;
+               if (umove(tcp, tcp->u_arg[5], &data) < 0)
+                       tprintf(", %#lx", tcp->u_arg[5]);
+               else {
+                       tprintf(", {");
+                       if (data.len < sizeof(sigset_t))
+                               tprintf("%#lx", (long)data.ss);
+                       else
+                               print_sigset(tcp, (long)data.ss, 0);
+                       tprintf(", %lu}", data.len);
+               }
+       }
+       return rc;
 }
+#endif
diff --git a/file.c b/file.c
index 6d74e3d953b5a7e83ac3fa975c973e4e51a00f22..62cc536b035af4f52421356c3c1be785ff64ccdf 100644 (file)
--- a/file.c
+++ b/file.c
@@ -307,23 +307,54 @@ const struct xlat openmodes[] = {
        { 0,            NULL            },
 };
 
-int
-sys_open(tcp)
-struct tcb *tcp;
+#ifdef LINUX
+
+#ifndef AT_FDCWD
+# define AT_FDCWD                -100
+#endif
+
+static void
+print_dirfd(long fd)
+{
+       if (fd == AT_FDCWD)
+               tprintf("AT_FDCWD, ");
+       else
+               tprintf("%ld, ", fd);
+}
+#endif
+
+static int
+decode_open(struct tcb *tcp, int offset)
 {
        if (entering(tcp)) {
-               printpath(tcp, tcp->u_arg[0]);
+               printpath(tcp, tcp->u_arg[offset]);
                tprintf(", ");
                /* flags */
-               printflags(openmodes, tcp->u_arg[1] + 1, "O_???");
-               if (tcp->u_arg[1] & O_CREAT) {
+               printflags(openmodes, tcp->u_arg[offset + 1] + 1, "O_???");
+               if (tcp->u_arg[offset + 1] & O_CREAT) {
                        /* mode */
-                       tprintf(", %#lo", tcp->u_arg[2]);
+                       tprintf(", %#lo", tcp->u_arg[offset + 2]);
                }
        }
        return 0;
 }
 
+int
+sys_open(struct tcb *tcp)
+{
+       return decode_open(tcp, 0);
+}
+
+#ifdef LINUX
+int
+sys_openat(struct tcb *tcp)
+{
+       if (entering(tcp))
+               print_dirfd(tcp->u_arg[0]);
+       return decode_open(tcp, 1);
+}
+#endif
+
 #ifdef LINUXSPARC
 static const struct xlat openmodessol[] = {
        { 0,            "O_RDWR"        },
@@ -387,18 +418,33 @@ static const struct xlat access_flags[] = {
        { 0,            NULL            },
 };
 
-int
-sys_access(tcp)
-struct tcb *tcp;
+static int
+decode_access(struct tcb *tcp, int offset)
 {
        if (entering(tcp)) {
-               printpath(tcp, tcp->u_arg[0]);
+               printpath(tcp, tcp->u_arg[offset]);
                tprintf(", ");
-               printflags(access_flags, tcp->u_arg[1], "?_OK");
+               printflags(access_flags, tcp->u_arg[offset + 1], "?_OK");
        }
        return 0;
 }
 
+int
+sys_access(struct tcb *tcp)
+{
+       return decode_access(tcp, 0);
+}
+
+#ifdef LINUX
+int
+sys_faccessat(struct tcb *tcp)
+{
+       if (entering(tcp))
+               print_dirfd(tcp->u_arg[0]);
+       return decode_access(tcp, 1);
+}
+#endif
+
 int
 sys_umask(tcp)
 struct tcb *tcp;
@@ -1099,6 +1145,35 @@ struct tcb *tcp;
 #endif
 }
 
+#ifdef LINUX
+static const struct xlat fstatatflags[] = {
+#ifndef AT_SYMLINK_NOFOLLOW
+# define AT_SYMLINK_NOFOLLOW     0x100
+#endif
+       { AT_SYMLINK_NOFOLLOW,  "AT_SYMLINK_NOFOLLOW"   },
+       { 0,                    NULL                    },
+};
+
+int
+sys_newfstatat(struct tcb *tcp)
+{
+       if (entering(tcp)) {
+               print_dirfd(tcp->u_arg[0]);
+               printpath(tcp, tcp->u_arg[1]);
+               tprintf(", ");
+       } else {
+#ifdef HAVE_STAT64
+               printstat64(tcp, tcp->u_arg[2]);
+#else
+               printstat(tcp, tcp->u_arg[2]);
+#endif
+               tprintf(", ");
+               printflags(fstatatflags, tcp->u_arg[3], "AT_???");
+       }
+       return 0;
+}
+#endif
+
 #if defined(LINUX) && defined(HAVE_STRUCT___OLD_KERNEL_STAT)
 int
 sys_oldstat(tcp)
@@ -1684,17 +1759,32 @@ struct tcb *tcp;
        return 0;
 }
 
-int
-sys_mkdir(tcp)
-struct tcb *tcp;
+static int
+decode_mkdir(struct tcb *tcp, int offset)
 {
        if (entering(tcp)) {
-               printpath(tcp, tcp->u_arg[0]);
-               tprintf(", %#lo", tcp->u_arg[1]);
+               printpath(tcp, tcp->u_arg[offset]);
+               tprintf(", %#lo", tcp->u_arg[offset + 1]);
        }
        return 0;
 }
 
+int
+sys_mkdir(struct tcb *tcp)
+{
+       return decode_mkdir(tcp, 0);
+}
+
+#ifdef LINUX
+int
+sys_mkdirat(struct tcb *tcp)
+{
+       if (entering(tcp))
+               print_dirfd(tcp->u_arg[0]);
+       return decode_mkdir(tcp, 1);
+}
+#endif
+
 int
 sys_rmdir(tcp)
 struct tcb *tcp;
@@ -1747,6 +1837,22 @@ struct tcb *tcp;
        return 0;
 }
 
+#ifdef LINUX
+int
+sys_linkat(struct tcb *tcp)
+{
+       if (entering(tcp)) {
+               print_dirfd(tcp->u_arg[0]);
+               printpath(tcp, tcp->u_arg[1]);
+               tprintf(", ");
+               print_dirfd(tcp->u_arg[2]);
+               printpath(tcp, tcp->u_arg[3]);
+               tprintf(", %ld", tcp->u_arg[4]);
+       }
+       return 0;
+}
+#endif
+
 int
 sys_unlink(tcp)
 struct tcb *tcp;
@@ -1757,6 +1863,28 @@ struct tcb *tcp;
        return 0;
 }
 
+#ifdef LINUX
+static const struct xlat unlinkatflags[] = {
+#ifndef AT_REMOVEDIR
+# define AT_REMOVEDIR            0x200
+#endif
+       { AT_REMOVEDIR, "AT_REMOVEDIR"  },
+       { 0,            NULL            },
+};
+
+int
+sys_unlinkat(struct tcb *tcp)
+{
+       if (entering(tcp)) {
+               print_dirfd(tcp->u_arg[0]);
+               printpath(tcp, tcp->u_arg[1]);
+               tprintf(", ");
+               printflags(unlinkatflags, tcp->u_arg[2], "AT_???");
+       }
+       return 0;
+}
+#endif
+
 int
 sys_symlink(tcp)
 struct tcb *tcp;
@@ -1769,23 +1897,52 @@ struct tcb *tcp;
        return 0;
 }
 
+#ifdef LINUX
 int
-sys_readlink(tcp)
-struct tcb *tcp;
+sys_symlinkat(struct tcb *tcp)
 {
        if (entering(tcp)) {
                printpath(tcp, tcp->u_arg[0]);
                tprintf(", ");
+               print_dirfd(tcp->u_arg[1]);
+               printpath(tcp, tcp->u_arg[2]);
+       }
+       return 0;
+}
+#endif
+
+static int
+decode_readlink(struct tcb *tcp, int offset)
+{
+       if (entering(tcp)) {
+               printpath(tcp, tcp->u_arg[offset]);
+               tprintf(", ");
        } else {
                if (syserror(tcp))
-                       tprintf("%#lx", tcp->u_arg[1]);
+                       tprintf("%#lx", tcp->u_arg[offset + 1]);
                else
-                       printpathn(tcp, tcp->u_arg[1], tcp->u_rval);
-               tprintf(", %lu", tcp->u_arg[2]);
+                       printpathn(tcp, tcp->u_arg[offset + 1], tcp->u_rval);
+               tprintf(", %lu", tcp->u_arg[offset + 2]);
        }
        return 0;
 }
 
+int
+sys_readlink(struct tcb *tcp)
+{
+       return decode_readlink(tcp, 0);
+}
+
+#ifdef LINUX
+int
+sys_readlinkat(struct tcb *tcp)
+{
+       if (entering(tcp))
+               print_dirfd(tcp->u_arg[0]);
+       return decode_readlink(tcp, 1);
+}
+#endif
+
 int
 sys_rename(tcp)
 struct tcb *tcp;
@@ -1798,6 +1955,21 @@ struct tcb *tcp;
        return 0;
 }
 
+#ifdef LINUX
+int
+sys_renameat(struct tcb *tcp)
+{
+       if (entering(tcp)) {
+               print_dirfd(tcp->u_arg[0]);
+               printpath(tcp, tcp->u_arg[1]);
+               tprintf(", ");
+               print_dirfd(tcp->u_arg[2]);
+               printpath(tcp, tcp->u_arg[3]);
+       }
+       return 0;
+}
+#endif
+
 int
 sys_chown(tcp)
 struct tcb *tcp;
@@ -1810,6 +1982,22 @@ struct tcb *tcp;
        return 0;
 }
 
+#ifdef LINUX
+int
+sys_fchownat(struct tcb *tcp)
+{
+       if (entering(tcp)) {
+               print_dirfd(tcp->u_arg[0]);
+               printpath(tcp, tcp->u_arg[1]);
+               printuid(", ", tcp->u_arg[2]);
+               printuid(", ", tcp->u_arg[3]);
+               tprintf(", ");
+               printflags(fstatatflags, tcp->u_arg[4], "AT_???");
+       }
+       return 0;
+}
+#endif
+
 int
 sys_fchown(tcp)
 struct tcb *tcp;
@@ -1822,17 +2010,32 @@ struct tcb *tcp;
        return 0;
 }
 
-int
-sys_chmod(tcp)
-struct tcb *tcp;
+static int
+decode_chmod(struct tcb *tcp, int offset)
 {
        if (entering(tcp)) {
-               printpath(tcp, tcp->u_arg[0]);
-               tprintf(", %#lo", tcp->u_arg[1]);
+               printpath(tcp, tcp->u_arg[offset]);
+               tprintf(", %#lo", tcp->u_arg[offset + 1]);
        }
        return 0;
 }
 
+int
+sys_chmod(struct tcb *tcp)
+{
+       return decode_chmod(tcp, 0);
+}
+
+#ifdef LINUX
+int
+sys_fchmodat(struct tcb *tcp)
+{
+       if (entering(tcp))
+               print_dirfd(tcp->u_arg[0]);
+       return decode_chmod(tcp, 1);
+}
+#endif
+
 int
 sys_fchmod(tcp)
 struct tcb *tcp;
@@ -1857,18 +2060,33 @@ struct tcb *tcp;
 }
 #endif
 
-int
-sys_utimes(tcp)
-struct tcb *tcp;
+static int
+decode_utimes(struct tcb *tcp, int offset)
 {
        if (entering(tcp)) {
-               printpath(tcp, tcp->u_arg[0]);
+               printpath(tcp, tcp->u_arg[offset]);
                tprintf(", ");
-               printtv(tcp, tcp->u_arg[1]);
+               printtv(tcp, tcp->u_arg[offset + 1]);
        }
        return 0;
 }
 
+int
+sys_utimes(struct tcb *tcp)
+{
+       return decode_utimes(tcp, 0);
+}
+
+#ifdef LINUX
+int
+sys_futimesat(struct tcb *tcp)
+{
+       if (entering(tcp))
+               print_dirfd(tcp->u_arg[0]);
+       return decode_utimes(tcp, 1);
+}
+#endif
+
 int
 sys_utime(tcp)
 struct tcb *tcp;
@@ -1893,27 +2111,26 @@ struct tcb *tcp;
        return 0;
 }
 
-int
-sys_mknod(tcp)
-struct tcb *tcp;
+static int
+decode_mknod(struct tcb *tcp, int offset)
 {
-       int mode = tcp->u_arg[1];
+       int mode = tcp->u_arg[offset + 1];
 
        if (entering(tcp)) {
-               printpath(tcp, tcp->u_arg[0]);
+               printpath(tcp, tcp->u_arg[offset]);
                tprintf(", %s", sprintmode(mode));
                switch (mode & S_IFMT) {
                case S_IFCHR: case S_IFBLK:
 #ifdef LINUXSPARC
                        if (current_personality == 1)
                        tprintf(", makedev(%lu, %lu)",
-                               (unsigned long) ((tcp->u_arg[2] >> 18) & 0x3fff),
-                               (unsigned long) (tcp->u_arg[2] & 0x3ffff));
+                               (unsigned long) ((tcp->u_arg[offset + 2] >> 18) & 0x3fff),
+                               (unsigned long) (tcp->u_arg[offset + 2] & 0x3ffff));
                        else
 #endif
                        tprintf(", makedev(%lu, %lu)",
-                               (unsigned long) major(tcp->u_arg[2]),
-                               (unsigned long) minor(tcp->u_arg[2]));
+                               (unsigned long) major(tcp->u_arg[offset + 2]),
+                               (unsigned long) minor(tcp->u_arg[offset + 2]));
                        break;
                default:
                        break;
@@ -1922,6 +2139,22 @@ struct tcb *tcp;
        return 0;
 }
 
+int
+sys_mknod(struct tcb *tcp)
+{
+       return decode_mknod(tcp, 0);
+}
+
+#ifdef LINUX
+int
+sys_mknodat(struct tcb *tcp)
+{
+       if (entering(tcp))
+               print_dirfd(tcp->u_arg[0]);
+       return decode_mknod(tcp, 1);
+}
+#endif
+
 int
 sys_mkfifo(tcp)
 struct tcb *tcp;
@@ -2529,3 +2762,49 @@ struct tcb *tcp;
     }
     return 0;
 }
+
+#ifdef LINUX
+static const struct xlat inotify_modes[] = {
+       { 0x00000001, "IN_ACCESS" },
+       { 0x00000002, "IN_MODIFY" },
+       { 0x00000004, "IN_ATTRIB" },
+       { 0x00000008, "IN_CLOSE_WRITE" },
+       { 0x00000010, "IN_CLOSE_NOWRITE" },
+       { 0x00000020, "IN_OPEN" },
+       { 0x00000040, "IN_MOVED_FROM" },
+       { 0x00000080, "IN_MOVED_TO" },
+       { 0x00000100, "IN_CREATE" },
+       { 0x00000200, "IN_DELETE" },
+       { 0x00000400, "IN_DELETE_SELF" },
+       { 0x00000800, "IN_MOVE_SELF" },
+       { 0x00002000, "IN_UNMOUNT" },
+       { 0x00004000, "IN_Q_OVERFLOW" },
+       { 0x00008000, "IN_IGNORED" },
+       { 0x01000000, "IN_ONLYDIR" },
+       { 0x02000000, "IN_DONT_FOLLOW" },
+       { 0x20000000, "IN_MASK_ADD" },
+       { 0x40000000, "IN_ISDIR" },
+       { 0x80000000, "IN_ONESHOT" }
+};
+
+int
+sys_inotify_add_watch(struct tcb *tcp)
+{
+       if (entering(tcp)) {
+               tprintf("%ld, ", tcp->u_arg[0]);
+               printpath(tcp, tcp->u_arg[1]);
+               tprintf(", ");
+               printflags(inotify_modes, tcp->u_arg[2], "IN_???");
+       }
+       return 0;
+}
+
+int
+sys_inotify_rm_watch(struct tcb *tcp)
+{
+       if (entering(tcp)) {
+               tprintf("%ld, %ld", tcp->u_arg[0], tcp->u_arg[1]);
+       }
+       return 0;
+}
+#endif
index 4eb817942ede953deff937c38414f85d6c4b4ab8..9278c3710ed9e41dbe97188abdff50e1eb4487f3 100644 (file)
        { 2,    0,      sys_mq_notify,          "mq_notify"             }, /* 436 */
        { 3,    0,      sys_mq_getsetattr,      "mq_getsetattr"         }, /* 437 */
        { 4,    0,      printargs,              "waitid"                }, /* 438 */
+       { 5,    0,      printargs,              "add_key"               }, /* 439 */
+       { 4,    0,      printargs,              "request_key"           }, /* 440 */
+       { 5,    0,      printargs,              "keyctl"                }, /* 441 */
+       { 3,    0,      printargs,              "ioprio_set"            }, /* 442 */
+       { 2,    0,      printargs,              "ioprio_get"            }, /* 443 */
+       { 0,    TD,     printargs,              "inotify_init"          }, /* 444 */
+       { 3,    TD,     sys_inotify_add_watch,  "inotify_add_watch"     }, /* 445 */
+       { 2,    TD,     sys_inotify_rm_watch,   "inotify_rm_watch"      }, /* 446 */
index e23e1a3222e1e2713c914938b7d069bb4371cc51..352f45e1cf39a61a193cf83da7eac2d0a9fc1c9c 100644 (file)
        { 5,    0,      printargs,              "mbind"                 }, /* 260 */
        { 5,    0,      printargs,              "get_mempolicy"         }, /* 261 */
        { 5,    0,      printargs,              "set_mempolicy"         }, /* 262 */
-       { 5,    0,      printargs,              "SYS_263"               }, /* 263 */
-       { 5,    0,      printargs,              "SYS_264"               }, /* 264 */
-       { 5,    0,      printargs,              "SYS_265"               }, /* 265 */
-       { 5,    0,      printargs,              "SYS_266"               }, /* 266 */
-       { 5,    0,      printargs,              "SYS_267"               }, /* 267 */
-       { 5,    0,      printargs,              "SYS_268"               }, /* 268 */
-       { 5,    0,      printargs,              "SYS_269"               }, /* 269 */
-       { 5,    0,      printargs,              "SYS_270"               }, /* 270 */
-       { 5,    0,      printargs,              "SYS_271"               }, /* 271 */
-       { 5,    0,      printargs,              "SYS_272"               }, /* 272 */
-       { 5,    0,      printargs,              "SYS_273"               }, /* 273 */
-       { 5,    0,      printargs,              "SYS_274"               }, /* 274 */
-       { 5,    0,      printargs,              "SYS_275"               }, /* 275 */
-       { 5,    0,      printargs,              "SYS_276"               }, /* 276 */
-       { 5,    0,      printargs,              "SYS_277"               }, /* 277 */
-       { 5,    0,      printargs,              "SYS_278"               }, /* 278 */
-       { 5,    0,      printargs,              "SYS_279"               }, /* 279 */
-       { 5,    0,      printargs,              "SYS_280"               }, /* 280 */
-       { 5,    0,      printargs,              "SYS_281"               }, /* 281 */
-       { 5,    0,      printargs,              "SYS_282"               }, /* 282 */
-       { 5,    0,      printargs,              "SYS_283"               }, /* 283 */
-       { 5,    0,      printargs,              "SYS_284"               }, /* 284 */
-       { 5,    0,      printargs,              "SYS_285"               }, /* 285 */
-       { 5,    0,      printargs,              "SYS_286"               }, /* 286 */
-       { 5,    0,      printargs,              "SYS_287"               }, /* 287 */
-       { 5,    0,      printargs,              "SYS_288"               }, /* 288 */
-       { 5,    0,      printargs,              "SYS_289"               }, /* 289 */
-       { 5,    0,      printargs,              "SYS_290"               }, /* 290 */
-       { 5,    0,      printargs,              "SYS_291"               }, /* 291 */
-       { 5,    0,      printargs,              "SYS_292"               }, /* 292 */
-       { 5,    0,      printargs,              "SYS_293"               }, /* 293 */
-       { 5,    0,      printargs,              "SYS_294"               }, /* 294 */
+       { 5,    0,      printargs,              "vserver"               }, /* 263 */
+       { 5,    0,      printargs,              "add_key"               }, /* 264 */
+       { 4,    0,      printargs,              "request_key"           }, /* 265 */
+       { 5,    0,      printargs,              "keyctl"                }, /* 266 */
+       { 3,    0,      printargs,              "ioprio_set"            }, /* 267 */
+       { 2,    0,      printargs,              "ioprio_get"            }, /* 268 */
+       { 0,    TD,     printargs,              "inotify_init"          }, /* 269 */
+       { 3,    TD,     sys_inotify_add_watch,  "inotify_add_watch"     }, /* 270 */
+       { 2,    TD,     sys_inotify_rm_watch,   "inotify_rm_watch"      }, /* 271 */
+       { 4,    0,      printargs,              "migrate_pages"         }, /* 272 */
+       { 6,    TD,     sys_pselect6,           "pselect6"              }, /* 273 */
+       { 5,    TD,     sys_ppoll,              "ppoll"                 }, /* 274 */
+       { 4,    TD|TF,  sys_openat,             "openat"                }, /* 275 */
+       { 3,    TD|TF,  sys_mkdirat,            "mkdirat"               }, /* 276 */
+       { 4,    TD|TF,  sys_mknodat,            "mknodat"               }, /* 277 */
+       { 5,    TD|TF,  sys_fchownat,           "fchownat"              }, /* 278 */
+       { 3,    TD|TF,  sys_futimesat,          "futimesat"             }, /* 279 */
+       { 4,    TD|TD,  sys_newfstatat,         "newfstatat"            }, /* 280 */
+       { 3,    TD|TF,  sys_unlinkat,           "unlinkat"              }, /* 281 */
+       { 4,    TD|TF,  sys_renameat,           "renameat"              }, /* 282 */
+       { 5,    TD|TF,  sys_linkat,             "linkat"                }, /* 283 */
+       { 3,    TD|TF,  sys_symlinkat,          "symlinkat"             }, /* 284 */
+       { 4,    TD|TF,  sys_readlinkat,         "readlinkat"            }, /* 285 */
+       { 3,    TD|TF,  sys_fchmodat,           "fchmodat"              }, /* 286 */
+       { 3,    TD|TF,  sys_faccessat,          "faccessat"             }, /* 287 */
+       { 1,    TP,     sys_unshare,            "unshare"               }, /* 288 */
+       { 2,    0,      printargs,              "set_robust_list"       }, /* 289 */
+       { 3,    0,      printargs,              "get_robust_list"       }, /* 290 */
+       { 6,    TD,     printargs,              "splice"                }, /* 291 */
+       { 4,    TD,     printargs,              "sync_file_range"       }, /* 292 */
+       { 4,    TD,     printargs,              "tee"                   }, /* 293 */
+       { 4,    TD,     printargs,              "vmsplice"              }, /* 294 */
index 006e64df8790728cf14795c09be24587aacf21f3..f47d619cc75a2ce364e74eea1dfaa6fe581e57c9 100644 (file)
    starts where that one leaves off.
 */
 
-       { 8,    0,      printargs,              "SYS_343"       }, /* 343 */
-       { 8,    0,      printargs,              "SYS_344"       }, /* 344 */
-       { 8,    0,      printargs,              "SYS_345"       }, /* 345 */
-       { 8,    0,      printargs,              "SYS_346"       }, /* 346 */
-       { 8,    0,      printargs,              "SYS_347"       }, /* 347 */
-       { 8,    0,      printargs,              "SYS_348"       }, /* 348 */
-       { 8,    0,      printargs,              "SYS_349"       }, /* 349 */
-       { 8,    0,      printargs,              "SYS_350"       }, /* 350 */
-       { 8,    0,      printargs,              "SYS_351"       }, /* 351 */
-       { 8,    0,      printargs,              "SYS_352"       }, /* 352 */
-       { 8,    0,      printargs,              "SYS_353"       }, /* 353 */
-       { 8,    0,      printargs,              "SYS_354"       }, /* 354 */
-       { 8,    0,      printargs,              "SYS_355"       }, /* 355 */
-       { 8,    0,      printargs,              "SYS_356"       }, /* 356 */
-       { 8,    0,      printargs,              "SYS_357"       }, /* 357 */
-       { 8,    0,      printargs,              "SYS_358"       }, /* 358 */
-       { 8,    0,      printargs,              "SYS_359"       }, /* 359 */
-       { 8,    0,      printargs,              "SYS_360"       }, /* 360 */
-       { 8,    0,      printargs,              "SYS_361"       }, /* 361 */
-       { 8,    0,      printargs,              "SYS_362"       }, /* 362 */
-       { 8,    0,      printargs,              "SYS_363"       }, /* 363 */
-       { 8,    0,      printargs,              "SYS_364"       }, /* 364 */
-       { 8,    0,      printargs,              "SYS_365"       }, /* 365 */
-       { 8,    0,      printargs,              "SYS_366"       }, /* 366 */
-       { 8,    0,      printargs,              "SYS_367"       }, /* 367 */
-       { 8,    0,      printargs,              "SYS_368"       }, /* 368 */
-       { 8,    0,      printargs,              "SYS_369"       }, /* 369 */
-       { 8,    0,      printargs,              "SYS_370"       }, /* 370 */
-       { 8,    0,      printargs,              "SYS_371"       }, /* 371 */
-       { 8,    0,      printargs,              "SYS_372"       }, /* 372 */
-       { 8,    0,      printargs,              "SYS_373"       }, /* 373 */
-       { 8,    0,      printargs,              "SYS_374"       }, /* 374 */
-       { 8,    0,      printargs,              "SYS_375"       }, /* 375 */
-       { 8,    0,      printargs,              "SYS_376"       }, /* 376 */
-       { 8,    0,      printargs,              "SYS_377"       }, /* 377 */
-       { 8,    0,      printargs,              "SYS_378"       }, /* 378 */
-       { 8,    0,      printargs,              "SYS_379"       }, /* 379 */
-       { 8,    0,      printargs,              "SYS_380"       }, /* 380 */
-       { 8,    0,      printargs,              "SYS_381"       }, /* 381 */
-       { 8,    0,      printargs,              "SYS_382"       }, /* 382 */
-       { 8,    0,      printargs,              "SYS_383"       }, /* 383 */
-       { 8,    0,      printargs,              "SYS_384"       }, /* 384 */
-       { 8,    0,      printargs,              "SYS_385"       }, /* 385 */
-       { 8,    0,      printargs,              "SYS_386"       }, /* 386 */
-       { 8,    0,      printargs,              "SYS_387"       }, /* 387 */
-       { 8,    0,      printargs,              "SYS_388"       }, /* 388 */
-       { 8,    0,      printargs,              "SYS_389"       }, /* 389 */
-       { 8,    0,      printargs,              "SYS_390"       }, /* 390 */
-       { 8,    0,      printargs,              "SYS_391"       }, /* 391 */
-       { 8,    0,      printargs,              "SYS_392"       }, /* 392 */
-       { 8,    0,      printargs,              "SYS_393"       }, /* 393 */
-       { 8,    0,      printargs,              "SYS_394"       }, /* 394 */
-       { 8,    0,      printargs,              "SYS_395"       }, /* 395 */
-       { 8,    0,      printargs,              "SYS_396"       }, /* 396 */
-       { 8,    0,      printargs,              "SYS_397"       }, /* 397 */
-       { 8,    0,      printargs,              "SYS_398"       }, /* 398 */
-       { 8,    0,      printargs,              "SYS_399"       }, /* 399 */
-       { 8,    0,      printargs,              "SYS_400"       }, /* 400 */
-       { 8,    0,      printargs,              "SYS_401"       }, /* 401 */
-       { 8,    0,      printargs,              "SYS_402"       }, /* 402 */
-       { 8,    0,      printargs,              "SYS_403"       }, /* 403 */
-       { 8,    0,      printargs,              "SYS_404"       }, /* 404 */
-       { 8,    0,      printargs,              "SYS_405"       }, /* 405 */
-       { 8,    0,      printargs,              "SYS_406"       }, /* 406 */
-       { 8,    0,      printargs,              "SYS_407"       }, /* 407 */
-       { 8,    0,      printargs,              "SYS_408"       }, /* 408 */
-       { 8,    0,      printargs,              "SYS_409"       }, /* 409 */
-       { 8,    0,      printargs,              "SYS_410"       }, /* 410 */
-       { 8,    0,      printargs,              "SYS_411"       }, /* 411 */
-       { 8,    0,      printargs,              "SYS_412"       }, /* 412 */
-       { 8,    0,      printargs,              "SYS_413"       }, /* 413 */
-       { 8,    0,      printargs,              "SYS_414"       }, /* 414 */
-       { 8,    0,      printargs,              "SYS_415"       }, /* 415 */
-       { 8,    0,      printargs,              "SYS_416"       }, /* 416 */
-       { 8,    0,      printargs,              "SYS_417"       }, /* 417 */
-       { 8,    0,      printargs,              "SYS_418"       }, /* 418 */
-       { 8,    0,      printargs,              "SYS_419"       }, /* 419 */
-       { 8,    0,      printargs,              "SYS_420"       }, /* 420 */
-       { 8,    0,      printargs,              "SYS_421"       }, /* 421 */
-       { 8,    0,      printargs,              "SYS_422"       }, /* 422 */
-       { 8,    0,      printargs,              "SYS_423"       }, /* 423 */
-       { 8,    0,      printargs,              "SYS_424"       }, /* 424 */
-       { 8,    0,      printargs,              "SYS_425"       }, /* 425 */
-       { 8,    0,      printargs,              "SYS_426"       }, /* 426 */
-       { 8,    0,      printargs,              "SYS_427"       }, /* 427 */
-       { 8,    0,      printargs,              "SYS_428"       }, /* 428 */
-       { 8,    0,      printargs,              "SYS_429"       }, /* 429 */
-       { 8,    0,      printargs,              "SYS_430"       }, /* 430 */
-       { 8,    0,      printargs,              "SYS_431"       }, /* 431 */
-       { 8,    0,      printargs,              "SYS_432"       }, /* 432 */
-       { 8,    0,      printargs,              "SYS_433"       }, /* 433 */
-       { 8,    0,      printargs,              "SYS_434"       }, /* 434 */
-       { 8,    0,      printargs,              "SYS_435"       }, /* 435 */
-       { 8,    0,      printargs,              "SYS_436"       }, /* 436 */
-       { 8,    0,      printargs,              "SYS_437"       }, /* 437 */
-       { 8,    0,      printargs,              "SYS_438"       }, /* 438 */
-       { 8,    0,      printargs,              "SYS_439"       }, /* 439 */
-       { 8,    0,      printargs,              "SYS_440"       }, /* 440 */
-       { 8,    0,      printargs,              "SYS_441"       }, /* 441 */
-       { 8,    0,      printargs,              "SYS_442"       }, /* 442 */
        { 8,    0,      printargs,              "SYS_443"       }, /* 443 */
        { 8,    0,      printargs,              "SYS_444"       }, /* 444 */
        { 8,    0,      printargs,              "SYS_445"       }, /* 445 */
        { 5,    0,      printargs,              "sys_kexec_load" }, /* 1268 */
        { 5,    0,      printargs,              "vserver"       }, /* 1269 */
        { 5,    TP,     sys_waitid,             "waitid"        }, /* 1270 */
-       { 8,    0,      printargs,              "SYS_1271"      }, /* 1271 */
-       { 8,    0,      printargs,              "SYS_1272"      }, /* 1272 */
-       { 8,    0,      printargs,              "SYS_1273"      }, /* 1273 */
-       { 8,    0,      printargs,              "SYS_1274"      }, /* 1274 */
-       { 8,    0,      printargs,              "SYS_1275"      }, /* 1275 */
+       { 5,    0,      printargs,              "add_key"       }, /* 1271 */
+       { 4,    0,      printargs,              "request_key"   }, /* 1272 */
+       { 5,    0,      printargs,              "keyctl"        }, /* 1273 */
+       { 3,    0,      printargs,              "ioprio_set"    }, /* 1274 */
+       { 2,    0,      printargs,              "ioprio_get"    }, /* 1275 */
        { 8,    0,      printargs,              "SYS_1276"      }, /* 1276 */
-       { 8,    0,      printargs,              "SYS_1277"      }, /* 1277 */
-       { 8,    0,      printargs,              "SYS_1278"      }, /* 1278 */
-       { 8,    0,      printargs,              "SYS_1279"      }, /* 1279 */
-       { 8,    0,      printargs,              "SYS_1280"      }, /* 1280 */
-       { 8,    0,      printargs,              "SYS_1281"      }, /* 1281 */
-       { 8,    0,      printargs,              "SYS_1282"      }, /* 1282 */
-       { 8,    0,      printargs,              "SYS_1283"      }, /* 1283 */
-       { 8,    0,      printargs,              "SYS_1284"      }, /* 1284 */
-       { 8,    0,      printargs,              "SYS_1285"      }, /* 1285 */
-       { 8,    0,      printargs,              "SYS_1286"      }, /* 1286 */
-       { 8,    0,      printargs,              "SYS_1287"      }, /* 1287 */
-       { 8,    0,      printargs,              "SYS_1288"      }, /* 1288 */
-       { 8,    0,      printargs,              "SYS_1289"      }, /* 1289 */
-       { 8,    0,      printargs,              "SYS_1290"      }, /* 1290 */
-       { 8,    0,      printargs,              "SYS_1291"      }, /* 1291 */
-       { 8,    0,      printargs,              "SYS_1292"      }, /* 1292 */
-       { 8,    0,      printargs,              "SYS_1293"      }, /* 1293 */
-       { 8,    0,      printargs,              "SYS_1294"      }, /* 1294 */
-       { 8,    0,      printargs,              "SYS_1295"      }, /* 1295 */
-       { 8,    0,      printargs,              "SYS_1296"      }, /* 1296 */
-       { 8,    0,      printargs,              "SYS_1297"      }, /* 1297 */
-       { 8,    0,      printargs,              "SYS_1298"      }, /* 1298 */
-       { 8,    0,      printargs,              "SYS_1299"      }, /* 1299 */
-       { 8,    0,      printargs,              "SYS_1300"      }, /* 1300 */
-       { 8,    0,      printargs,              "SYS_1301"      }, /* 1301 */
-       { 8,    0,      printargs,              "SYS_1302"      }, /* 1302 */
+       { 0,    TD,     printargs,              "inotify_init"  }, /* 1277 */
+       { 3,    TD,     sys_inotify_add_watch,  "inotify_add_watch" }, /* 1278 */
+       { 2,    TD,     sys_inotify_rm_watch,   "inotify_rm_watch" }, /* 1279 */
+       { 4,    0,      printargs,              "migrate_pages" }, /* 1280 */
+       { 4,    TD|TF,  sys_openat,             "openat"        }, /* 1281 */
+       { 3,    TD|TF,  sys_mkdirat,            "mkdirat"       }, /* 1282 */
+       { 4,    TD|TF,  sys_mknodat,            "mknodat"       }, /* 1283 */
+       { 5,    TD|TF,  sys_fchownat,           "fchownat"      }, /* 1284 */
+       { 3,    TD|TF,  sys_futimesat,          "futimesat"     }, /* 1285 */
+       { 4,    TD|TD,  sys_newfstatat,         "newfstatat"    }, /* 1286 */
+       { 3,    TD|TF,  sys_unlinkat,           "unlinkat"      }, /* 1287 */
+       { 4,    TD|TF,  sys_renameat,           "renameat"      }, /* 1288 */
+       { 5,    TD|TF,  sys_linkat,             "linkat"        }, /* 1289 */
+       { 3,    TD|TF,  sys_symlinkat,          "symlinkat"     }, /* 1290 */
+       { 4,    TD|TF,  sys_readlinkat,         "readlinkat"    }, /* 1291 */
+       { 3,    TD|TF,  sys_fchmodat,           "fchmodat"      }, /* 1292 */
+       { 3,    TD|TF,  sys_faccessat,          "faccessat"     }, /* 1293 */
+       { 6,    TD,     sys_pselect6,           "pselect6"      }, /* 1294 */
+       { 5,    TD,     sys_ppoll,              "ppoll"         }, /* 1295 */
+       { 1,    TP,     sys_unshare,            "unshare"       }, /* 1296 */
+       { 2,    0,      printargs,              "set_robust_list" }, /* 1297 */
+       { 3,    0,      printargs,              "get_robust_list" }, /* 1298 */
+       { 6,    TD,     printargs,              "splice"        }, /* 1299 */
+       { 4,    TD,     printargs,              "sync_file_range" }, /* 1300 */
+       { 4,    TD,     printargs,              "tee"           }, /* 1301 */
+       { 4,    TD,     printargs,              "vmsplice"      }, /* 1302 */
        { 8,    0,      printargs,              "SYS_1303"      }, /* 1303 */
        { 8,    0,      printargs,              "SYS_1304"      }, /* 1304 */
        { 8,    0,      printargs,              "SYS_1305"      }, /* 1305 */
index bd1dc1330aef423b867c1e80eebe2408feb4ffd9..5c3d25504dc1d32fc9965e544fbc60b0aabaf1a0 100644 (file)
        { 5,    0,      printargs,              "add_key"       }, /* 4280 */
        { 4,    0,      printargs,              "request_key"   }, /* 4281 */
        { 5,    0,      printargs,              "keyctl"        }, /* 4282 */
-       { 0,    0,      printargs,              "SYS_4283"      }, /* 4283 */
-       { 0,    0,      printargs,              "SYS_4284"      }, /* 4284 */
-       { 0,    0,      printargs,              "SYS_4285"      }, /* 4285 */
-       { 0,    0,      printargs,              "SYS_4286"      }, /* 4286 */
-       { 0,    0,      printargs,              "SYS_4287"      }, /* 4287 */
-       { 0,    0,      printargs,              "SYS_4288"      }, /* 4288 */
-       { 0,    0,      printargs,              "SYS_4289"      }, /* 4289 */
-       { 0,    0,      printargs,              "SYS_4290"      }, /* 4290 */
-       { 0,    0,      printargs,              "SYS_4291"      }, /* 4291 */
-       { 0,    0,      printargs,              "SYS_4292"      }, /* 4292 */
-       { 0,    0,      printargs,              "SYS_4293"      }, /* 4293 */
-       { 0,    0,      printargs,              "SYS_4294"      }, /* 4294 */
-       { 0,    0,      printargs,              "SYS_4295"      }, /* 4295 */
-       { 0,    0,      printargs,              "SYS_4296"      }, /* 4296 */
-       { 0,    0,      printargs,              "SYS_4297"      }, /* 4297 */
-       { 0,    0,      printargs,              "SYS_4298"      }, /* 4298 */
-       { 0,    0,      printargs,              "SYS_4299"      }, /* 4299 */
-       { 0,    0,      printargs,              "SYS_4300"      }, /* 4300 */
-       { 0,    0,      printargs,              "SYS_4301"      }, /* 4301 */
-       { 0,    0,      printargs,              "SYS_4302"      }, /* 4302 */
-       { 0,    0,      printargs,              "SYS_4303"      }, /* 4303 */
-       { 0,    0,      printargs,              "SYS_4304"      }, /* 4304 */
-       { 0,    0,      printargs,              "SYS_4305"      }, /* 4305 */
+       { 1,    0,      sys_set_thread_area,    "set_thread_area" }, /* 4283 */
+       { 0,    TD,     printargs,              "inotify_init"  }, /* 4284 */
+       { 3,    TD,     sys_inotify_add_watch,  "inotify_add_watch" }, /* 4285 */
+       { 2,    TD,     sys_inotify_rm_watch,   "inotify_rm_watch" }, /* 4286 */
+       { 4,    0,      printargs,              "migrate_pages" }, /* 4287 */
+       { 4,    TD|TF,  sys_openat,             "openat"        }, /* 4288 */
+       { 3,    TD|TF,  sys_mkdirat,            "mkdirat"       }, /* 4289 */
+       { 4,    TD|TF,  sys_mknodat,            "mknodat"       }, /* 4290 */
+       { 5,    TD|TF,  sys_fchownat,           "fchownat"      }, /* 4291 */
+       { 3,    TD|TF,  sys_futimesat,          "futimesat"     }, /* 4292 */
+       { 4,    TD|TD,  sys_newfstatat,         "newfstatat"    }, /* 4293 */
+       { 3,    TD|TF,  sys_unlinkat,           "unlinkat"      }, /* 4294 */
+       { 4,    TD|TF,  sys_renameat,           "renameat"      }, /* 4295 */
+       { 5,    TD|TF,  sys_linkat,             "linkat"        }, /* 4296 */
+       { 3,    TD|TF,  sys_symlinkat,          "symlinkat"     }, /* 4297 */
+       { 4,    TD|TF,  sys_readlinkat,         "readlinkat"    }, /* 4298 */
+       { 3,    TD|TF,  sys_fchmodat,           "fchmodat"      }, /* 4299 */
+       { 3,    TD|TF,  sys_faccessat,          "faccessat"     }, /* 4300 */
+       { 6,    TD,     sys_pselect6,           "pselect6"      }, /* 4301 */
+       { 5,    TD,     sys_ppoll,              "ppoll"         }, /* 4302 */
+       { 1,    TP,     sys_unshare,            "unshare"       }, /* 4303 */
+       { 6,    TD,     printargs,              "splice"        }, /* 4304 */
+       { 4,    TD,     printargs,              "sync_file_range" }, /* 4305 */
        { 0,    0,      printargs,              "SYS_4306"      }, /* 4306 */
        { 0,    0,      printargs,              "SYS_4307"      }, /* 4307 */
        { 0,    0,      printargs,              "SYS_4308"      }, /* 4308 */
index ebe8f2f11bde544ef15ad0ec6015f750e59862fd..a2de2609481bf0577adfccd42546f49e6430e0df 100644 (file)
        { 5,    0,      printargs,              "request_key"           }, /* 270 */
        { 5,    0,      printargs,              "keyctl"                }, /* 271 */
        { 5,    TP,     sys_waitid,             "waitid"                }, /* 272 */
-       { 5,    0,      printargs,              "SYS_273"               }, /* 273 */
-       { 5,    0,      printargs,              "SYS_274"               }, /* 274 */
-       { 5,    0,      printargs,              "SYS_275"               }, /* 275 */
-       { 5,    0,      printargs,              "SYS_276"               }, /* 276 */
-       { 5,    0,      printargs,              "SYS_277"               }, /* 277 */
-       { 5,    0,      printargs,              "SYS_278"               }, /* 278 */
-       { 5,    0,      printargs,              "SYS_279"               }, /* 279 */
-       { 5,    0,      printargs,              "SYS_280"               }, /* 280 */
-       { 5,    0,      printargs,              "SYS_281"               }, /* 281 */
-       { 5,    0,      printargs,              "SYS_282"               }, /* 282 */
-       { 5,    0,      printargs,              "SYS_283"               }, /* 283 */
-       { 5,    0,      printargs,              "SYS_284"               }, /* 284 */
-       { 5,    0,      printargs,              "SYS_285"               }, /* 285 */
-       { 5,    0,      printargs,              "SYS_286"               }, /* 286 */
-       { 5,    0,      printargs,              "SYS_287"               }, /* 287 */
-       { 5,    0,      printargs,              "SYS_288"               }, /* 288 */
-       { 5,    0,      printargs,              "SYS_289"               }, /* 289 */
-       { 5,    0,      printargs,              "SYS_290"               }, /* 290 */
-       { 5,    0,      printargs,              "SYS_291"               }, /* 291 */
-       { 5,    0,      printargs,              "SYS_292"               }, /* 292 */
-       { 5,    0,      printargs,              "SYS_293"               }, /* 293 */
-       { 5,    0,      printargs,              "SYS_294"               }, /* 294 */
-       { 5,    0,      printargs,              "SYS_295"               }, /* 295 */
-       { 5,    0,      printargs,              "SYS_296"               }, /* 296 */
-       { 5,    0,      printargs,              "SYS_297"               }, /* 297 */
-       { 5,    0,      printargs,              "SYS_298"               }, /* 298 */
-       { 5,    0,      printargs,              "SYS_299"               }, /* 299 */    { 5,    0,      printargs,              "SYS_300"               }, /* 300 */
+       { 3,    0,      printargs,              "ioprio_set"            }, /* 273 */
+       { 2,    0,      printargs,              "ioprio_get"            }, /* 274 */
+       { 0,    TD,     printargs,              "inotify_init"          }, /* 275 */
+       { 3,    TD,     sys_inotify_add_watch,  "inotify_add_watch"     }, /* 276 */
+       { 2,    TD,     sys_inotify_rm_watch,   "inotify_rm_watch"      }, /* 277 */
+       { 5,    0,      printargs,              "spu_run"               }, /* 278 */
+       { 5,    0,      printargs,              "spu_create"            }, /* 279 */
+       { 6,    TD,     sys_pselect6,           "pselect6"              }, /* 280 */
+       { 5,    TD,     sys_ppoll,              "ppoll"                 }, /* 281 */
+       { 1,    TP,     sys_unshare,            "unshare"               }, /* 282 */
+       { 6,    TD,     printargs,              "splice"                }, /* 283 */
+       { 4,    TD,     printargs,              "tee"                   }, /* 284 */
+       { 4,    TD,     printargs,              "vmsplice"              }, /* 285 */
+       { 4,    TD|TF,  sys_openat,             "openat"                }, /* 286 */
+       { 3,    TD|TF,  sys_mkdirat,            "mkdirat"               }, /* 287 */
+       { 4,    TD|TF,  sys_mknodat,            "mknodat"               }, /* 288 */
+       { 5,    TD|TF,  sys_fchownat,           "fchownat"              }, /* 289 */
+       { 3,    TD|TF,  sys_futimesat,          "futimesat"             }, /* 290 */
+       { 4,    TD|TD,  sys_newfstatat,         "newfstatat"            }, /* 291 */
+       { 3,    TD|TF,  sys_unlinkat,           "unlinkat"              }, /* 292 */
+       { 4,    TD|TF,  sys_renameat,           "renameat"              }, /* 293 */
+       { 5,    TD|TF,  sys_linkat,             "linkat"                }, /* 294 */
+       { 3,    TD|TF,  sys_symlinkat,          "symlinkat"             }, /* 295 */
+       { 4,    TD|TF,  sys_readlinkat,         "readlinkat"            }, /* 296 */
+       { 3,    TD|TF,  sys_fchmodat,           "fchmodat"              }, /* 297 */
+       { 3,    TD|TF,  sys_faccessat,          "faccessat"             }, /* 298 */
+       { 2,    0,      printargs,              "set_robust_list"       }, /* 299 */
+       { 3,    0,      printargs,              "get_robust_list"       }, /* 300 */
        { 5,    0,      printargs,              "SYS_301"               }, /* 301 */
        { 5,    0,      printargs,              "SYS_302"               }, /* 302 */
        { 5,    0,      printargs,              "SYS_303"               }, /* 303 */
index 51b2b9d8980dc3b12ef790e4d679aea33058c531..68ac10e872dd09da16137eeee32de4528113c986 100644 (file)
        { 5,    TP,     sys_waitid,             "waitid"        }, /* 281 */
        { 3,    0,      printargs,              "ioprio_set"    }, /* 282 */
        { 2,    0,      printargs,              "ioprio_get"    }, /* 283 */
-       { 0,    0,      printargs,              "inotify_init"  }, /* 284 */
-       { 3,    0,      printargs,              "inotify_add_watch" }, /* 285 */
-       { 2,    0,      printargs,              "inotify_rm_watch" }, /* 286 */
+       { 0,    TD,     printargs,              "inotify_init"  }, /* 284 */
+       { 3,    TD,     sys_inotify_add_watch,  "inotify_add_watch" }, /* 285 */
+       { 2,    TD,     sys_inotify_rm_watch,   "inotify_rm_watch" }, /* 286 */
+       { 4,    0,      printargs,              "migrate_pages" }, /* 287 */
+       { 4,    TD|TF,  sys_openat,             "openat"        }, /* 288 */
+       { 3,    TD|TF,  sys_mkdirat,            "mkdirat"       }, /* 289 */
+       { 4,    TD|TF,  sys_mknodat,            "mknodat"       }, /* 290 */
+       { 5,    TD|TF,  sys_fchownat,           "fchownat"      }, /* 291 */
+       { 3,    TD|TF,  sys_futimesat,          "futimesat"     }, /* 292 */
+       { 4,    TD|TD,  sys_newfstatat,         "fstatat64"     }, /* 293 */
+       { 3,    TD|TF,  sys_unlinkat,           "unlinkat"      }, /* 294 */
+       { 4,    TD|TF,  sys_renameat,           "renameat"      }, /* 295 */
+       { 5,    TD|TF,  sys_linkat,             "linkat"        }, /* 296 */
+       { 3,    TD|TF,  sys_symlinkat,          "symlinkat"     }, /* 297 */
+       { 4,    TD|TF,  sys_readlinkat,         "readlinkat"    }, /* 298 */
+       { 3,    TD|TF,  sys_fchmodat,           "fchmodat"      }, /* 299 */
+       { 3,    TD|TF,  sys_faccessat,          "faccessat"     }, /* 300 */
+       { 6,    TD,     sys_pselect6,           "pselect6"      }, /* 301 */
+       { 5,    TD,     sys_ppoll,              "ppoll"         }, /* 302 */
+       { 1,    TP,     sys_unshare,            "unshare"       }, /* 303 */
+       { 2,    0,      printargs,              "set_robust_list" }, /* 304 */
+       { 3,    0,      printargs,              "get_robust_list" }, /* 305 */
+       { 6,    TD,     printargs,              "splice"        }, /* 306 */
+       { 4,    TD,     printargs,              "sync_file_range" }, /* 307 */
+       { 4,    TD,     printargs,              "tee"           }, /* 308 */
+       { 4,    TD,     printargs,              "vmsplice"      }, /* 309 */
 
-       { 5,    0,      printargs,              "SYS_287"       }, /* 287 */
-       { 5,    0,      printargs,              "SYS_288"       }, /* 288 */
-       { 5,    0,      printargs,              "SYS_289"       }, /* 289 */
-       { 5,    0,      printargs,              "SYS_290"       }, /* 290 */
-       { 5,    0,      printargs,              "SYS_291"       }, /* 291 */
-       { 5,    0,      printargs,              "SYS_292"       }, /* 292 */
-       { 5,    0,      printargs,              "SYS_293"       }, /* 293 */
-       { 5,    0,      printargs,              "SYS_294"       }, /* 294 */
-       { 5,    0,      printargs,              "SYS_295"       }, /* 295 */
-       { 5,    0,      printargs,              "SYS_296"       }, /* 296 */
-       { 5,    0,      printargs,              "SYS_297"       }, /* 297 */
-       { 5,    0,      printargs,              "SYS_298"       }, /* 298 */
-       { 5,    0,      printargs,              "SYS_299"       }, /* 299 */
-       { 5,    0,      printargs,              "SYS_300"       }, /* 300 */
-       { 5,    0,      printargs,              "SYS_301"       }, /* 301 */
-       { 5,    0,      printargs,              "SYS_302"       }, /* 302 */
-       { 5,    0,      printargs,              "SYS_303"       }, /* 303 */
-       { 5,    0,      printargs,              "SYS_304"       }, /* 304 */
-       { 5,    0,      printargs,              "SYS_305"       }, /* 305 */
-       { 5,    0,      printargs,              "SYS_306"       }, /* 306 */
-       { 5,    0,      printargs,              "SYS_307"       }, /* 307 */
-       { 5,    0,      printargs,              "SYS_308"       }, /* 308 */
-       { 5,    0,      printargs,              "SYS_309"       }, /* 309 */
        { 5,    0,      printargs,              "SYS_310"       }, /* 310 */
        { 5,    0,      printargs,              "SYS_311"       }, /* 311 */
        { 5,    0,      printargs,              "SYS_312"       }, /* 312 */
index 58f8e71837796c6f0cc7d441e1d799984850311e..41ed98459bc4fa6482401a68bdad39846d043051 100644 (file)
        { 5,    TP,     sys_waitid,             "waitid"        }, /* 281 */
        { 3,    0,      printargs,              "ioprio_set"    }, /* 282 */
        { 2,    0,      printargs,              "ioprio_get"    }, /* 283 */
-       { 0,    0,      printargs,              "inotify_init"  }, /* 284 */
-       { 3,    0,      printargs,              "inotify_add_watch" }, /* 285 */
-       { 2,    0,      printargs,              "inotify_rm_watch" }, /* 286 */
+       { 0,    TD,     printargs,              "inotify_init"  }, /* 284 */
+       { 3,    TD,     sys_inotify_add_watch,  "inotify_add_watch" }, /* 285 */
+       { 2,    TD,     sys_inotify_rm_watch,   "inotify_rm_watch" }, /* 286 */
+       { 4,    0,      printargs,              "migrate_pages" }, /* 287 */
+       { 4,    TD|TF,  sys_openat,             "openat"        }, /* 288 */
+       { 3,    TD|TF,  sys_mkdirat,            "mkdirat"       }, /* 289 */
+       { 4,    TD|TF,  sys_mknodat,            "mknodat"       }, /* 290 */
+       { 5,    TD|TF,  sys_fchownat,           "fchownat"      }, /* 291 */
+       { 3,    TD|TF,  sys_futimesat,          "futimesat"     }, /* 292 */
+       { 4,    TD|TD,  sys_newfstatat,         "newfstatat"    }, /* 293 */
+       { 3,    TD|TF,  sys_unlinkat,           "unlinkat"      }, /* 294 */
+       { 4,    TD|TF,  sys_renameat,           "renameat"      }, /* 295 */
+       { 5,    TD|TF,  sys_linkat,             "linkat"        }, /* 296 */
+       { 3,    TD|TF,  sys_symlinkat,          "symlinkat"     }, /* 297 */
+       { 4,    TD|TF,  sys_readlinkat,         "readlinkat"    }, /* 298 */
+       { 3,    TD|TF,  sys_fchmodat,           "fchmodat"      }, /* 299 */
+       { 3,    TD|TF,  sys_faccessat,          "faccessat"     }, /* 300 */
+       { 6,    TD,     sys_pselect6,           "pselect6"      }, /* 301 */
+       { 5,    TD,     sys_ppoll,              "ppoll"         }, /* 302 */
+       { 1,    TP,     sys_unshare,            "unshare"       }, /* 303 */
+       { 2,    0,      printargs,              "set_robust_list" }, /* 304 */
+       { 3,    0,      printargs,              "get_robust_list" }, /* 305 */
+       { 6,    TD,     printargs,              "splice"        }, /* 306 */
+       { 4,    TD,     printargs,              "sync_file_range" }, /* 307 */
+       { 4,    TD,     printargs,              "tee"           }, /* 308 */
+       { 4,    TD,     printargs,              "vmsplice"      }, /* 309 */
 
-       { 5,    0,      printargs,              "SYS_287"       }, /* 287 */
-       { 5,    0,      printargs,              "SYS_288"       }, /* 288 */
-       { 5,    0,      printargs,              "SYS_289"       }, /* 289 */
-       { 5,    0,      printargs,              "SYS_290"       }, /* 290 */
-       { 5,    0,      printargs,              "SYS_291"       }, /* 291 */
-       { 5,    0,      printargs,              "SYS_292"       }, /* 292 */
-       { 5,    0,      printargs,              "SYS_293"       }, /* 293 */
-       { 5,    0,      printargs,              "SYS_294"       }, /* 294 */
-       { 5,    0,      printargs,              "SYS_295"       }, /* 295 */
-       { 5,    0,      printargs,              "SYS_296"       }, /* 296 */
-       { 5,    0,      printargs,              "SYS_297"       }, /* 297 */
-       { 5,    0,      printargs,              "SYS_298"       }, /* 298 */
-       { 5,    0,      printargs,              "SYS_299"       }, /* 299 */
-       { 5,    0,      printargs,              "SYS_300"       }, /* 300 */
-       { 5,    0,      printargs,              "SYS_301"       }, /* 301 */
-       { 5,    0,      printargs,              "SYS_302"       }, /* 302 */
-       { 5,    0,      printargs,              "SYS_303"       }, /* 303 */
-       { 5,    0,      printargs,              "SYS_304"       }, /* 304 */
-       { 5,    0,      printargs,              "SYS_305"       }, /* 305 */
-       { 5,    0,      printargs,              "SYS_306"       }, /* 306 */
-       { 5,    0,      printargs,              "SYS_307"       }, /* 307 */
-       { 5,    0,      printargs,              "SYS_308"       }, /* 308 */
-       { 5,    0,      printargs,              "SYS_309"       }, /* 309 */
        { 5,    0,      printargs,              "SYS_310"       }, /* 310 */
        { 5,    0,      printargs,              "SYS_311"       }, /* 311 */
        { 5,    0,      printargs,              "SYS_312"       }, /* 312 */
index 712cca9bd50483619205a33b61cc1e877f5beb31..005c82fb50a58b931c7781dbdfa06a0f195dcbd1 100644 (file)
@@ -1,4 +1,4 @@
-       { 01,   0,      sys_restart_syscall,"restart_syscall" },/* 0 */
+       { 0,    0,      sys_restart_syscall, "restart_syscall" },/* 0 */
        { 1,    TP,     sys_exit,       "exit" },               /* 1 */
        { 0,    TP,     sys_fork,       "fork" },               /* 2 */
        { 3,    TD,     sys_read,       "read" },               /* 3 */
        { 1,    0,      sys_timer_delete,"timer_delete" },      /* 265 */
        { 3,    0,      sys_timer_create,"timer_create" },      /* 266 */
        { 5,    0,      printargs,      "SYS_267" },            /* 267 */
-       { 5,    0,      printargs,      "SYS_268" },            /* 268 */
-       { 5,    0,      printargs,      "SYS_269" },            /* 269 */
-       { 5,    0,      printargs,      "SYS_270" },            /* 270 */
-       { 5,    0,      printargs,      "SYS_271" },            /* 271 */
-       { 5,    0,      printargs,      "SYS_272" },            /* 272 */
-       { 5,    0,      printargs,      "SYS_273" },            /* 273 */
-       { 5,    0,      printargs,      "SYS_274" },            /* 274 */
-       { 5,    0,      printargs,      "SYS_275" },            /* 275 */
-       { 5,    0,      printargs,      "SYS_276" },            /* 276 */
-       { 5,    0,      printargs,      "SYS_277" },            /* 277 */
-       { 5,    0,      printargs,      "SYS_278" },            /* 278 */
-       { 5,    0,      printargs,      "SYS_279" },            /* 279 */
-       { 5,    0,      printargs,      "SYS_280" },            /* 280 */
-       { 5,    0,      printargs,      "SYS_281" },            /* 281 */
-       { 5,    0,      printargs,      "SYS_282" },            /* 282 */
-       { 5,    0,      printargs,      "SYS_283" },            /* 283 */
-       { 5,    0,      printargs,      "SYS_284" },            /* 284 */
-       { 5,    0,      printargs,      "SYS_285" },            /* 285 */
-       { 5,    0,      printargs,      "SYS_286" },            /* 286 */
-       { 5,    0,      printargs,      "SYS_287" },            /* 287 */
-       { 5,    0,      printargs,      "SYS_288" },            /* 288 */
-       { 5,    0,      printargs,      "SYS_289" },            /* 289 */
-       { 5,    0,      printargs,      "SYS_290" },            /* 290 */
-       { 5,    0,      printargs,      "SYS_291" },            /* 291 */
-       { 5,    0,      printargs,      "SYS_292" },            /* 292 */
-       { 5,    0,      printargs,      "SYS_293" },            /* 293 */
-       { 5,    0,      printargs,      "SYS_294" },            /* 294 */
-       { 5,    0,      printargs,      "SYS_295" },            /* 295 */
-       { 5,    0,      printargs,      "SYS_296" },            /* 296 */
-       { 5,    0,      printargs,      "SYS_297" },            /* 297 */
-       { 5,    0,      printargs,      "SYS_298" },            /* 298 */
-       { 5,    0,      printargs,      "SYS_299" },            /* 299 */
-       { 5,    0,      printargs,      "SYS_300" },            /* 300 */
-       { 5,    0,      printargs,      "SYS_301" },            /* 301 */
+       { 2,    0,      sys_io_setup,           "io_setup"      }, /* 268 */
+       { 1,    0,      sys_io_destroy,         "io_destroy"    }, /* 269 */
+       { 3,    0,      sys_io_submit,          "io_submit"     }, /* 270 */
+       { 3,    0,      sys_io_cancel,          "io_cancel"     }, /* 271 */
+       { 5,    0,      sys_io_getevents,       "io_getevents"  }, /* 272 */
+       { 4,    0,      sys_mq_open,            "mq_open"       }, /* 273 */
+       { 1,    0,      sys_mq_unlink,          "mq_unlink"     }, /* 274 */
+       { 5,    0,      sys_mq_timedsend,       "mq_timedsend"  }, /* 275 */
+       { 5,    0,      sys_mq_timedreceive,    "mq_timedreceive" }, /* 276 */
+       { 2,    0,      sys_mq_notify,          "mq_notify"     }, /* 277 */
+       { 3,    0,      sys_mq_getsetattr,      "mq_getsetattr" }, /* 278 */
+       { 5,    TP,     sys_waitid,             "waitid"        }, /* 279 */
+       { 4,    TD,     printargs,              "tee"           }, /* 280 */
+       { 5,    0,      printargs,              "add_key"       }, /* 281 */
+       { 4,    0,      printargs,              "request_key"   }, /* 282 */
+       { 5,    0,      printargs,              "keyctl"        }, /* 283 */
+       { 4,    TD|TF,  sys_openat,             "openat"        }, /* 284 */
+       { 3,    TD|TF,  sys_mkdirat,            "mkdirat"       }, /* 285 */
+       { 4,    TD|TF,  sys_mknodat,            "mknodat"       }, /* 286 */
+       { 5,    TD|TF,  sys_fchownat,           "fchownat"      }, /* 287 */
+       { 3,    TD|TF,  sys_futimesat,          "futimesat"     }, /* 288 */
+       { 4,    TD|TD,  sys_newfstatat,         "fstatat64"     }, /* 289 */
+       { 3,    TD|TF,  sys_unlinkat,           "unlinkat"      }, /* 290 */
+       { 4,    TD|TF,  sys_renameat,           "renameat"      }, /* 291 */
+       { 5,    TD|TF,  sys_linkat,             "linkat"        }, /* 292 */
+       { 3,    TD|TF,  sys_symlinkat,          "symlinkat"     }, /* 293 */
+       { 4,    TD|TF,  sys_readlinkat,         "readlinkat"    }, /* 294 */
+       { 3,    TD|TF,  sys_fchmodat,           "fchmodat"      }, /* 295 */
+       { 3,    TD|TF,  sys_faccessat,          "faccessat"     }, /* 296 */
+       { 6,    TD,     sys_pselect6,           "pselect6"      }, /* 297 */
+       { 5,    TD,     sys_ppoll,              "ppoll"         }, /* 298 */
+       { 1,    TP,     sys_unshare,            "unshare"       }, /* 299 */
+       { 2,    0,      printargs,              "set_robust_list" }, /* 300 */
+       { 3,    0,      printargs,              "get_robust_list" }, /* 301 */
        { 5,    0,      printargs,      "SYS_302" },            /* 302 */
        { 5,    0,      printargs,      "SYS_303" },            /* 303 */
        { 5,    0,      printargs,      "SYS_304" },            /* 304 */
index 5b14c0c22a66722a05439e9232ff4b6e823200e7..005c82fb50a58b931c7781dbdfa06a0f195dcbd1 100644 (file)
        { 1,    0,      sys_timer_delete,"timer_delete" },      /* 265 */
        { 3,    0,      sys_timer_create,"timer_create" },      /* 266 */
        { 5,    0,      printargs,      "SYS_267" },            /* 267 */
-       { 5,    0,      printargs,      "SYS_268" },            /* 268 */
-       { 5,    0,      printargs,      "SYS_269" },            /* 269 */
-       { 5,    0,      printargs,      "SYS_270" },            /* 270 */
-       { 5,    0,      printargs,      "SYS_271" },            /* 271 */
-       { 5,    0,      printargs,      "SYS_272" },            /* 272 */
-       { 5,    0,      printargs,      "SYS_273" },            /* 273 */
-       { 5,    0,      printargs,      "SYS_274" },            /* 274 */
-       { 5,    0,      printargs,      "SYS_275" },            /* 275 */
-       { 5,    0,      printargs,      "SYS_276" },            /* 276 */
-       { 5,    0,      printargs,      "SYS_277" },            /* 277 */
-       { 5,    0,      printargs,      "SYS_278" },            /* 278 */
-       { 5,    0,      printargs,      "SYS_279" },            /* 279 */
-       { 5,    0,      printargs,      "SYS_280" },            /* 280 */
-       { 5,    0,      printargs,      "SYS_281" },            /* 281 */
-       { 5,    0,      printargs,      "SYS_282" },            /* 282 */
-       { 5,    0,      printargs,      "SYS_283" },            /* 283 */
-       { 5,    0,      printargs,      "SYS_284" },            /* 284 */
-       { 5,    0,      printargs,      "SYS_285" },            /* 285 */
-       { 5,    0,      printargs,      "SYS_286" },            /* 286 */
-       { 5,    0,      printargs,      "SYS_287" },            /* 287 */
-       { 5,    0,      printargs,      "SYS_288" },            /* 288 */
-       { 5,    0,      printargs,      "SYS_289" },            /* 289 */
-       { 5,    0,      printargs,      "SYS_290" },            /* 290 */
-       { 5,    0,      printargs,      "SYS_291" },            /* 291 */
-       { 5,    0,      printargs,      "SYS_292" },            /* 292 */
-       { 5,    0,      printargs,      "SYS_293" },            /* 293 */
-       { 5,    0,      printargs,      "SYS_294" },            /* 294 */
-       { 5,    0,      printargs,      "SYS_295" },            /* 295 */
-       { 5,    0,      printargs,      "SYS_296" },            /* 296 */
-       { 5,    0,      printargs,      "SYS_297" },            /* 297 */
-       { 5,    0,      printargs,      "SYS_298" },            /* 298 */
-       { 5,    0,      printargs,      "SYS_299" },            /* 299 */
-       { 5,    0,      printargs,      "SYS_300" },            /* 300 */
-       { 5,    0,      printargs,      "SYS_301" },            /* 301 */
+       { 2,    0,      sys_io_setup,           "io_setup"      }, /* 268 */
+       { 1,    0,      sys_io_destroy,         "io_destroy"    }, /* 269 */
+       { 3,    0,      sys_io_submit,          "io_submit"     }, /* 270 */
+       { 3,    0,      sys_io_cancel,          "io_cancel"     }, /* 271 */
+       { 5,    0,      sys_io_getevents,       "io_getevents"  }, /* 272 */
+       { 4,    0,      sys_mq_open,            "mq_open"       }, /* 273 */
+       { 1,    0,      sys_mq_unlink,          "mq_unlink"     }, /* 274 */
+       { 5,    0,      sys_mq_timedsend,       "mq_timedsend"  }, /* 275 */
+       { 5,    0,      sys_mq_timedreceive,    "mq_timedreceive" }, /* 276 */
+       { 2,    0,      sys_mq_notify,          "mq_notify"     }, /* 277 */
+       { 3,    0,      sys_mq_getsetattr,      "mq_getsetattr" }, /* 278 */
+       { 5,    TP,     sys_waitid,             "waitid"        }, /* 279 */
+       { 4,    TD,     printargs,              "tee"           }, /* 280 */
+       { 5,    0,      printargs,              "add_key"       }, /* 281 */
+       { 4,    0,      printargs,              "request_key"   }, /* 282 */
+       { 5,    0,      printargs,              "keyctl"        }, /* 283 */
+       { 4,    TD|TF,  sys_openat,             "openat"        }, /* 284 */
+       { 3,    TD|TF,  sys_mkdirat,            "mkdirat"       }, /* 285 */
+       { 4,    TD|TF,  sys_mknodat,            "mknodat"       }, /* 286 */
+       { 5,    TD|TF,  sys_fchownat,           "fchownat"      }, /* 287 */
+       { 3,    TD|TF,  sys_futimesat,          "futimesat"     }, /* 288 */
+       { 4,    TD|TD,  sys_newfstatat,         "fstatat64"     }, /* 289 */
+       { 3,    TD|TF,  sys_unlinkat,           "unlinkat"      }, /* 290 */
+       { 4,    TD|TF,  sys_renameat,           "renameat"      }, /* 291 */
+       { 5,    TD|TF,  sys_linkat,             "linkat"        }, /* 292 */
+       { 3,    TD|TF,  sys_symlinkat,          "symlinkat"     }, /* 293 */
+       { 4,    TD|TF,  sys_readlinkat,         "readlinkat"    }, /* 294 */
+       { 3,    TD|TF,  sys_fchmodat,           "fchmodat"      }, /* 295 */
+       { 3,    TD|TF,  sys_faccessat,          "faccessat"     }, /* 296 */
+       { 6,    TD,     sys_pselect6,           "pselect6"      }, /* 297 */
+       { 5,    TD,     sys_ppoll,              "ppoll"         }, /* 298 */
+       { 1,    TP,     sys_unshare,            "unshare"       }, /* 299 */
+       { 2,    0,      printargs,              "set_robust_list" }, /* 300 */
+       { 3,    0,      printargs,              "get_robust_list" }, /* 301 */
        { 5,    0,      printargs,      "SYS_302" },            /* 302 */
        { 5,    0,      printargs,      "SYS_303" },            /* 303 */
        { 5,    0,      printargs,      "SYS_304" },            /* 304 */
index f32644cd575c6841a2d8346302aa8d4b1ccfaf68..18984b222375e4b5d4a306d0be6ee6f9a673330d 100644 (file)
@@ -110,10 +110,30 @@ int sys_accept(), sys_getsockname(), sys_getpeername(), sys_socketpair();
 int sys_send(), sys_recv(), sys_sendto(), sys_recvfrom();
 int sys_shutdown(), sys_setsockopt(), sys_getsockopt();
 
+/* *at syscalls */
+int sys_fchmodat();
+int sys_newfstatat();
+int sys_unlinkat();
+int sys_fchownat();
+int sys_openat();
+int sys_renameat();
+int sys_symlinkat();
+int sys_readlinkat();
+int sys_linkat();
+int sys_faccessat();
+int sys_mkdirat();
+int sys_mknodat();
+int sys_futimesat();
+
 /* new ones */
 int sys_query_module();
 int sys_poll();
 int sys_mincore();
+int sys_inotify_add_watch();
+int sys_inotify_rm_watch();
+int sys_pselect6();
+int sys_ppoll();
+int sys_unshare();
 
 /* architecture-specific calls */
 #ifdef ALPHA
index 1634e6d89641ae72522d20446baa4a3411b3e745..ff20d75820d8b92121c97764b64f794d6010e5d2 100644 (file)
        { 5,    0,      printargs,              "sys_kexec_load" }, /* 283 */
        { 5,    TP,     sys_waitid,             "waitid", SYS_waitid }, /* 284 */
        { 5,    0,      printargs,              "SYS_285"       }, /* 285 */
-       { 5,    0,      printargs,              "SYS_286"       }, /* 286 */
-       { 5,    0,      printargs,              "SYS_287"       }, /* 287 */
-       { 5,    0,      printargs,              "SYS_288"       }, /* 288 */
-       { 5,    0,      printargs,              "SYS_289"       }, /* 289 */
-       { 5,    0,      printargs,              "SYS_290"       }, /* 290 */
-       { 5,    0,      printargs,              "SYS_291"       }, /* 291 */
-       { 5,    0,      printargs,              "SYS_292"       }, /* 292 */
-       { 5,    0,      printargs,              "SYS_293"       }, /* 293 */
-       { 5,    0,      printargs,              "SYS_294"       }, /* 294 */
-       { 5,    0,      printargs,              "SYS_295"       }, /* 295 */
-       { 5,    0,      printargs,              "SYS_296"       }, /* 296 */
-       { 5,    0,      printargs,              "SYS_297"       }, /* 297 */
-       { 5,    0,      printargs,              "SYS_298"       }, /* 298 */
-       { 5,    0,      printargs,              "SYS_299"       }, /* 299 */
-       { 5,    0,      printargs,              "SYS_300"       }, /* 300 */
-       { 5,    0,      printargs,              "SYS_301"       }, /* 301 */
-       { 5,    0,      printargs,              "SYS_302"       }, /* 302 */
-       { 5,    0,      printargs,              "SYS_303"       }, /* 303 */
-       { 5,    0,      printargs,              "SYS_304"       }, /* 304 */
-       { 5,    0,      printargs,              "SYS_305"       }, /* 305 */
-       { 5,    0,      printargs,              "SYS_306"       }, /* 306 */
-       { 5,    0,      printargs,              "SYS_307"       }, /* 307 */
-       { 5,    0,      printargs,              "SYS_308"       }, /* 308 */
-       { 5,    0,      printargs,              "SYS_309"       }, /* 309 */
-       { 5,    0,      printargs,              "SYS_310"       }, /* 310 */
-       { 5,    0,      printargs,              "SYS_311"       }, /* 311 */
-       { 5,    0,      printargs,              "SYS_312"       }, /* 312 */
-       { 5,    0,      printargs,              "SYS_313"       }, /* 313 */
-       { 5,    0,      printargs,              "SYS_314"       }, /* 314 */
-       { 5,    0,      printargs,              "SYS_315"       }, /* 315 */
-       { 5,    0,      printargs,              "SYS_316"       }, /* 316 */
+       { 5,    0,      printargs,              "add_key"       }, /* 286 */
+       { 4,    0,      printargs,              "request_key"   }, /* 287 */
+       { 5,    0,      printargs,              "keyctl"        }, /* 288 */
+       { 3,    0,      printargs,              "ioprio_set"    }, /* 289 */
+       { 2,    0,      printargs,              "ioprio_get"    }, /* 290 */
+       { 0,    TD,     printargs,              "inotify_init"  }, /* 291 */
+       { 3,    TD,     sys_inotify_add_watch,  "inotify_add_watch" }, /* 292 */
+       { 2,    TD,     sys_inotify_rm_watch,   "inotify_rm_watch" }, /* 293 */
+       { 4,    0,      printargs,              "migrate_pages" }, /* 294 */
+       { 4,    TD|TF,  sys_openat,             "openat"        }, /* 295 */
+       { 3,    TD|TF,  sys_mkdirat,            "mkdirat"       }, /* 296 */
+       { 4,    TD|TF,  sys_mknodat,            "mknodat"       }, /* 297 */
+       { 5,    TD|TF,  sys_fchownat,           "fchownat"      }, /* 298 */
+       { 3,    TD|TF,  sys_futimesat,          "futimesat"     }, /* 299 */
+       { 4,    TD|TD,  sys_newfstatat,         "fstatat64"     }, /* 300 */
+       { 3,    TD|TF,  sys_unlinkat,           "unlinkat"      }, /* 301 */
+       { 4,    TD|TF,  sys_renameat,           "renameat"      }, /* 302 */
+       { 5,    TD|TF,  sys_linkat,             "linkat"        }, /* 303 */
+       { 3,    TD|TF,  sys_symlinkat,          "symlinkat"     }, /* 304 */
+       { 4,    TD|TF,  sys_readlinkat,         "readlinkat"    }, /* 305 */
+       { 3,    TD|TF,  sys_fchmodat,           "fchmodat"      }, /* 306 */
+       { 3,    TD|TF,  sys_faccessat,          "faccessat"     }, /* 307 */
+       { 6,    TD,     sys_pselect6,           "pselect6"      }, /* 308 */
+       { 5,    TD,     sys_ppoll,              "ppoll"         }, /* 309 */
+       { 1,    TP,     sys_unshare,            "unshare"       }, /* 310 */
+       { 2,    0,      printargs,              "set_robust_list" }, /* 311 */
+       { 3,    0,      printargs,              "get_robust_list" }, /* 312 */
+       { 6,    TD,     printargs,              "splice"        }, /* 313 */
+       { 4,    TD,     printargs,              "sync_file_range" }, /* 314 */
+       { 4,    TD,     printargs,              "tee"           }, /* 315 */
+       { 4,    TD,     printargs,              "vmsplice"      }, /* 316 */
        { 5,    0,      printargs,              "SYS_317"       }, /* 317 */
        { 5,    0,      printargs,              "SYS_318"       }, /* 318 */
        { 5,    0,      printargs,              "SYS_319"       }, /* 319 */
index 1172c8af6d6efd1fb0d927cf2bd24c3b9ebca391..3f701b6f1507dd96df46cf3aee324d6e0c7dfa64 100644 (file)
        { 3,    0,      sys_mq_getsetattr,      "mq_getsetattr" }, /* 245 */
        { 5,    0,      printargs,              "kexec_load"    }, /* 246 */
        { 5,    TP,     sys_waitid,             "waitid"        }, /* 247 */
-       { 5,    0,      printargs,              "SYS_248"       }, /* 248 */
-       { 5,    0,      printargs,              "SYS_249"       }, /* 249 */
-       { 5,    0,      printargs,              "SYS_250"       }, /* 250 */
-       { 5,    0,      printargs,              "SYS_251"       }, /* 251 */
-       { 5,    0,      printargs,              "SYS_252"       }, /* 252 */
-       { 5,    0,      printargs,              "SYS_253"       }, /* 253 */
+       { 5,    0,      printargs,              "add_key"       }, /* 248 */
+       { 4,    0,      printargs,              "request_key"   }, /* 249 */
+       { 5,    0,      printargs,              "keyctl"        }, /* 250 */
+       { 3,    0,      printargs,              "ioprio_set"    }, /* 251 */
+       { 2,    0,      printargs,              "ioprio_get"    }, /* 252 */
+       { 0,    TD,     printargs,              "inotify_init"  }, /* 253 */
+       { 3,    TD,     sys_inotify_add_watch,  "inotify_add_watch" }, /* 254 */
+       { 2,    TD,     sys_inotify_rm_watch,   "inotify_rm_watch" }, /* 255 */
+       { 4,    0,      printargs,              "migrate_pages" }, /* 256 */
+       { 4,    TD|TF,  sys_openat,             "openat"        }, /* 257 */
+       { 3,    TD|TF,  sys_mkdirat,            "mkdirat"       }, /* 258 */
+       { 4,    TD|TF,  sys_mknodat,            "mknodat"       }, /* 259 */
+       { 5,    TD|TF,  sys_fchownat,           "fchownat"      }, /* 260 */
+       { 3,    TD|TF,  sys_futimesat,          "futimesat"     }, /* 261 */
+       { 4,    TD|TD,  sys_newfstatat,         "newfstatat"    }, /* 262 */
+       { 3,    TD|TF,  sys_unlinkat,           "unlinkat"      }, /* 263 */
+       { 4,    TD|TF,  sys_renameat,           "renameat"      }, /* 264 */
+       { 5,    TD|TF,  sys_linkat,             "linkat"        }, /* 265 */
+       { 3,    TD|TF,  sys_symlinkat,          "symlinkat"     }, /* 266 */
+       { 4,    TD|TF,  sys_readlinkat,         "readlinkat"    }, /* 267 */
+       { 3,    TD|TF,  sys_fchmodat,           "fchmodat"      }, /* 268 */
+       { 3,    TD|TF,  sys_faccessat,          "faccessat"     }, /* 269 */
+       { 6,    TD,     sys_pselect6,           "pselect6"      }, /* 270 */
+       { 5,    TD,     sys_ppoll,              "ppoll"         }, /* 271 */
+       { 1,    TP,     sys_unshare,            "unshare"       }, /* 272 */
+       { 2,    0,      printargs,              "set_robust_list" }, /* 273 */
+       { 3,    0,      printargs,              "get_robust_list" }, /* 274 */
+       { 6,    TD,     printargs,              "splice"        }, /* 275 */
+       { 4,    TD,     printargs,              "sync_file_range" }, /* 276 */
+       { 4,    TD,     printargs,              "tee"           }, /* 277 */
+       { 4,    TD,     printargs,              "vmsplice"      }, /* 278 */
index a0db041a852da9a3d6887db55f52714ee1cdd7ea..bea69a1b9e504e265d78f72ed4b4df94a79a73d8 100644 (file)
--- a/process.c
+++ b/process.c
@@ -605,6 +605,14 @@ struct tcb *tcp;
        }
        return 0;
 }
+
+int
+sys_unshare(struct tcb *tcp)
+{
+       if (entering(tcp))
+               printflags(clone_flags, tcp->u_arg[0], "CLONE_???");
+       return 0;
+}
 #endif
 
 int
index 520562e1bb1ac6c72e1f7c3e57ba777fd53493ea..fde89f28f19920e3a39e57c56fe6a8e0ae49587a 100644 (file)
--- a/signal.c
+++ b/signal.c
@@ -395,6 +395,19 @@ int nr;
        tprintf(signame(nr));
 }
 
+void
+print_sigset(struct tcb *tcp, long addr, int rt)
+{
+       sigset_t ss;
+
+       if (!addr)
+               tprintf("NULL");
+       else if (copy_sigset(tcp, addr, &ss) < 0)
+               tprintf("%#lx", addr);
+       else
+               printsigmask(&ss, rt);
+}
+
 #ifdef LINUX
 
 #ifndef ILL_ILLOPC
@@ -1652,8 +1665,6 @@ struct tcb *tcp;
                return RVAL_HEX | RVAL_STR;
        }
 #else /* !ALPHA */
-       sigset_t sigset;
-
        if (entering(tcp)) {
 #ifdef SVR4
                if (tcp->u_arg[0] == 0)
@@ -1662,24 +1673,16 @@ struct tcb *tcp;
 #endif /* SVR4 */
                printxval(sigprocmaskcmds, tcp->u_arg[0], "SIG_???");
                tprintf(", ");
-               if (!tcp->u_arg[1])
-                       tprintf("NULL, ");
-               else if (copy_sigset(tcp, tcp->u_arg[1], &sigset) < 0)
-                       tprintf("%#lx, ", tcp->u_arg[1]);
-               else {
-                       printsigmask(&sigset, 0);
-                       tprintf(", ");
-               }
+               print_sigset(tcp, tcp->u_arg[1], 0);
+               tprintf(", ");
        }
        else {
                if (!tcp->u_arg[2])
                        tprintf("NULL");
                else if (syserror(tcp))
                        tprintf("%#lx", tcp->u_arg[2]);
-               else if (copy_sigset(tcp, tcp->u_arg[2], &sigset) < 0)
-                       tprintf("[?]");
                else
-                       printsigmask(&sigset, 0);
+                       print_sigset(tcp, tcp->u_arg[2], 0);
        }
 #endif /* !ALPHA */
        return 0;
index f01fe999f95cf94dffee2119f233eb2663c67f6d..eb72d6228f8c0a86daccacb16b1209f43ca7b973 100644 (file)
--- a/stream.c
+++ b/stream.c
@@ -294,9 +294,8 @@ static const struct xlat pollflags[] = {
        { 0,            NULL            },
 };
 
-int
-sys_poll(tcp)
-struct tcb *tcp;
+static int
+decode_poll(struct tcb *tcp)
 {
        struct pollfd fds;
        unsigned nfds;
@@ -311,8 +310,8 @@ struct tcb *tcp;
        start = tcp->u_arg[0];
        end = start + size;
        if (nfds == 0 || size / sizeof(fds) != nfds || end < start) {
-               tprintf("%#lx, %d, %ld",
-                       tcp->u_arg[0], nfds, tcp->u_arg[2]);
+               tprintf("%#lx, %d, ",
+                       tcp->u_arg[0], nfds);
                return 0;
        }
        if (abbrev(tcp)) {
@@ -351,15 +350,41 @@ struct tcb *tcp;
        if (failed)
                tprintf(" %#lx", start);
        tprintf(", %d, ", nfds);
+       return 0;
+}
+
+int
+sys_poll(struct tcb *tcp)
+{
+       int rc = decode_poll(tcp);
+       if (exiting(tcp)) {
 #ifdef INFTIM
-       if (tcp->u_arg[2] == INFTIM)
-               tprintf("INFTIM");
-       else
+               if (tcp->u_arg[2] == INFTIM)
+                       tprintf("INFTIM");
+               else
 #endif
-               tprintf("%ld", tcp->u_arg[2]);
-       return 0;
+                       tprintf("%ld", tcp->u_arg[2]);
+       }
+       return rc;
 }
 
+#ifdef LINUX
+int
+sys_ppoll(struct tcb *tcp)
+{
+       int rc = decode_poll(tcp);
+       if (exiting(tcp)) {
+               struct timespec ts;
+               if (umove(tcp, tcp->u_arg[2], &ts) == 0)
+                       tprintf("{%lu, %lu}, ", ts.tv_sec, ts.tv_nsec);
+               else
+                       tprintf("{...}, ");
+               print_sigset(tcp, tcp->u_arg[3], 0);
+               tprintf(", %lu", tcp->u_arg[4]);
+       }
+       return rc;
+}
+#endif
 
 #else /* !HAVE_SYS_POLL_H */
 int