]> granicus.if.org Git - strace/commitdiff
Implement -e trace=%fstat option
authorEugene Syromyatnikov <evgsyr@gmail.com>
Mon, 17 Apr 2017 23:52:58 +0000 (01:52 +0200)
committerDmitry V. Levin <ldv@altlinux.org>
Fri, 21 Apr 2017 19:49:03 +0000 (19:49 +0000)
linux/*/syscallent*.h part is updated automatically by:

    sed -i -e '/TSTA.*fx\?stat/ s/TSTA,/TFST|&/' \
           -e 's/\(TD|TF|TFST|TSTA,\)[[:space:]]/\1/' linux/*/syscallent*.h

* sysent.h (TRACE_FSTAT): New macro.
* syscall.c: Alias TFST to TRACE_FSTAT around syscallent.h inclusion.
* qualify.c (lookup_class): Add TRACE_FSTAT for "%fstat".
* strace.1 (.SS Filtering): Add information about %fstat syscall class.
* NEWS: Mention this change.
* linux/32/syscallent.h (fstat64, fstatat64): Add TFST flag.
* linux/64/syscallent.h (fstat, newfstatat): Likewise.
* linux/aarch64/syscallent.h: Likewise.
* linux/ia64/syscallent.h: Likewise.
* linux/mips/syscallent-n32.h: Likewise.
* linux/mips/syscallent-n64.h: Likewise.
* linux/s390x/syscallent.h: Likewise.
* linux/x32/syscallent.h: Likewise.
* linux/x86_64/syscallent.h: Likewise.
* linux/arm/syscallent.h (fstat, fstat64, fstatat64, oldfstat): Likewise.
* linux/bfin/syscallent.h: Likewise.
* linux/crisv10/syscallent.h: Likewise.
* linux/i386/syscallent.h: Likewise.
* linux/m68k/syscallent.h: Likewise.
* linux/microblaze/syscallent.h: Likewise.
* linux/mips/syscallent-o32.h: Likewise.
* linux/powerpc/syscallent.h: Likewise.
* linux/sh64/syscallent.h: Likewise.
* linux/sh/syscallent.h: Likewise.
* linux/avr32/syscallent.h (fstat, fstat64, fstatat64): Likewise.
* linux/hppa/syscallent.h: Likewise.
* linux/s390/syscallent.h: Likewise.
* linux/sparc64/syscallent.h: Likewise.
* linux/sparc/syscallent.h: Likewise.
* linux/xtensa/syscallent.h: Likewise.
* linux/alpha/syscallent.h (fstat, fstat64, fstatat64, osf_fstat,
osf_old_fstat): Likewise.
* linux/powerpc64/syscallent.h (fstat, newfstatat, oldfstat): Likewise.
* linux/mips/syscallent-compat.h (bsd43_fstat, bsd43_oldfstat, posix_fstat,
svr4_fstat, sysv_fstat): Likewise.
* tests/gen_tests.in (trace_fstat): New entry.
* tests/trace_fstat.in: New file.
* tests/Makefile.am (EXTRA_DIST): Add it.
* tests/ksysent.c (TFST): New macro, defined to 0.
* tests/nsyscalls.c: Likewise.

38 files changed:
NEWS
linux/32/syscallent.h
linux/64/syscallent.h
linux/aarch64/syscallent.h
linux/alpha/syscallent.h
linux/arm/syscallent.h
linux/avr32/syscallent.h
linux/bfin/syscallent.h
linux/crisv10/syscallent.h
linux/hppa/syscallent.h
linux/i386/syscallent.h
linux/ia64/syscallent.h
linux/m68k/syscallent.h
linux/microblaze/syscallent.h
linux/mips/syscallent-compat.h
linux/mips/syscallent-n32.h
linux/mips/syscallent-n64.h
linux/mips/syscallent-o32.h
linux/powerpc/syscallent.h
linux/powerpc64/syscallent.h
linux/s390/syscallent.h
linux/s390x/syscallent.h
linux/sh/syscallent.h
linux/sh64/syscallent.h
linux/sparc/syscallent.h
linux/sparc64/syscallent.h
linux/x32/syscallent.h
linux/x86_64/syscallent.h
linux/xtensa/syscallent.h
qualify.c
strace.1
syscall.c
sysent.h
tests/Makefile.am
tests/gen_tests.in
tests/ksysent.c
tests/nsyscalls.c
tests/trace_fstat.in [new file with mode: 0644]

diff --git a/NEWS b/NEWS
index fd17e84d9757dfadc92b5c374e6c712850e08b58..b4414dc3489b17cf56287ace866776d4611c1d09 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -9,6 +9,8 @@ Noteworthy changes in release ?.?? (????-??-??)
 * Improvements
   * Optimized syscall filtering.
   * Enhanced decoding of sched_setattr syscall.
+  * Added -e trace=%fstat option for tracing variants of fstat and fstatat
+    syscalls.
   * Added -e trace=%%stat option for tracing syscalls used for querying file
     status information (stat, lstat, fstat, fstatat, statx, and their
     variations).
index bdabeba7eceadae07a90f46ae97157bdb4ed3a86..44315e0905caf88dde3cfcab5b2797a52124c7eb 100644 (file)
@@ -80,8 +80,8 @@
 [ 76] = { 6,   TD,             SEN(splice),                    "splice"                },
 [ 77] = { 4,   TD,             SEN(tee),                       "tee"                   },
 [ 78] = { 4,   TD|TF,          SEN(readlinkat),                "readlinkat"            },
-[ 79] = { 4,   TD|TF|TSTA,     SEN(fstatat64),                 "fstatat64"             },
-[ 80] = { 2,   TD|TSTA,        SEN(fstat64),                   "fstat64"               },
+[ 79] = { 4,   TD|TF|TFST|TSTA,SEN(fstatat64),                 "fstatat64"             },
+[ 80] = { 2,   TD|TFST|TSTA,   SEN(fstat64),                   "fstat64"               },
 [ 81] = { 0,   0,              SEN(sync),                      "sync"                  },
 [ 82] = { 1,   TD,             SEN(fsync),                     "fsync"                 },
 [ 83] = { 1,   TD,             SEN(fdatasync),                 "fdatasync"             },
index 80d4b85c2c05b9c1a0dbdd7cdcbea27cbfb9d99f..b5de2266ba8741700b26738178da6f6f58e1fdae 100644 (file)
@@ -77,8 +77,8 @@
 [ 76] = { 6,   TD,             SEN(splice),                    "splice"                },
 [ 77] = { 4,   TD,             SEN(tee),                       "tee"                   },
 [ 78] = { 4,   TD|TF,          SEN(readlinkat),                "readlinkat"            },
-[ 79] = { 4,   TD|TF|TSTA,     SEN(newfstatat),                "newfstatat"            },
-[ 80] = { 2,   TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[ 79] = { 4,   TD|TF|TFST|TSTA,SEN(newfstatat),                "newfstatat"            },
+[ 80] = { 2,   TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [ 81] = { 0,   0,              SEN(sync),                      "sync"                  },
 [ 82] = { 1,   TD,             SEN(fsync),                     "fsync"                 },
 [ 83] = { 1,   TD,             SEN(fdatasync),                 "fdatasync"             },
index 12c95a11511fce03f62c852fb4b1912b4acea4de..f01e584767a05985aa6197cb4dfee7a5fe15a0a4 100644 (file)
 [1048] = { 2,  TF,             SEN(truncate),          "truncate"      },
 [1049] = { 2,  TF|TSTA,        SEN(stat),              "stat"          },
 [1050] = { 2,  TF|TSTA,        SEN(lstat),             "lstat"         },
-[1051] = { 2,  TD|TSTA,        SEN(fstat),             "fstat"         },
+[1051] = { 2,  TD|TFST|TSTA,   SEN(fstat),             "fstat"         },
 [1052] = { 3,  TD,             SEN(fcntl),             "fcntl"         },
 [1053] = { 4,  TD,             SEN(fadvise64),         "fadvise64"     },
-[1054] = { 4,  TD|TF|TSTA,     SEN(newfstatat),        "newfstatat"    },
+[1054] = { 4,  TD|TF|TFST|TSTA,SEN(newfstatat),        "newfstatat"    },
 [1055] = { 2,  TD|TFSF|TSFA,   SEN(fstatfs),           "fstatfs"       },
 [1056] = { 2,  TF|TSF|TSFA,    SEN(statfs),            "statfs"        },
 [1057] = { 3,  TD,             SEN(lseek),             "lseek"         },
index 435cc057e3e270aad85ae0113d0b29e11f60c4eb..93ba5feabf92155b38580cbec28f0fae13f14fe5 100644 (file)
@@ -88,7 +88,7 @@
 [ 59] = { 3,   TF|TP|SE|SI,    SEN(execve),                    "execve"                },
 [ 60] = { 1,   NF,             SEN(umask),                     "umask"                 },
 [ 61] = { 1,   TF,             SEN(chroot),                    "chroot"                },
-[ 62] = { 5,   TD|TSTA,        SEN(printargs),                 "osf_old_fstat"         }, /* not implemented */
+[ 62] = { 5,   TD|TFST|TSTA,   SEN(printargs),                 "osf_old_fstat"         }, /* not implemented */
 [ 63] = { 0,   0,              SEN(getpgrp),                   "getpgrp"               },
 [ 64] = { 0,   0,              SEN(getpagesize),               "getpagesize"           },
 [ 65] = { 5,   TM,             SEN(printargs),                 "osf_mremap"            }, /* not implemented */
 [ 88] = { 2,   0,              SEN(sethostname),               "sethostname"           },
 [ 89] = { 0,   0,              SEN(getdtablesize),             "getdtablesize"         },
 [ 90] = { 2,   TD,             SEN(dup2),                      "dup2"                  },
-[ 91] = { 2,   TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[ 91] = { 2,   TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [ 92] = { 3,   TD,             SEN(fcntl),                     "fcntl"                 },
 [ 93] = { 5,   TD,             SEN(osf_select),                "osf_select"            },
 [ 94] = { 3,   TD,             SEN(poll),                      "poll"                  },
 [223] = { 5,   0,              SEN(printargs),                 "osf_kloadcall"         }, /* not implemented */
 [224] = { 2,   TF|TSTA,        SEN(printargs),                 "osf_stat"              },
 [225] = { 2,   TF|TSTA,        SEN(printargs),                 "osf_lstat"             },
-[226] = { 2,   TD|TSTA,        SEN(printargs),                 "osf_fstat"             },
+[226] = { 2,   TD|TFST|TSTA,   SEN(printargs),                 "osf_fstat"             },
 [227] = { 3,   TF|TSF|TSFA,    SEN(osf_statfs),                "osf_statfs64"          },
 [228] = { 3,   TD|TFSF|TSFA,   SEN(osf_fstatfs),               "osf_fstatfs64"         },
 [229 ... 232] = { },
 [424] = { 3,   TS,             SEN(tgkill),                    "tgkill"                },
 [425] = { 2,   TF|TSTA,        SEN(stat64),                    "stat64"                },
 [426] = { 2,   TF|TSTA,        SEN(lstat64),                   "lstat64"               },
-[427] = { 2,   TD|TSTA,        SEN(fstat64),                   "fstat64"               },
+[427] = { 2,   TD|TFST|TSTA,   SEN(fstat64),                   "fstat64"               },
 [428] = { 5,   0,              SEN(vserver),                   "vserver"               }, /* not implemented */
 [429] = { 6,   TM,             SEN(mbind),                     "mbind"                 }, /* not implemented */
 [430] = { 5,   TM,             SEN(get_mempolicy),             "get_mempolicy"         }, /* not implemented */
 [452] = { 4,   TD|TF,          SEN(mknodat),                   "mknodat"               },
 [453] = { 5,   TD|TF,          SEN(fchownat),                  "fchownat"              },
 [454] = { 3,   TD|TF,          SEN(futimesat),                 "futimesat"             },
-[455] = { 4,   TD|TF|TSTA,     SEN(fstatat64),                 "fstatat64"             },
+[455] = { 4,   TD|TF|TFST|TSTA,SEN(fstatat64),                 "fstatat64"             },
 [456] = { 3,   TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [457] = { 4,   TD|TF,          SEN(renameat),                  "renameat"              },
 [458] = { 5,   TD|TF,          SEN(linkat),                    "linkat"                },
index 328693a02679c7defbc896ecacdd68ff642b9b5e..bfd2bf821e5e49d9e0d54ec8fa7982c6f5001306 100644 (file)
@@ -54,7 +54,7 @@
 [ 25] = { 1,   0,              SEN(stime),                     "stime"                 },
 [ 26] = { 4,   0,              SEN(ptrace),                    "ptrace"                },
 [ 27] = { 1,   0,              SEN(alarm),                     "alarm"                 },
-[ 28] = { 2,   TD|TSTA,        SEN(oldfstat),                  "oldfstat"              },
+[ 28] = { 2,   TD|TFST|TSTA,   SEN(oldfstat),                  "oldfstat"              },
 [ 29] = { 0,   TS,             SEN(pause),                     "pause"                 },
 [ 30] = { 2,   TF,             SEN(utime),                     "utime"                 },
 [ 31] = { 2,   0,              SEN(stty),                      "stty"                  },
 [105] = { 2,   0,              SEN(getitimer),                 "getitimer"             },
 [106] = { 2,   TF|TSTA,        SEN(stat),                      "stat"                  },
 [107] = { 2,   TF|TSTA,        SEN(lstat),                     "lstat"                 },
-[108] = { 2,   TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[108] = { 2,   TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [109] = { 1,   0,              SEN(olduname),                  "olduname"              },
 [110] = { 1,   0,              SEN(iopl),                      "iopl"                  },
 [111] = { 0,   0,              SEN(vhangup),                   "vhangup"               },
 [194] = { 4,   TD,             SEN(ftruncate64),               "ftruncate64"           },
 [195] = { 2,   TF|TSTA,        SEN(stat64),                    "stat64"                },
 [196] = { 2,   TF|TSTA,        SEN(lstat64),                   "lstat64"               },
-[197] = { 2,   TD|TSTA,        SEN(fstat64),                   "fstat64"               },
+[197] = { 2,   TD|TFST|TSTA,   SEN(fstat64),                   "fstat64"               },
 [198] = { 3,   TF,             SEN(chown),                     "lchown32"              },
 [199] = { 0,   NF,             SEN(getuid),                    "getuid32"              },
 [200] = { 0,   NF,             SEN(getgid),                    "getgid32"              },
 [324] = { 4,   TD|TF,          SEN(mknodat),                   "mknodat"               },
 [325] = { 5,   TD|TF,          SEN(fchownat),                  "fchownat"              },
 [326] = { 3,   TD|TF,          SEN(futimesat),                 "futimesat"             },
-[327] = { 4,   TD|TF|TSTA,     SEN(fstatat64),                 "fstatat64"             },
+[327] = { 4,   TD|TF|TFST|TSTA,SEN(fstatat64),                 "fstatat64"             },
 [328] = { 3,   TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [329] = { 4,   TD|TF,          SEN(renameat),                  "renameat"              },
 [330] = { 5,   TD|TF,          SEN(linkat),                    "linkat"                },
index 366d71b71dc898fc036a300a1f3cf202658f8376..e126944b8f799bebdedef6395023c78a3b96215f 100644 (file)
@@ -56,7 +56,7 @@
 [ 28] = { 0,   TS,             SEN(pause),                     "pause"                 },
 [ 29] = { 2,   TF,             SEN(utime),                     "utime"                 },
 [ 30] = { 2,   TF|TSTA,        SEN(stat),                      "stat"                  },
-[ 31] = { 2,   TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[ 31] = { 2,   TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [ 32] = { 2,   TF|TSTA,        SEN(lstat),                     "lstat"                 },
 [ 33] = { 2,   TF,             SEN(access),                    "access"                },
 [ 34] = { 1,   TF,             SEN(chroot),                    "chroot"                },
 [167] = { 3,   TD,             SEN(ftruncate64),               "ftruncate64"           },
 [168] = { 2,   TF|TSTA,        SEN(stat64),                    "stat64"                },
 [169] = { 2,   TF|TSTA,        SEN(lstat64),                   "lstat64"               },
-[170] = { 2,   TD|TSTA,        SEN(fstat64),                   "fstat64"               },
+[170] = { 2,   TD|TFST|TSTA,   SEN(fstat64),                   "fstat64"               },
 [171] = { 2,   TF,             SEN(pivotroot),                 "pivot_root"            },
 [172] = { 3,   TM,             SEN(mincore),                   "mincore"               },
 [173] = { 3,   TM,             SEN(madvise),                   "madvise"               },
 [245] = { 4,   TD|TF,          SEN(mknodat),                   "mknodat"               },
 [246] = { 5,   TD|TF,          SEN(fchownat),                  "fchownat"              },
 [247] = { 3,   TD|TF,          SEN(futimesat),                 "futimesat"             },
-[248] = { 4,   TD|TF|TSTA,     SEN(fstatat64),                 "fstatat64"             },
+[248] = { 4,   TD|TF|TFST|TSTA,SEN(fstatat64),                 "fstatat64"             },
 [249] = { 3,   TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [250] = { 4,   TD|TF,          SEN(renameat),                  "renameat"              },
 [251] = { 5,   TD|TF,          SEN(linkat),                    "linkat"                },
index 2c6b91aceb12d1653f66a717574b287f68da16ea..586769b144287edde7f4e20b2c00cdff77284553 100644 (file)
@@ -54,7 +54,7 @@
 [ 25] = { 1,   0,              SEN(stime),                     "stime"                 },
 [ 26] = { 4,   0,              SEN(ptrace),                    "ptrace"                },
 [ 27] = { 1,   0,              SEN(alarm),                     "alarm"                 },
-[ 28] = { 2,   TD|TSTA,        SEN(oldfstat),                  "oldfstat"              },
+[ 28] = { 2,   TD|TFST|TSTA,   SEN(oldfstat),                  "oldfstat"              },
 [ 29] = { 0,   TS,             SEN(pause),                     "pause"                 },
 [ 30] = { 2,   TF,             SEN(utime),                     "utime"                 },
 [ 31] = { 2,   0,              SEN(stty),                      "stty"                  },
 [105] = { 2,   0,              SEN(getitimer),                 "getitimer"             },
 [106] = { 2,   TF|TSTA,        SEN(stat),                      "stat"                  },
 [107] = { 2,   TF|TSTA,        SEN(lstat),                     "lstat"                 },
-[108] = { 2,   TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[108] = { 2,   TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [109] = { 1,   0,              SEN(olduname),                  "olduname"              },
 [110] = { 1,   0,              SEN(iopl),                      "iopl"                  },
 [111] = { 0,   0,              SEN(vhangup),                   "vhangup"               },
 [194] = { 3,   TD,             SEN(ftruncate64),               "ftruncate64"           },
 [195] = { 2,   TF|TSTA,        SEN(stat64),                    "stat64"                },
 [196] = { 2,   TF|TSTA,        SEN(lstat64),                   "lstat64"               },
-[197] = { 2,   TD|TSTA,        SEN(fstat64),                   "fstat64"               },
+[197] = { 2,   TD|TFST|TSTA,   SEN(fstat64),                   "fstat64"               },
 [198] = { 3,   TF,             SEN(chown),                     "chown32"               },
 [199] = { 0,   NF,             SEN(getuid),                    "getuid32"              },
 [200] = { 0,   NF,             SEN(getgid),                    "getgid32"              },
 [297] = { 4,   TD|TF,          SEN(mknodat),                   "mknodat"               },
 [298] = { 5,   TD|TF,          SEN(fchownat),                  "fchownat"              },
 [299] = { 3,   TD|TF,          SEN(futimesat),                 "futimesat"             },
-[300] = { 4,   TD|TF|TSTA,     SEN(fstatat64),                 "fstatat64"             },
+[300] = { 4,   TD|TF|TFST|TSTA,SEN(fstatat64),                 "fstatat64"             },
 [301] = { 3,   TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [302] = { 4,   TD|TF,          SEN(renameat),                  "renameat"              },
 [303] = { 5,   TD|TF,          SEN(linkat),                    "linkat"                },
index ceae91c3612114192e6aee69f169b46691f6c3c5..17557c0bcaf820b7772374770181e41d0238c230 100644 (file)
@@ -26,7 +26,7 @@
 [ 25] = { 1,   0,              SEN(stime),                     "stime"                 },
 [ 26] = { 4,   0,              SEN(ptrace),                    "ptrace"                },
 [ 27] = { 1,   0,              SEN(alarm),                     "alarm"                 },
-[ 28] = { 2,   TD|TSTA,        SEN(oldfstat),                  "oldfstat"              },
+[ 28] = { 2,   TD|TFST|TSTA,   SEN(oldfstat),                  "oldfstat"              },
 [ 29] = { 0,   TS,             SEN(pause),                     "pause"                 },
 [ 30] = { 2,   TF,             SEN(utime),                     "utime"                 },
 [ 31] = { 2,   0,              SEN(stty),                      "stty"                  },
 [105] = { 2,   0,              SEN(getitimer),                 "getitimer"             },
 [106] = { 2,   TF|TSTA,        SEN(stat),                      "stat"                  },
 [107] = { 2,   TF|TSTA,        SEN(lstat),                     "lstat"                 },
-[108] = { 2,   TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[108] = { 2,   TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [109] = { 1,   0,              SEN(olduname),                  "olduname"              },
 [110] = { 1,   0,              SEN(iopl),                      "iopl"                  },
 [111] = { 0,   0,              SEN(vhangup),                   "vhangup"               },
 [194] = { 3,   TD,             SEN(ftruncate64),               "ftruncate64"           },
 [195] = { 2,   TF|TSTA,        SEN(stat64),                    "stat64"                },
 [196] = { 2,   TF|TSTA,        SEN(lstat64),                   "lstat64"               },
-[197] = { 2,   TD|TSTA,        SEN(fstat64),                   "fstat64"               },
+[197] = { 2,   TD|TFST|TSTA,   SEN(fstat64),                   "fstat64"               },
 [198] = { 3,   TF,             SEN(chown),                     "lchown32"              },
 [199] = { 0,   NF,             SEN(getuid),                    "getuid32"              },
 [200] = { 0,   NF,             SEN(getgid),                    "getgid32"              },
 [297] = { 4,   TD|TF,          SEN(mknodat),                   "mknodat"               },
 [298] = { 5,   TD|TF,          SEN(fchownat),                  "fchownat"              },
 [299] = { 3,   TD|TF,          SEN(futimesat),                 "futimesat"             },
-[300] = { 4,   TD|TF|TSTA,     SEN(fstatat64),                 "fstatat64"             },
+[300] = { 4,   TD|TF|TFST|TSTA,SEN(fstatat64),                 "fstatat64"             },
 [301] = { 3,   TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [302] = { 4,   TD|TF,          SEN(renameat),                  "renameat"              },
 [303] = { 5,   TD|TF,          SEN(linkat),                    "linkat"                },
index 5beb5e41a2ae7bd3cce805c433acfc75f945941a..b43fc3ff98389562d51b637e0297aff71e78fef4 100644 (file)
@@ -30,7 +30,7 @@
 [ 25] = { 1,   0,              SEN(stime),                     "stime"                 },
 [ 26] = { 4,   0,              SEN(ptrace),                    "ptrace"                },
 [ 27] = { 1,   0,              SEN(alarm),                     "alarm"                 },
-[ 28] = { 2,   TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[ 28] = { 2,   TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [ 29] = { 0,   TS,             SEN(pause),                     "pause"                 },
 [ 30] = { 2,   TF,             SEN(utime),                     "utime"                 },
 [ 31] = { 3,   TN,             SEN(connect),                   "connect"               },
 [109] = { 5,   TD,             SEN(pwrite),                    "pwrite64"              },
 [110] = { 2,   TF,             SEN(getcwd),                    "getcwd"                },
 [111] = { 0,   0,              SEN(vhangup),                   "vhangup"               },
-[112] = { 2,   TD|TSTA,        SEN(fstat64),                   "fstat64"               },
+[112] = { 2,   TD|TFST|TSTA,   SEN(fstat64),                   "fstat64"               },
 [113] = { 0,   TP,             SEN(vfork),                     "vfork"                 },
 [114] = { 4,   TP,             SEN(wait4),                     "wait4"                 },
 [115] = { 1,   TF,             SEN(swapoff),                   "swapoff"               },
 [277] = { 4,   TD|TF,          SEN(mknodat),                   "mknodat"               },
 [278] = { 5,   TD|TF,          SEN(fchownat),                  "fchownat"              },
 [279] = { 3,   TD|TF,          SEN(futimesat),                 "futimesat"             },
-[280] = { 4,   TD|TF|TSTA,     SEN(fstatat64),                 "fstatat64"             },
+[280] = { 4,   TD|TF|TFST|TSTA,SEN(fstatat64),                 "fstatat64"             },
 [281] = { 3,   TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [282] = { 4,   TD|TF,          SEN(renameat),                  "renameat"              },
 [283] = { 5,   TD|TF,          SEN(linkat),                    "linkat"                },
index a63cd98fa25ce1412ac8daa966b0f60371128326..e18faa2695f83db225cd22c05afae17e28b90c44 100644 (file)
@@ -54,7 +54,7 @@
 [ 25] = { 1,   0,              SEN(stime),                     "stime"                 },
 [ 26] = { 4,   0,              SEN(ptrace),                    "ptrace"                },
 [ 27] = { 1,   0,              SEN(alarm),                     "alarm"                 },
-[ 28] = { 2,   TD|TSTA,        SEN(oldfstat),                  "oldfstat"              },
+[ 28] = { 2,   TD|TFST|TSTA,   SEN(oldfstat),                  "oldfstat"              },
 [ 29] = { 0,   TS,             SEN(pause),                     "pause"                 },
 [ 30] = { 2,   TF,             SEN(utime),                     "utime"                 },
 [ 31] = { 2,   0,              SEN(stty),                      "stty"                  },
 [105] = { 2,   0,              SEN(getitimer),                 "getitimer"             },
 [106] = { 2,   TF|TSTA,        SEN(stat),                      "stat"                  },
 [107] = { 2,   TF|TSTA,        SEN(lstat),                     "lstat"                 },
-[108] = { 2,   TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[108] = { 2,   TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [109] = { 1,   0,              SEN(olduname),                  "olduname"              },
 [110] = { 1,   0,              SEN(iopl),                      "iopl"                  },
 [111] = { 0,   0,              SEN(vhangup),                   "vhangup"               },
 [194] = { 3,   TD,             SEN(ftruncate64),               "ftruncate64"           },
 [195] = { 2,   TF|TSTA,        SEN(stat64),                    "stat64"                },
 [196] = { 2,   TF|TSTA,        SEN(lstat64),                   "lstat64"               },
-[197] = { 2,   TD|TSTA,        SEN(fstat64),                   "fstat64"               },
+[197] = { 2,   TD|TFST|TSTA,   SEN(fstat64),                   "fstat64"               },
 [198] = { 3,   TF,             SEN(chown),                     "lchown32"              },
 [199] = { 0,   NF,             SEN(getuid),                    "getuid32"              },
 [200] = { 0,   NF,             SEN(getgid),                    "getgid32"              },
 [297] = { 4,   TD|TF,          SEN(mknodat),                   "mknodat"               },
 [298] = { 5,   TD|TF,          SEN(fchownat),                  "fchownat"              },
 [299] = { 3,   TD|TF,          SEN(futimesat),                 "futimesat"             },
-[300] = { 4,   TD|TF|TSTA,     SEN(fstatat64),                 "fstatat64"             },
+[300] = { 4,   TD|TF|TFST|TSTA,SEN(fstatat64),                 "fstatat64"             },
 [301] = { 3,   TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [302] = { 4,   TD|TF,          SEN(renameat),                  "renameat"              },
 [303] = { 5,   TD|TF,          SEN(linkat),                    "linkat"                },
index 8b951546974c93140f248e4fa3eda0e91866d66a..4aa73b846158cd6f4418afc8cf249697d75fede6 100644 (file)
 [1119] = { 2,  0,              SEN(getitimer),                 "getitimer"             },
 [1120] = { 2,  TF|TSTA,        SEN(stat),                      "stat"                  },
 [1121] = { 2,  TF|TSTA,        SEN(lstat),                     "lstat"                 },
-[1122] = { 2,  TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[1122] = { 2,  TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [1123] = { 0,  0,              SEN(vhangup),                   "vhangup"               },
 [1124] = { 3,  TF,             SEN(chown),                     "lchown"                },
 [1125] = { 5,  TM|SI,          SEN(remap_file_pages),          "remap_file_pages"      },
 [1209] = { 3,  TM,             SEN(madvise),                   "madvise"               },
 [1210] = { 2,  TF|TSTA,        SEN(stat),                      "stat"                  },
 [1211] = { 2,  TF|TSTA,        SEN(lstat),                     "lstat"                 },
-[1212] = { 2,  TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[1212] = { 2,  TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [1213] = { 6,  TP,             SEN(clone),                     "clone2"                },
 [1214] = { 3,  TD,             SEN(getdents64),                "getdents64"            },
 [1215] = { 2,  0,              SEN(printargs),                 "getunwind"             },
 [1283] = { 4,  TD|TF,          SEN(mknodat),                   "mknodat"               },
 [1284] = { 5,  TD|TF,          SEN(fchownat),                  "fchownat"              },
 [1285] = { 3,  TD|TF,          SEN(futimesat),                 "futimesat"             },
-[1286] = { 4,  TD|TF|TSTA,     SEN(newfstatat),                "newfstatat"            },
+[1286] = { 4,  TD|TF|TFST|TSTA,SEN(newfstatat),                "newfstatat"            },
 [1287] = { 3,  TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [1288] = { 4,  TD|TF,          SEN(renameat),                  "renameat"              },
 [1289] = { 5,  TD|TF,          SEN(linkat),                    "linkat"                },
index fd7448bcb387f20bb5b320ea75a5804440399e15..3ce630b6a6faeb497e7127ff88657a43d7010c21 100644 (file)
@@ -54,7 +54,7 @@
 [ 25] = { 1,   0,              SEN(stime),                     "stime"                 },
 [ 26] = { 4,   0,              SEN(ptrace),                    "ptrace"                },
 [ 27] = { 1,   0,              SEN(alarm),                     "alarm"                 },
-[ 28] = { 2,   TD|TSTA,        SEN(oldfstat),                  "oldfstat"              },
+[ 28] = { 2,   TD|TFST|TSTA,   SEN(oldfstat),                  "oldfstat"              },
 [ 29] = { 0,   TS,             SEN(pause),                     "pause"                 },
 [ 30] = { 2,   TF,             SEN(utime),                     "utime"                 },
 [ 31] = { 2,   0,              SEN(stty),                      "stty"                  },
 [105] = { 2,   0,              SEN(getitimer),                 "getitimer"             },
 [106] = { 2,   TF|TSTA,        SEN(stat),                      "stat"                  },
 [107] = { 2,   TF|TSTA,        SEN(lstat),                     "lstat"                 },
-[108] = { 2,   TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[108] = { 2,   TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [109] = { 1,   0,              SEN(olduname),                  "olduname"              },
 [110] = { 1,   0,              SEN(iopl),                      "iopl"                  },
 [111] = { 0,   0,              SEN(vhangup),                   "vhangup"               },
 [194] = { 3,   TD,             SEN(ftruncate64),               "ftruncate64"           },
 [195] = { 2,   TF|TSTA,        SEN(stat64),                    "stat64"                },
 [196] = { 2,   TF|TSTA,        SEN(lstat64),                   "lstat64"               },
-[197] = { 2,   TD|TSTA,        SEN(fstat64),                   "fstat64"               },
+[197] = { 2,   TD|TFST|TSTA,   SEN(fstat64),                   "fstat64"               },
 [198] = { 3,   TF,             SEN(chown),                     "chown32"               },
 [199] = { 0,   NF,             SEN(getuid),                    "getuid32"              },
 [200] = { 0,   NF,             SEN(getgid),                    "getgid32"              },
 [290] = { 4,   TD|TF,          SEN(mknodat),                   "mknodat"               },
 [291] = { 5,   TD|TF,          SEN(fchownat),                  "fchownat"              },
 [292] = { 3,   TD|TF,          SEN(futimesat),                 "futimesat"             },
-[293] = { 4,   TD|TF|TSTA,     SEN(fstatat64),                 "fstatat64"             },
+[293] = { 4,   TD|TF|TFST|TSTA,SEN(fstatat64),                 "fstatat64"             },
 [294] = { 3,   TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [295] = { 4,   TD|TF,          SEN(renameat),                  "renameat"              },
 [296] = { 5,   TD|TF,          SEN(linkat),                    "linkat"                },
index 4abe6ef187a4ad5157cc390a4ac07db942d53de3..22c3a47ce674bce505bfddf6e15f19cd76a3b766 100644 (file)
@@ -54,7 +54,7 @@
 [ 25] = { 1,   0,              SEN(stime),                     "stime"                 },
 [ 26] = { 4,   0,              SEN(ptrace),                    "ptrace"                },
 [ 27] = { 1,   0,              SEN(alarm),                     "alarm"                 },
-[ 28] = { 2,   TD|TSTA,        SEN(oldfstat),                  "oldfstat"              },
+[ 28] = { 2,   TD|TFST|TSTA,   SEN(oldfstat),                  "oldfstat"              },
 [ 29] = { 0,   TS,             SEN(pause),                     "pause"                 },
 [ 30] = { 2,   TF,             SEN(utime),                     "utime"                 },
 [ 31] = { 2,   0,              SEN(stty),                      "stty"                  },
 [105] = { 2,   0,              SEN(getitimer),                 "getitimer"             },
 [106] = { 2,   TF|TSTA,        SEN(stat),                      "stat"                  },
 [107] = { 2,   TF|TSTA,        SEN(lstat),                     "lstat"                 },
-[108] = { 2,   TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[108] = { 2,   TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [109] = { 1,   0,              SEN(olduname),                  "olduname"              },
 [110] = { 1,   0,              SEN(iopl),                      "iopl"                  },
 [111] = { 0,   0,              SEN(vhangup),                   "vhangup"               },
 [194] = { 3,   TD,             SEN(ftruncate64),               "ftruncate64"           },
 [195] = { 2,   TF|TSTA,        SEN(stat64),                    "stat64"                },
 [196] = { 2,   TF|TSTA,        SEN(lstat64),                   "lstat64"               },
-[197] = { 2,   TD|TSTA,        SEN(fstat64),                   "fstat64"               },
+[197] = { 2,   TD|TFST|TSTA,   SEN(fstat64),                   "fstat64"               },
 [198] = { 3,   TF,             SEN(chown),                     "lchown32"              },
 [199] = { 0,   NF,             SEN(getuid),                    "getuid32"              },
 [200] = { 0,   NF,             SEN(getgid),                    "getgid32"              },
 [297] = { 4,   TD|TF,          SEN(mknodat),                   "mknodat"               },
 [298] = { 5,   TD|TF,          SEN(fchownat),                  "fchownat"              },
 [299] = { 3,   TD|TF,          SEN(futimesat),                 "futimesat"             },
-[300] = { 4,   TD|TF|TSTA,     SEN(fstatat64),                 "fstatat64"             },
+[300] = { 4,   TD|TF|TFST|TSTA,SEN(fstatat64),                 "fstatat64"             },
 [301] = { 3,   TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [302] = { 4,   TD|TF,          SEN(renameat),                  "renameat"              },
 [303] = { 5,   TD|TF,          SEN(linkat),                    "linkat"                },
index 21182ff590b5cfe7b8bfc3b68f950c50b4a1a297..54cfa0a8c834fdad75163bd64166017001c42fbf 100644 (file)
@@ -26,7 +26,7 @@
 [  25] = { 0,  0,      SEN(printargs),         "svr4_stime"    },
 [  26] = { 0,  0,      SEN(printargs),         "svr4_ptrace"   },
 [  27] = { 0,  0,      SEN(printargs),         "svr4_alarm"    },
-[  28] = { 0,  TD|TSTA,SEN(printargs),         "svr4_fstat"    },
+[  28] = { 0,  TD|TFST|TSTA,SEN(printargs),            "svr4_fstat"    },
 [  29] = { 0,  0,      SEN(printargs),         "svr4_pause"    },
 [  30] = { 0,  0,      SEN(printargs),         "svr4_utime"    },
 [  31] = { 0,  0,      SEN(printargs),         "svr4_stty"     },
 [ 122] = { 0,  0,      SEN(printargs),         "svr4_writev"   },
 [ 123] = { 0,  TF|TSTA,SEN(printargs),         "svr4_xstat"    },
 [ 124] = { 0,  TF|TSTA,SEN(printargs),         "svr4_lxstat"   },
-[ 125] = { 0,  TD|TSTA,SEN(printargs),         "svr4_fxstat"   },
+[ 125] = { 0,  TD|TFST|TSTA,SEN(printargs),            "svr4_fxstat"   },
 [ 126] = { 0,  0,      SEN(printargs),         "svr4_xmknod"   },
 [ 127] = { 0,  0,      SEN(printargs),         "svr4_clocal"   },
 [ 128] = { 0,  0,      SEN(printargs),         "svr4_setrlimit"        },
 [1025] = { 0,  0,      SEN(printargs),         "sysv_stime"    },
 [1026] = { 0,  0,      SEN(printargs),         "sysv_ptrace"   },
 [1027] = { 0,  0,      SEN(printargs),         "sysv_alarm"    },
-[1028] = { 0,  TD|TSTA,SEN(printargs),         "sysv_fstat"    },
+[1028] = { 0,  TD|TFST|TSTA,SEN(printargs),            "sysv_fstat"    },
 [1029] = { 0,  0,      SEN(printargs),         "sysv_pause"    },
 [1030] = { 0,  0,      SEN(printargs),         "sysv_utime"    },
 [1031] = { 0,  0,      SEN(printargs),         "sysv_stty"     },
 [1157] = { 0,  0,      SEN(printargs),         "sysv_nuname"   },
 [1158] = { 0,  TF|TSTA,SEN(printargs),         "sysv_xstat"    },
 [1159] = { 0,  TF|TSTA,SEN(printargs),         "sysv_lxstat"   },
-[1160] = { 0,  TD|TSTA,SEN(printargs),         "sysv_fxstat"   },
+[1160] = { 0,  TD|TFST|TSTA,SEN(printargs),            "sysv_fxstat"   },
 [1161] = { 0,  0,      SEN(printargs),         "sysv_xmknod"   },
 [1162] = { 0,  0,      SEN(printargs),         "sysv_ksigaction"       },
 [1163] = { 0,  0,      SEN(printargs),         "sysv_sigpending"       },
 [2025] = { 0,  0,      SEN(printargs),         "bsd43_stime"   },
 [2026] = { 0,  0,      SEN(printargs),         "bsd43_ptrace"  },
 [2027] = { 0,  0,      SEN(printargs),         "bsd43_alarm"   },
-[2028] = { 0,  TD|TSTA,SEN(printargs),         "bsd43_oldfstat"        },
+[2028] = { 0,  TD|TFST|TSTA,SEN(printargs),            "bsd43_oldfstat"        },
 [2029] = { 0,  0,      SEN(printargs),         "bsd43_pause"   },
 [2030] = { 0,  0,      SEN(printargs),         "bsd43_utime"   },
 [2031] = { 0,  0,      SEN(printargs),         "bsd43_stty"    },
 [2059] = { 0,  0,      SEN(printargs),         "bsd43_execve"  },
 [2060] = { 0,  0,      SEN(printargs),         "bsd43_umask"   },
 [2061] = { 0,  0,      SEN(printargs),         "bsd43_chroot"  },
-[2062] = { 0,  TD|TSTA,SEN(printargs),         "bsd43_fstat"   },
+[2062] = { 0,  TD|TFST|TSTA,SEN(printargs),            "bsd43_fstat"   },
 [2063] = { },
 [2064] = { 0,  0,      SEN(printargs),         "bsd43_getpagesize"     },
 [2065] = { 0,  TM|SI,  SEN(printargs),         "bsd43_mremap"  },
 [3025] = { 0,  0,      SEN(printargs),         "posix_stime"   },
 [3026] = { 0,  0,      SEN(printargs),         "posix_ptrace"  },
 [3027] = { 0,  0,      SEN(printargs),         "posix_alarm"   },
-[3028] = { 0,  TD|TSTA,SEN(printargs),         "posix_fstat"   },
+[3028] = { 0,  TD|TFST|TSTA,SEN(printargs),            "posix_fstat"   },
 [3029] = { 0,  0,      SEN(printargs),         "posix_pause"   },
 [3030] = { 0,  0,      SEN(printargs),         "posix_utime"   },
 [3031] = { 0,  0,      SEN(printargs),         "posix_stty"    },
index 9dbc1363964376a87f5b1e587235ca39b5c8d3e0..6194a842f00d8930ae6dc13958e70dfe7535fc2a 100644 (file)
@@ -5,7 +5,7 @@
 [6002] = { 3,  TD|TF,          SEN(open),                      "open"                  },
 [6003] = { 1,  TD,             SEN(close),                     "close"                 },
 [6004] = { 2,  TF|TSTA,        SEN(stat64),                    "stat"                  },
-[6005] = { 2,  TD|TSTA,        SEN(fstat64),                   "fstat"                 },
+[6005] = { 2,  TD|TFST|TSTA,   SEN(fstat64),                   "fstat"                 },
 [6006] = { 2,  TF|TSTA,        SEN(lstat64),                   "lstat"                 },
 [6007] = { 3,  TD,             SEN(poll),                      "poll"                  },
 [6008] = { 3,  TD,             SEN(lseek),                     "lseek"                 },
 [6253] = { 4,  TD|TF,          SEN(mknodat),                   "mknodat"               },
 [6254] = { 5,  TD|TF,          SEN(fchownat),                  "fchownat"              },
 [6255] = { 3,  TD|TF,          SEN(futimesat),                 "futimesat"             },
-[6256] = { 4,  TD|TF|TSTA,     SEN(newfstatat),                "newfstatat"            },
+[6256] = { 4,  TD|TF|TFST|TSTA,SEN(newfstatat),                "newfstatat"            },
 [6257] = { 3,  TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [6258] = { 4,  TD|TF,          SEN(renameat),                  "renameat"              },
 [6259] = { 5,  TD|TF,          SEN(linkat),                    "linkat"                },
index 21750421d7d77f4e6cf96b6cc4a7d188d2fca814..ded3a4c9b63304801029d4e95f8cb15e412ebb0e 100644 (file)
@@ -5,7 +5,7 @@
 [5002] = { 3,  TD|TF,          SEN(open),                      "open"                  },
 [5003] = { 1,  TD,             SEN(close),                     "close"                 },
 [5004] = { 2,  TF|TSTA,        SEN(stat),                      "stat"                  },
-[5005] = { 2,  TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[5005] = { 2,  TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [5006] = { 2,  TF|TSTA,        SEN(lstat),                     "lstat"                 },
 [5007] = { 3,  TD,             SEN(poll),                      "poll"                  },
 [5008] = { 3,  TD,             SEN(lseek),                     "lseek"                 },
 [5249] = { 4,  TD|TF,          SEN(mknodat),                   "mknodat"               },
 [5250] = { 5,  TD|TF,          SEN(fchownat),                  "fchownat"              },
 [5251] = { 3,  TD|TF,          SEN(futimesat),                 "futimesat"             },
-[5252] = { 4,  TD|TF|TSTA,     SEN(newfstatat),                "newfstatat"            },
+[5252] = { 4,  TD|TF|TFST|TSTA,SEN(newfstatat),                "newfstatat"            },
 [5253] = { 3,  TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [5254] = { 4,  TD|TF,          SEN(renameat),                  "renameat"              },
 [5255] = { 5,  TD|TF,          SEN(linkat),                    "linkat"                },
index bd176f82ce398438cf4795517a0f30bc070681c5..b7955e28923db9d3dcd54f5d3560cc7b36c79d6c 100644 (file)
@@ -28,7 +28,7 @@
 [4025] = { 1,  0,              SEN(stime),                     "stime"                 },
 [4026] = { 4,  0,              SEN(ptrace),                    "ptrace"                },
 [4027] = { 1,  0,              SEN(alarm),                     "alarm"                 },
-[4028] = { 2,  TD|TSTA,        SEN(oldfstat),                  "oldfstat"              },
+[4028] = { 2,  TD|TFST|TSTA,   SEN(oldfstat),                  "oldfstat"              },
 [4029] = { 0,  TS,             SEN(pause),                     "pause"                 },
 [4030] = { 2,  TF,             SEN(utime),                     "utime"                 },
 [4031] = { 0,  0,              SEN(stty),                      "stty"                  },
 [4105] = { 2,  0,              SEN(getitimer),                 "getitimer"             },
 [4106] = { 2,  TF|TSTA,        SEN(stat),                      "stat"                  },
 [4107] = { 2,  TF|TSTA,        SEN(lstat),                     "lstat"                 },
-[4108] = { 2,  TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[4108] = { 2,  TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [4109] = { 1,  0,              SEN(olduname),                  "olduname"              },
 [4110] = { 1,  0,              SEN(iopl),                      "iopl"                  },
 [4111] = { 0,  0,              SEN(vhangup),                   "vhangup"               },
 [4212] = { 4,  TD,             SEN(ftruncate64),               "ftruncate64"           },
 [4213] = { 2,  TF|TSTA,        SEN(stat64),                    "stat64"                },
 [4214] = { 2,  TF|TSTA,        SEN(lstat64),                   "lstat64"               },
-[4215] = { 2,  TD|TSTA,        SEN(fstat64),                   "fstat64"               },
+[4215] = { 2,  TD|TFST|TSTA,   SEN(fstat64),                   "fstat64"               },
 [4216] = { 2,  TF,             SEN(pivotroot),                 "pivot_root"            },
 [4217] = { 3,  TM,             SEN(mincore),                   "mincore"               },
 [4218] = { 3,  TM,             SEN(madvise),                   "madvise"               },
 [4290] = { 4,  TD|TF,          SEN(mknodat),                   "mknodat"               },
 [4291] = { 5,  TD|TF,          SEN(fchownat),                  "fchownat"              },
 [4292] = { 3,  TD|TF,          SEN(futimesat),                 "futimesat"             },
-[4293] = { 4,  TD|TF|TSTA,     SEN(fstatat64),                 "fstatat64"             },
+[4293] = { 4,  TD|TF|TFST|TSTA,SEN(fstatat64),                 "fstatat64"             },
 [4294] = { 3,  TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [4295] = { 4,  TD|TF,          SEN(renameat),                  "renameat"              },
 [4296] = { 5,  TD|TF,          SEN(linkat),                    "linkat"                },
index af679a7365a412578a7666922d4af2a040d7a1ca..35189f0e1c21d5204e154ae4eb3d4bf0b1ba6a58 100644 (file)
@@ -54,7 +54,7 @@
 [ 25] = { 1,   0,              SEN(stime),                     "stime"                 },
 [ 26] = { 4,   0,              SEN(ptrace),                    "ptrace"                },
 [ 27] = { 1,   0,              SEN(alarm),                     "alarm"                 },
-[ 28] = { 2,   TD|TSTA,        SEN(oldfstat),                  "oldfstat"              },
+[ 28] = { 2,   TD|TFST|TSTA,   SEN(oldfstat),                  "oldfstat"              },
 [ 29] = { 0,   TS,             SEN(pause),                     "pause"                 },
 [ 30] = { 2,   TF,             SEN(utime),                     "utime"                 },
 [ 31] = { 2,   0,              SEN(stty),                      "stty"                  },
 [105] = { 2,   0,              SEN(getitimer),                 "getitimer"             },
 [106] = { 2,   TF|TSTA,        SEN(stat),                      "stat"                  },
 [107] = { 2,   TF|TSTA,        SEN(lstat),                     "lstat"                 },
-[108] = { 2,   TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[108] = { 2,   TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [109] = { 1,   0,              SEN(olduname),                  "olduname"              },
 [110] = { 1,   0,              SEN(iopl),                      "iopl"                  },
 [111] = { 0,   0,              SEN(vhangup),                   "vhangup"               },
 [194] = { 4,   TD,             SEN(ftruncate64),               "ftruncate64"           },
 [195] = { 2,   TF|TSTA,        SEN(stat64),                    "stat64"                },
 [196] = { 2,   TF|TSTA,        SEN(lstat64),                   "lstat64"               },
-[197] = { 2,   TD|TSTA,        SEN(fstat64),                   "fstat64"               },
+[197] = { 2,   TD|TFST|TSTA,   SEN(fstat64),                   "fstat64"               },
 [198] = { 5,   0,              SEN(printargs),                 "pciconfig_read"        },
 [199] = { 5,   0,              SEN(printargs),                 "pciconfig_write"       },
 [200] = { 3,   0,              SEN(printargs),                 "pciconfig_iobase"      },
 [288] = { 4,   TD|TF,          SEN(mknodat),                   "mknodat"               },
 [289] = { 5,   TD|TF,          SEN(fchownat),                  "fchownat"              },
 [290] = { 3,   TD|TF,          SEN(futimesat),                 "futimesat"             },
-[291] = { 4,   TD|TF|TSTA,     SEN(fstatat64),                 "fstatat64"             },
+[291] = { 4,   TD|TF|TFST|TSTA,SEN(fstatat64),                 "fstatat64"             },
 [292] = { 3,   TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [293] = { 4,   TD|TF,          SEN(renameat),                  "renameat"              },
 [294] = { 5,   TD|TF,          SEN(linkat),                    "linkat"                },
index 2bef30906791a61881697f614d121f42393cc3e7..130ed2e5953f5e2c0e67274d20fed9ae08b100e3 100644 (file)
@@ -54,7 +54,7 @@
 [ 25] = { 1,   0,              SEN(stime),                     "stime"                 },
 [ 26] = { 4,   0,              SEN(ptrace),                    "ptrace"                },
 [ 27] = { 1,   0,              SEN(alarm),                     "alarm"                 },
-[ 28] = { 2,   TD|TSTA,        SEN(oldfstat),                  "oldfstat"              },
+[ 28] = { 2,   TD|TFST|TSTA,   SEN(oldfstat),                  "oldfstat"              },
 [ 29] = { 0,   TS,             SEN(pause),                     "pause"                 },
 [ 30] = { 2,   TF,             SEN(utime),                     "utime"                 },
 [ 31] = { 2,   0,              SEN(stty),                      "stty"                  },
 [105] = { 2,   0,              SEN(getitimer),                 "getitimer"             },
 [106] = { 2,   TF|TSTA,        SEN(stat),                      "stat"                  },
 [107] = { 2,   TF|TSTA,        SEN(lstat),                     "lstat"                 },
-[108] = { 2,   TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[108] = { 2,   TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [109] = { 1,   0,              SEN(olduname),                  "olduname"              },
 [110] = { 1,   0,              SEN(iopl),                      "iopl"                  },
 [111] = { 0,   0,              SEN(vhangup),                   "vhangup"               },
 [288] = { 4,   TD|TF,          SEN(mknodat),                   "mknodat"               },
 [289] = { 5,   TD|TF,          SEN(fchownat),                  "fchownat"              },
 [290] = { 3,   TD|TF,          SEN(futimesat),                 "futimesat"             },
-[291] = { 4,   TD|TF|TSTA,     SEN(newfstatat),                "newfstatat"            },
+[291] = { 4,   TD|TF|TFST|TSTA,SEN(newfstatat),                "newfstatat"            },
 [292] = { 3,   TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [293] = { 4,   TD|TF,          SEN(renameat),                  "renameat"              },
 [294] = { 5,   TD|TF,          SEN(linkat),                    "linkat"                },
index 315e205ab27651868fb84164cf1a1ff2e5309409..b3067ef8ad9062946ac34148416e37fffb2c87af 100644 (file)
 [105] = { 2,   0,              SEN(getitimer),                 "getitimer"             },
 [106] = { 2,   TF|TSTA,        SEN(stat),                      "stat"                  },
 [107] = { 2,   TF|TSTA,        SEN(lstat),                     "lstat"                 },
-[108] = { 2,   TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[108] = { 2,   TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [109] = { },
 [110] = { 4,   0,              SEN(lookup_dcookie),            "lookup_dcookie"        },
 [111] = { 0,   0,              SEN(vhangup),                   "vhangup"               },
 [194] = { 3,   TD,             SEN(ftruncate64),               "ftruncate64"           },
 [195] = { 2,   TF|TSTA,        SEN(stat64),                    "stat64"                },
 [196] = { 2,   TF|TSTA,        SEN(lstat64),                   "lstat64"               },
-[197] = { 2,   TD|TSTA,        SEN(fstat64),                   "fstat64"               },
+[197] = { 2,   TD|TFST|TSTA,   SEN(fstat64),                   "fstat64"               },
 [198] = { 3,   TF,             SEN(chown),                     "lchown32"              },
 [199] = { 0,   NF,             SEN(getuid),                    "getuid32"              },
 [200] = { 0,   NF,             SEN(getgid),                    "getgid32"              },
 [290] = { 4,   TD|TF,          SEN(mknodat),                   "mknodat"               },
 [291] = { 5,   TD|TF,          SEN(fchownat),                  "fchownat"              },
 [292] = { 3,   TD|TF,          SEN(futimesat),                 "futimesat"             },
-[293] = { 4,   TD|TF|TSTA,     SEN(fstatat64),                 "fstatat64"             },
+[293] = { 4,   TD|TF|TFST|TSTA,SEN(fstatat64),                 "fstatat64"             },
 [294] = { 3,   TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [295] = { 4,   TD|TF,          SEN(renameat),                  "renameat"              },
 [296] = { 5,   TD|TF,          SEN(linkat),                    "linkat"                },
index ea746d4f2543f3528a0a0c7b44994125d2d6203b..43d39e2f1c1550c84b97f5152d99b91287978c0a 100644 (file)
 [105] = { 2,   0,              SEN(getitimer),                 "getitimer"             },
 [106] = { 2,   TF|TSTA,        SEN(stat),                      "stat"                  },
 [107] = { 2,   TF|TSTA,        SEN(lstat),                     "lstat"                 },
-[108] = { 2,   TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[108] = { 2,   TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [109] = { },
 [110] = { 3,   0,              SEN(lookup_dcookie),            "lookup_dcookie"        },
 [111] = { 0,   0,              SEN(vhangup),                   "vhangup"               },
 [290] = { 4,   TD|TF,          SEN(mknodat),                   "mknodat"               },
 [291] = { 5,   TD|TF,          SEN(fchownat),                  "fchownat"              },
 [292] = { 3,   TD|TF,          SEN(futimesat),                 "futimesat"             },
-[293] = { 4,   TD|TF|TSTA,     SEN(newfstatat),                "newfstatat"            },
+[293] = { 4,   TD|TF|TFST|TSTA,SEN(newfstatat),                "newfstatat"            },
 [294] = { 3,   TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [295] = { 4,   TD|TF,          SEN(renameat),                  "renameat"              },
 [296] = { 5,   TD|TF,          SEN(linkat),                    "linkat"                },
index c2267e5e88a1a84097a6e2ad895b7f9ddd6e65c4..ff33e464f1ceef62bca928478cc8e46212e0b071 100644 (file)
@@ -56,7 +56,7 @@
 [ 25] = { 1,   0,              SEN(stime),                     "stime"                 },
 [ 26] = { 4,   0,              SEN(ptrace),                    "ptrace"                },
 [ 27] = { 1,   0,              SEN(alarm),                     "alarm"                 },
-[ 28] = { 2,   TD|TSTA,        SEN(oldfstat),                  "oldfstat"              },
+[ 28] = { 2,   TD|TFST|TSTA,   SEN(oldfstat),                  "oldfstat"              },
 [ 29] = { 0,   TS,             SEN(pause),                     "pause"                 },
 [ 30] = { 2,   TF,             SEN(utime),                     "utime"                 },
 [ 31] = { 2,   0,              SEN(stty),                      "stty"                  },
 [105] = { 2,   0,              SEN(getitimer),                 "getitimer"             },
 [106] = { 2,   TF|TSTA,        SEN(stat),                      "stat"                  },
 [107] = { 2,   TF|TSTA,        SEN(lstat),                     "lstat"                 },
-[108] = { 2,   TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[108] = { 2,   TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [109] = { 1,   0,              SEN(olduname),                  "olduname"              },
 [110] = { 1,   0,              SEN(iopl),                      "iopl"                  },
 [111] = { 0,   0,              SEN(vhangup),                   "vhangup"               },
 [194] = { 3,   TD,             SEN(ftruncate64),               "ftruncate64"           },
 [195] = { 2,   TF|TSTA,        SEN(stat64),                    "stat64"                },
 [196] = { 2,   TF|TSTA,        SEN(lstat64),                   "lstat64"               },
-[197] = { 2,   TD|TSTA,        SEN(fstat64),                   "fstat64"               },
+[197] = { 2,   TD|TFST|TSTA,   SEN(fstat64),                   "fstat64"               },
 [198] = { 3,   TF,             SEN(chown),                     "lchown32"              },
 [199] = { 0,   NF,             SEN(getuid),                    "getuid32"              },
 [200] = { 0,   NF,             SEN(getgid),                    "getgid32"              },
 [297] = { 4,   TD|TF,          SEN(mknodat),                   "mknodat"               },
 [298] = { 5,   TD|TF,          SEN(fchownat),                  "fchownat"              },
 [299] = { 3,   TD|TF,          SEN(futimesat),                 "futimesat"             },
-[300] = { 4,   TD|TF|TSTA,     SEN(fstatat64),                 "fstatat64"             },
+[300] = { 4,   TD|TF|TFST|TSTA,SEN(fstatat64),                 "fstatat64"             },
 [301] = { 3,   TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [302] = { 4,   TD|TF,          SEN(renameat),                  "renameat"              },
 [303] = { 5,   TD|TF,          SEN(linkat),                    "linkat"                },
index 0057fdb762d5037b67ba23b881df5ae3d2b7eb56..4f202bdffe802b72ff3ed749ff6efb4b0961a2ea 100644 (file)
@@ -54,7 +54,7 @@
 [ 25] = { 1,   0,              SEN(stime),                     "stime"                 },
 [ 26] = { 4,   0,              SEN(ptrace),                    "ptrace"                },
 [ 27] = { 1,   0,              SEN(alarm),                     "alarm"                 },
-[ 28] = { 2,   TD|TSTA,        SEN(oldfstat),                  "oldfstat"              },
+[ 28] = { 2,   TD|TFST|TSTA,   SEN(oldfstat),                  "oldfstat"              },
 [ 29] = { 0,   TS,             SEN(pause),                     "pause"                 },
 [ 30] = { 2,   TF,             SEN(utime),                     "utime"                 },
 [ 31] = { 2,   0,              SEN(stty),                      "stty"                  },
 [105] = { 2,   0,              SEN(getitimer),                 "getitimer"             },
 [106] = { 2,   TF|TSTA,        SEN(stat),                      "stat"                  },
 [107] = { 2,   TF|TSTA,        SEN(lstat),                     "lstat"                 },
-[108] = { 2,   TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[108] = { 2,   TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [109] = { 1,   0,              SEN(olduname),                  "olduname"              },
 [110] = { 1,   0,              SEN(iopl),                      "iopl"                  },
 [111] = { 0,   0,              SEN(vhangup),                   "vhangup"               },
 [194] = { 2,   TD,             SEN(ftruncate),                 "ftruncate64"           },
 [195] = { 2,   TF|TSTA,        SEN(stat64),                    "stat64"                },
 [196] = { 2,   TF|TSTA,        SEN(lstat64),                   "lstat64"               },
-[197] = { 2,   TD|TSTA,        SEN(fstat64),                   "fstat64"               },
+[197] = { 2,   TD|TFST|TSTA,   SEN(fstat64),                   "fstat64"               },
 [198] = { 3,   TF,             SEN(chown),                     "lchown32"              },
 [199] = { 0,   NF,             SEN(getuid),                    "getuid32"              },
 [200] = { 0,   NF,             SEN(getgid),                    "getgid32"              },
 [325] = { 4,   TD|TF,          SEN(mknodat),                   "mknodat"               },
 [326] = { 5,   TD|TF,          SEN(fchownat),                  "fchownat"              },
 [327] = { 3,   TD|TF,          SEN(futimesat),                 "futimesat"             },
-[328] = { 4,   TD|TF|TSTA,     SEN(fstatat64),                 "fstatat64"             },
+[328] = { 4,   TD|TF|TFST|TSTA,SEN(fstatat64),                 "fstatat64"             },
 [329] = { 3,   TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [330] = { 4,   TD|TF,          SEN(renameat),                  "renameat"              },
 [331] = { 5,   TD|TF,          SEN(linkat),                    "linkat"                },
index d328f6e6f5208237f20b21ebd7c242c538e8f388..ecb26576261e63d803ef783ed1aa1efa0558c9d4 100644 (file)
@@ -60,8 +60,8 @@
 [ 59] = { 3,   TF|TP|SE|SI,    SEN(execve),                    "execve"                },
 [ 60] = { 1,   NF,             SEN(umask),                     "umask"                 },
 [ 61] = { 1,   TF,             SEN(chroot),                    "chroot"                },
-[ 62] = { 2,   TD|TSTA,        SEN(fstat),                     "fstat"                 },
-[ 63] = { 2,   TD|TSTA,        SEN(fstat64),                   "fstat64"               },
+[ 62] = { 2,   TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
+[ 63] = { 2,   TD|TFST|TSTA,   SEN(fstat64),                   "fstat64"               },
 [ 64] = { 0,   0,              SEN(getpagesize),               "getpagesize"           },
 [ 65] = { 3,   TM,             SEN(msync),                     "msync"                 },
 [ 66] = { 0,   TP,             SEN(vfork),                     "vfork"                 },
 [286] = { 4,   TD|TF,          SEN(mknodat),                   "mknodat"               },
 [287] = { 5,   TD|TF,          SEN(fchownat),                  "fchownat"              },
 [288] = { 3,   TD|TF,          SEN(futimesat),                 "futimesat"             },
-[289] = { 4,   TD|TF|TSTA,     SEN(fstatat64),                 "fstatat64"             },
+[289] = { 4,   TD|TF|TFST|TSTA,SEN(fstatat64),                 "fstatat64"             },
 [290] = { 3,   TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [291] = { 4,   TD|TF,          SEN(renameat),                  "renameat"              },
 [292] = { 5,   TD|TF,          SEN(linkat),                    "linkat"                },
index 9fc285fef27862e83a4f48ef0204d152d4c07561..ece5d04fcd088c455c220aa9dca95aa5bc165ca4 100644 (file)
@@ -59,8 +59,8 @@
 [ 59] = { 3,   TF|TP|SE|SI,    SEN(execve),                    "execve"                },
 [ 60] = { 1,   NF,             SEN(umask),                     "umask"                 },
 [ 61] = { 1,   TF,             SEN(chroot),                    "chroot"                },
-[ 62] = { 2,   TD|TSTA,        SEN(fstat),                     "fstat"                 },
-[ 63] = { 2,   TD|TSTA,        SEN(fstat64),                   "fstat64"               },
+[ 62] = { 2,   TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
+[ 63] = { 2,   TD|TFST|TSTA,   SEN(fstat64),                   "fstat64"               },
 [ 64] = { 0,   0,              SEN(getpagesize),               "getpagesize"           },
 [ 65] = { 3,   TM,             SEN(msync),                     "msync"                 },
 [ 66] = { 0,   TP,             SEN(vfork),                     "vfork"                 },
 [286] = { 4,   TD|TF,          SEN(mknodat),                   "mknodat"               },
 [287] = { 5,   TD|TF,          SEN(fchownat),                  "fchownat"              },
 [288] = { 3,   TD|TF,          SEN(futimesat),                 "futimesat"             },
-[289] = { 4,   TD|TF|TSTA,     SEN(fstatat64),                 "fstatat64"             },
+[289] = { 4,   TD|TF|TFST|TSTA,SEN(fstatat64),                 "fstatat64"             },
 [290] = { 3,   TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [291] = { 4,   TD|TF,          SEN(renameat),                  "renameat"              },
 [292] = { 5,   TD|TF,          SEN(linkat),                    "linkat"                },
index 3e3f8191bb29daeb25082ecebed4445f646b2d17..cc323b273a27ce1b4d7ed279c0c7b4555fc751cf 100644 (file)
@@ -3,7 +3,7 @@
 [  2] = { 3,   TD|TF,          SEN(open),                      "open"                  },
 [  3] = { 1,   TD,             SEN(close),                     "close"                 },
 [  4] = { 2,   TF|TSTA,        SEN(stat),                      "stat"                  },
-[  5] = { 2,   TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[  5] = { 2,   TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [  6] = { 2,   TF|TSTA,        SEN(lstat),                     "lstat"                 },
 [  7] = { 3,   TD,             SEN(poll),                      "poll"                  },
 [  8] = { 3,   TD,             SEN(lseek),                     "lseek"                 },
 [259] = { 4,   TD|TF,          SEN(mknodat),                   "mknodat"               },
 [260] = { 5,   TD|TF,          SEN(fchownat),                  "fchownat"              },
 [261] = { 3,   TD|TF,          SEN(futimesat),                 "futimesat"             },
-[262] = { 4,   TD|TF|TSTA,     SEN(newfstatat),                "newfstatat"            },
+[262] = { 4,   TD|TF|TFST|TSTA,SEN(newfstatat),                "newfstatat"            },
 [263] = { 3,   TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [264] = { 4,   TD|TF,          SEN(renameat),                  "renameat"              },
 [265] = { 5,   TD|TF,          SEN(linkat),                    "linkat"                },
index 60167be056d1c9e32f3b6d4d5d2ed68a4b100b16..91c5e4a8c62c469fc6a1130236f6a9ed1c682cad 100644 (file)
@@ -3,7 +3,7 @@
 [  2] = { 3,   TD|TF,          SEN(open),                      "open"                  },
 [  3] = { 1,   TD,             SEN(close),                     "close"                 },
 [  4] = { 2,   TF|TSTA,        SEN(stat),                      "stat"                  },
-[  5] = { 2,   TD|TSTA,        SEN(fstat),                     "fstat"                 },
+[  5] = { 2,   TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
 [  6] = { 2,   TF|TSTA,        SEN(lstat),                     "lstat"                 },
 [  7] = { 3,   TD,             SEN(poll),                      "poll"                  },
 [  8] = { 3,   TD,             SEN(lseek),                     "lseek"                 },
 [259] = { 4,   TD|TF,          SEN(mknodat),                   "mknodat"               },
 [260] = { 5,   TD|TF,          SEN(fchownat),                  "fchownat"              },
 [261] = { 3,   TD|TF,          SEN(futimesat),                 "futimesat"             },
-[262] = { 4,   TD|TF|TSTA,     SEN(newfstatat),                "newfstatat"            },
+[262] = { 4,   TD|TF|TFST|TSTA,SEN(newfstatat),                "newfstatat"            },
 [263] = { 3,   TD|TF,          SEN(unlinkat),                  "unlinkat"              },
 [264] = { 4,   TD|TF,          SEN(renameat),                  "renameat"              },
 [265] = { 5,   TD|TF,          SEN(linkat),                    "linkat"                },
index 84db7f2ae02159db93ba4fa205028227ad9acc5e..fbdc8dfc9c4c2e7ee25ae7e7ff91fddbeb3bc0f1 100644 (file)
@@ -47,8 +47,8 @@
 [ 51] = { },
 [ 52] = { 2,   TD,             SEN(fchmod),                    "fchmod"                },
 [ 53] = { 3,   TD,             SEN(fchown),                    "fchown"                },
-[ 54] = { 2,   TD|TSTA,        SEN(fstat),                     "fstat"                 },
-[ 55] = { 2,   TD|TSTA,        SEN(fstat64),                   "fstat64"               },
+[ 54] = { 2,   TD|TFST|TSTA,   SEN(fstat),                     "fstat"                 },
+[ 55] = { 2,   TD|TFST|TSTA,   SEN(fstat64),                   "fstat64"               },
 [ 56] = { 2,   TD,             SEN(flock),                     "flock"                 },
 [ 57] = { 2,   TF,             SEN(access),                    "access"                },
 [ 58] = { 1,   NF,             SEN(umask),                     "umask"                 },
 [296] = { 4,   TD|TF,          SEN(utimensat),                 "utimensat"             },
 [297] = { 5,   TD|TF,          SEN(fchownat),                  "fchownat"              },
 [298] = { 3,   TD|TF,          SEN(futimesat),                 "futimesat"             },
-[299] = { 4,   TD|TF|TSTA,     SEN(fstatat64),                 "fstatat64"             },
+[299] = { 4,   TD|TF|TFST|TSTA,SEN(fstatat64),                 "fstatat64"             },
 [300] = { 3,   TD|TF,          SEN(fchmodat),                  "fchmodat"              },
 [301] = { 3,   TD|TF,          SEN(faccessat),                 "faccessat"             },
 [302 ... 303] = { },
index d9305cc770436afcb32c37ffc29d0e632958dfb2..ec49ae62a56def70d227e8310a6fa1c5ab7b7bd3 100644 (file)
--- a/qualify.c
+++ b/qualify.c
@@ -262,6 +262,7 @@ lookup_class(const char *s)
                { "%signal",    TRACE_SIGNAL    },
                { "%ipc",       TRACE_IPC       },
                { "%network",   TRACE_NETWORK   },
+               { "%fstat",     TRACE_FSTAT     },
                { "%%stat",     TRACE_STAT_LIKE },
                { "%statfs",    TRACE_STATFS    },
                { "%fstatfs",   TRACE_FSTATFS   },
index f16e19e2b45a03201a31870d0ccfcbc76c07d8f1..0851512f64bced288c212a929fee89676fc4f292 100644 (file)
--- a/strace.1
+++ b/strace.1
@@ -436,6 +436,9 @@ Trace all file descriptor related system calls.
 .BR "\-e\ trace" = memory " (deprecated)"
 Trace all memory mapping related system calls.
 .TP
+.BR "\-e\ trace" = %fstat
+Trace fstat and fstatat syscall variants.
+.TP
 .BR "\-e\ trace" = %%stat
 Trace syscalls used for requesting file status (stat, lstat, fstat, fstatat,
 statx, and their variants).
index 9030d1ec6076feb27383acd1ab4eae51b2f06be8..85fc563750b9eb0198cd26c137ca881dd1c30ceb 100644 (file)
--- a/syscall.c
+++ b/syscall.c
@@ -76,6 +76,7 @@
 #define TP TRACE_PROCESS
 #define TS TRACE_SIGNAL
 #define TM TRACE_MEMORY
+#define TFST TRACE_FSTAT
 #define TSTA TRACE_STAT_LIKE
 #define TSF TRACE_STATFS
 #define TFSF TRACE_FSTATFS
@@ -115,6 +116,7 @@ static const struct_sysent sysent2[] = {
 #undef TP
 #undef TS
 #undef TM
+#undef TFST
 #undef TSTA
 #undef TSF
 #undef TFSF
index 2c9a1baa14c5b96e090b6da596116203a0fde6fb..45fa95629a32c6558e4e605cd3d6b6b82674e13e 100644 (file)
--- a/sysent.h
+++ b/sysent.h
@@ -24,6 +24,7 @@ typedef struct sysent {
 #define TRACE_STATFS                   00040000        /* Trace statfs, statfs64, and statvfs syscalls. */
 #define TRACE_FSTATFS                  00100000        /* Trace fstatfs, fstatfs64 and fstatvfs syscalls. */
 #define TRACE_STATFS_LIKE              00200000        /* Trace statfs-like, fstatfs-like and ustat syscalls. */
+#define TRACE_FSTAT                    00400000        /* Trace *fstat{,at}{,64} syscalls. */
 #define TRACE_STAT_LIKE                        01000000        /* Trace *{,l,f}stat{,x,at}{,64} syscalls. */
 
 #endif /* !STRACE_SYSENT_H */
index 3e8ba07e6b8ff55b0e38743ca09c3145aa45af34..8e94581ae86a461f951b94cb9d262f75f81eeba4 100644 (file)
@@ -336,6 +336,7 @@ EXTRA_DIST = \
        strace.supp \
        struct_flock.c \
        sun_path.expected \
+       trace_fstat.in \
        trace_fstatfs.in \
        trace_stat_like.in \
        trace_statfs.in \
index 38cbcabbf40e89d4ec53a4c69e690aaced88e30b..eec666efa4f749caf6d89b36268c86503150b929 100644 (file)
@@ -304,6 +304,7 @@ timer_xettime       -e trace=timer_create,timer_settime,timer_gettime
 timerfd_xettime        -e trace=timerfd_create,timerfd_settime,timerfd_gettime
 times  -esignal=none
 times-fail     -a12 -e trace=times
+trace_fstat    > stat.sample; test_trace_expr '' -e%fstat -v -Pstat.sample -P/dev/full
 trace_fstatfs  test_trace_expr '' -e%fstatfs
 trace_stat_like        > stat.sample; test_trace_expr '' -e%%stat -v -Pstat.sample -P/dev/full
 trace_statfs   test_trace_expr '' -e%statfs
index edd766c59a36f37617a711c9a1cf8824289d32ec..202b3dee17ab1d47fe59c1afc1f53ce2c648f1a0 100644 (file)
@@ -40,6 +40,7 @@
 #define TP 0
 #define TS 0
 #define TM 0
+#define TFST 0
 #define TSTA 0
 #define TSF 0
 #define TFSF 0
index b4c0b461d684f673605c6a44973ab939dd5f55b1..e3288f87451accc5282353730541bdf17e271573 100644 (file)
@@ -41,6 +41,7 @@
 #define TP 0
 #define TS 0
 #define TM 0
+#define TFST 0
 #define TSTA 0
 #define TSF 0
 #define TFSF 0
diff --git a/tests/trace_fstat.in b/tests/trace_fstat.in
new file mode 100644 (file)
index 0000000..34cfa7e
--- /dev/null
@@ -0,0 +1,5 @@
+fstat  -a15
+fstat64        -a17
+fstatat64      -a32
+newfstatat     -a32
+oldfstat       -a21