Sorry for the mess..So i have changed the comment in sysent.h and
clock.test. (Busy with exams thats why i submitted it late)

On Sat, Mar 25, 2017 at 2:07 AM, Dmitry V. Levin <l...@altlinux.org> wrote:

> On Thu, Mar 23, 2017 at 05:19:03AM +0530, Rishi Bhatt wrote:
> > I did not know much about version and all so next time i will take
> > everything into consideration.Sorry.
> >
> > The patch is attached.
>
> Please re-read all comments made earlier and please take them into
> consideration.  I'm not going to repeat my comments again and again, sorry.
>
>
> --
> ldv
>
> ------------------------------------------------------------
> ------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> Strace-devel mailing list
> Strace-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/strace-devel
>
>
From 294db67743eb8509383cf80887747016271dd32a Mon Sep 17 00:00:00 2001
From: Rishi Bhatt <bhatt.rishi...@gmail.com>
Date: Tue, 28 Mar 2017 03:31:24 +0530
Subject: [PATCH] Implement -e trace=%clock option

linux/*/syscallent.h part is modified automatically by:

    git grep -Fl 'SEN(clock_' linux/ | xargs sed -i \
        's/0\(,[[:space:]]*SEN(clock_\)/TCL\1/'

	* sysent.h (TRACE_CLOCK): New definition.
	* syscall.c: Alias TCL to TRACE_CLOCK around syscallent.h inclusion.
	* linux/32/syscallent.h: Add TCL flag for clock_* sycalls.
	* linux/64/syscallent.h: Likewise.
	* linux/alpha/syscallent.h: Likewise.
	* linux/arm/syscallent.h: Likewise.
	* linux/avr32/syscallent.h: Likewise.
	* linux/bfin/syscallent.h: Likewise.
	* linux/crisv10/syscallent.h: Likewise.
	* linux/hppa/syscallent.h: Likewise.
	* linux/i386/syscallent.h: Likewise.
	* linux/ia64/syscallent.h: Likewise.
	* linux/m68k/syscallent.h: Likewise.
	* linux/microblaze/syscallent.h: Likewise.
	* linux/mips/syscallent-n32.h: Likewise.
	* linux/mips/syscallent-n64.h: Likewise.
	* linux/mips/syscallent-o32.h: Likewise.
	* linux/powerpc/syscallent.h: Likewise.
	* linux/powerpc64/syscallent.h: Likewise.
	* linux/s390/syscallent.h: Likewise.
	* linux/s390x/syscallent.h: Likewise.
	* linux/sh/syscallent.h: Likewise.
	* linux/sh64/syscallent.h: Likewise.
	* linux/sparc/syscallent.h: Likewise.
	* linux/sparc64/syscallent.h: Likewise.
	* linux/x32/syscallent.h: Likewise.
	* linux/x86_64/syscallent.h: Likewise.
	* linux/xtensa/syscallent.h: Likewise.
	* qualify.c (lookup_class): Add TRACE_CLOCK for "%clock".
	* tests/ksysent.c: Define TCL to 0.
	* tests/nsyscalls.c: Likewise.
	* tests/clock.test: New test.
	* tests/Makefile.am (DECODER_TESTS): Add it.
	* strace.1 (.SS Filtering): Add information about %clock syscall class.
---
 linux/32/syscallent.h         | 10 +++++-----
 linux/64/syscallent.h         | 10 +++++-----
 linux/alpha/syscallent.h      | 10 +++++-----
 linux/arm/syscallent.h        | 10 +++++-----
 linux/avr32/syscallent.h      | 10 +++++-----
 linux/bfin/syscallent.h       | 10 +++++-----
 linux/crisv10/syscallent.h    | 10 +++++-----
 linux/hppa/syscallent.h       | 10 +++++-----
 linux/i386/syscallent.h       | 10 +++++-----
 linux/ia64/syscallent.h       | 10 +++++-----
 linux/m68k/syscallent.h       | 10 +++++-----
 linux/microblaze/syscallent.h | 10 +++++-----
 linux/mips/syscallent-n32.h   | 10 +++++-----
 linux/mips/syscallent-n64.h   | 10 +++++-----
 linux/mips/syscallent-o32.h   | 10 +++++-----
 linux/powerpc/syscallent.h    | 10 +++++-----
 linux/powerpc64/syscallent.h  | 10 +++++-----
 linux/s390/syscallent.h       | 10 +++++-----
 linux/s390x/syscallent.h      | 10 +++++-----
 linux/sh/syscallent.h         | 10 +++++-----
 linux/sh64/syscallent.h       | 10 +++++-----
 linux/sparc/syscallent.h      | 10 +++++-----
 linux/sparc64/syscallent.h    | 10 +++++-----
 linux/x32/syscallent.h        | 10 +++++-----
 linux/x86_64/syscallent.h     | 10 +++++-----
 linux/xtensa/syscallent.h     | 10 +++++-----
 qualify.c                     |  1 +
 strace.1                      |  3 +++
 syscall.c                     |  2 ++
 sysent.h                      |  1 +
 tests/Makefile.am             |  1 +
 tests/clock.test              | 35 +++++++++++++++++++++++++++++++++++
 tests/ksysent.c               |  1 +
 tests/nsyscalls.c             |  1 +
 34 files changed, 175 insertions(+), 130 deletions(-)
 create mode 100755 tests/clock.test

diff --git a/linux/32/syscallent.h b/linux/32/syscallent.h
index a8f95107..236ac10e 100644
--- a/linux/32/syscallent.h
+++ b/linux/32/syscallent.h
@@ -117,10 +117,10 @@
 [109] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [110] = { 4,	0,		SEN(timer_settime),		"timer_settime"		},
 [111] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[112] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[113] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[114] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[115] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[112] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[113] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[114] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[115] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [116] = { 3,	0,		SEN(syslog),			"syslog"		},
 [117] = { 4,	0,		SEN(ptrace),			"ptrace"		},
 [118] = { 2,	TSC,		SEN(sched_setparam),		"sched_setparam"	},
@@ -256,7 +256,7 @@
 [263] = { 6,	TD|TF,		SEN(fanotify_mark),		"fanotify_mark"		},
 [264] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [265] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[266] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[266] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [267] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [268] = { 2,	TD,		SEN(setns),			"setns"			},
 [269] = { 4,	TN,		SEN(sendmmsg),			"sendmmsg"		},
diff --git a/linux/64/syscallent.h b/linux/64/syscallent.h
index b5a09d4f..e263bb01 100644
--- a/linux/64/syscallent.h
+++ b/linux/64/syscallent.h
@@ -110,10 +110,10 @@
 [109] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [110] = { 4,	0,		SEN(timer_settime),		"timer_settime"		},
 [111] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[112] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[113] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[114] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[115] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[112] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[113] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[114] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[115] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [116] = { 3,	0,		SEN(syslog),			"syslog"		},
 [117] = { 4,	0,		SEN(ptrace),			"ptrace"		},
 [118] = { 2,	TSC,		SEN(sched_setparam),		"sched_setparam"	},
@@ -249,7 +249,7 @@
 [263] = { 5,	TD|TF,		SEN(fanotify_mark),		"fanotify_mark"		},
 [264] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [265] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[266] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[266] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [267] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [268] = { 2,	TD,		SEN(setns),			"setns"			},
 [269] = { 4,	TN,		SEN(sendmmsg),			"sendmmsg"		},
diff --git a/linux/alpha/syscallent.h b/linux/alpha/syscallent.h
index c7ef90af..031f0cc5 100644
--- a/linux/alpha/syscallent.h
+++ b/linux/alpha/syscallent.h
@@ -381,10 +381,10 @@
 [416] = { 2,	0,		SEN(timer_gettime),		"timer_gettime"		},
 [417] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [418] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[419] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[420] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[421] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[422] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[419] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[420] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[421] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[422] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [423] = { 4,	TI,		SEN(semtimedop),		"semtimedop"		},
 [424] = { 3,	TS,		SEN(tgkill),			"tgkill"		},
 [425] = { 2,	TF,		SEN(stat64),			"stat64"		},
@@ -461,7 +461,7 @@
 [496] = { 4,	0,		SEN(prlimit64),			"prlimit64"		},
 [497] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [498] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[499] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[499] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [500] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [501] = { 2,	TD,		SEN(setns),			"setns"			},
 [502] = { 4,	TN,		SEN(accept4),			"accept4"		},
diff --git a/linux/arm/syscallent.h b/linux/arm/syscallent.h
index ed9ec9ad..6444e4ff 100644
--- a/linux/arm/syscallent.h
+++ b/linux/arm/syscallent.h
@@ -286,10 +286,10 @@
 [259] = { 2,	0,		SEN(timer_gettime),		"timer_gettime"		},
 [260] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [261] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[262] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[263] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[264] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[265] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[262] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[263] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[264] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[265] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [266] = { 3,	TF,		SEN(statfs64),			"statfs64"		},
 [267] = { 3,	TD,		SEN(fstatfs64),			"fstatfs64"		},
 [268] = { 3,	TS,		SEN(tgkill),			"tgkill"		},
@@ -396,7 +396,7 @@
 [369] = { 4,	0,		SEN(prlimit64),			"prlimit64"		},
 [370] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [371] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[372] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[372] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [373] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [374] = { 4,	TN,		SEN(sendmmsg),			"sendmmsg"		},
 [375] = { 2,	TD,		SEN(setns),			"setns"			},
diff --git a/linux/avr32/syscallent.h b/linux/avr32/syscallent.h
index 7f50934b..84e409d1 100644
--- a/linux/avr32/syscallent.h
+++ b/linux/avr32/syscallent.h
@@ -240,10 +240,10 @@
 [212] = { 2,	0,		SEN(timer_gettime),		"timer_gettime"		},
 [213] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [214] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[215] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[216] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[217] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[218] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[215] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[216] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[217] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[218] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [219] = { 3,	TF,		SEN(statfs64),			"statfs64"		},
 [220] = { 3,	TD,		SEN(fstatfs64),			"fstatfs64"		},
 [221] = { 3,	TS,		SEN(tgkill),			"tgkill"		},
@@ -331,7 +331,7 @@
 [303] = { 4,	0,		SEN(prlimit64),			"prlimit64"		},
 [304] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [305] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[306] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[306] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [307] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [308] = { 4,	TN,		SEN(sendmmsg),			"sendmmsg"		},
 [309] = { 6,	0,		SEN(process_vm_readv),		"process_vm_readv"	},
diff --git a/linux/bfin/syscallent.h b/linux/bfin/syscallent.h
index 800b943b..83e49c20 100644
--- a/linux/bfin/syscallent.h
+++ b/linux/bfin/syscallent.h
@@ -290,10 +290,10 @@
 [262] = { 2,	0,		SEN(timer_gettime),		"timer_gettime"		},
 [263] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [264] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[265] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[266] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[267] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[268] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[265] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[266] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[267] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[268] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [269] = { 3,	TF,		SEN(statfs64),			"statfs64"		},
 [270] = { 3,	TD,		SEN(fstatfs64),			"fstatfs64"		},
 [271] = { 3,	TS,		SEN(tgkill),			"tgkill"		},
@@ -402,7 +402,7 @@
 [374] = { 3,	0,		SEN(cacheflush),		"cacheflush"		},
 [375] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [376] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[377] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[377] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [378] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [379] = { 2,	TD,		SEN(setns),			"setns"			},
 [380] = { 4,	TN,		SEN(sendmmsg),			"sendmmsg"		},
diff --git a/linux/crisv10/syscallent.h b/linux/crisv10/syscallent.h
index 96fb6bd0..a66792d0 100644
--- a/linux/crisv10/syscallent.h
+++ b/linux/crisv10/syscallent.h
@@ -258,10 +258,10 @@
 [261] = { 2,	0,		SEN(timer_gettime),		"timer_gettime"		},
 [262] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [263] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[264] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[265] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[266] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[267] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[264] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[265] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[266] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[267] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [268] = { 3,	TF,		SEN(statfs64),			"statfs64"		},
 [269] = { 3,	TD,		SEN(fstatfs64),			"fstatfs64"		},
 [270] = { 3,	TS,		SEN(tgkill),			"tgkill"		},
@@ -338,7 +338,7 @@
 [342] = { 2,	TD,		SEN(fanotify_init),		"fanotify_init"		},
 [343] = { 6,	TD|TF,		SEN(fanotify_mark),		"fanotify_mark"		},
 [344] = { 4,	0,		SEN(prlimit64),			"prlimit64"		},
-[345] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[345] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [346] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [347] = { 4,	TN,		SEN(sendmmsg),			"sendmmsg"		},
 [348] = { 6,	0,		SEN(process_vm_readv),		"process_vm_readv"	},
diff --git a/linux/hppa/syscallent.h b/linux/hppa/syscallent.h
index f59ea571..f95944d2 100644
--- a/linux/hppa/syscallent.h
+++ b/linux/hppa/syscallent.h
@@ -257,10 +257,10 @@
 [252] = { 2,	0,		SEN(timer_gettime),		"timer_gettime"		},
 [253] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [254] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[255] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[256] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[257] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[258] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[255] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[256] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[257] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[258] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [259] = { 3,	TS,		SEN(tgkill),			"tgkill"		},
 [260] = { 6,	TM,		SEN(mbind),			"mbind"			},
 [261] = { 5,	TM,		SEN(get_mempolicy),		"get_mempolicy"		},
@@ -326,7 +326,7 @@
 [321] = { 4,	0,		SEN(prlimit64),			"prlimit64"		},
 [322] = { 2,	TD,		SEN(fanotify_init),		"fanotify_init"		},
 [323] = { 6,	TD|TF,		SEN(fanotify_mark),		"fanotify_mark"		},
-[324] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[324] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [325] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [326] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
 [327] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
diff --git a/linux/i386/syscallent.h b/linux/i386/syscallent.h
index 84c5bdec..7966eb1d 100644
--- a/linux/i386/syscallent.h
+++ b/linux/i386/syscallent.h
@@ -289,10 +289,10 @@
 [261] = { 2,	0,		SEN(timer_gettime),		"timer_gettime"		},
 [262] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [263] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[264] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[265] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[266] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[267] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[264] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[265] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[266] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[267] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [268] = { 3,	TF,		SEN(statfs64),			"statfs64"		},
 [269] = { 3,	TD,		SEN(fstatfs64),			"fstatfs64"		},
 [270] = { 3,	TS,		SEN(tgkill),			"tgkill"		},
@@ -368,7 +368,7 @@
 [340] = { 4,	0,		SEN(prlimit64),			"prlimit64"		},
 [341] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [342] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[343] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[343] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [344] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [345] = { 4,	TN,		SEN(sendmmsg),			"sendmmsg"		},
 [346] = { 2,	TD,		SEN(setns),			"setns"			},
diff --git a/linux/ia64/syscallent.h b/linux/ia64/syscallent.h
index 47b71d6a..c226bc6e 100644
--- a/linux/ia64/syscallent.h
+++ b/linux/ia64/syscallent.h
@@ -270,10 +270,10 @@
 [1250] = { 2,	0,		SEN(timer_gettime),		"timer_gettime"		},
 [1251] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [1252] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[1253] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[1254] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[1255] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[1256] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[1253] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[1254] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[1255] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[1256] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [1257] = { 3,	TD,		SEN(fstatfs64),			"fstatfs64"		},
 [1258] = { 3,	TF,		SEN(statfs64),			"statfs64"		},
 [1259] = { 6,	TM,		SEN(mbind),			"mbind"			},
@@ -345,7 +345,7 @@
 [1325] = { 4,	0,		SEN(prlimit64),			"prlimit64"		},
 [1326] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [1327] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[1328] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[1328] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [1329] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [1330] = { 2,	TD,		SEN(setns),			"setns"			},
 [1331] = { 4,	TN,		SEN(sendmmsg),			"sendmmsg"		},
diff --git a/linux/m68k/syscallent.h b/linux/m68k/syscallent.h
index 8e7dd97d..0364ab97 100644
--- a/linux/m68k/syscallent.h
+++ b/linux/m68k/syscallent.h
@@ -284,10 +284,10 @@
 [256] = { 2,	0,		SEN(timer_gettime),		"timer_gettime"		},
 [257] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [258] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[259] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[260] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[261] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[262] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[259] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[260] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[261] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[262] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [263] = { 3,	TF,		SEN(statfs64),			"statfs64"		},
 [264] = { 3,	TD,		SEN(fstatfs64),			"fstatfs64"		},
 [265] = { 3,	TS,		SEN(tgkill),			"tgkill"		},
@@ -367,7 +367,7 @@
 [339] = { 4,	0,		SEN(prlimit64),			"prlimit64"		},
 [340] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [341] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[342] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[342] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [343] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [344] = { 2,	TD,		SEN(setns),			"setns"			},
 [345] = { 6,	0,		SEN(process_vm_readv),		"process_vm_readv"	},
diff --git a/linux/microblaze/syscallent.h b/linux/microblaze/syscallent.h
index 2a59eb3d..e7cb98c5 100644
--- a/linux/microblaze/syscallent.h
+++ b/linux/microblaze/syscallent.h
@@ -289,10 +289,10 @@
 [261] = { 2,	0,		SEN(timer_gettime),		"timer_gettime"		},
 [262] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [263] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[264] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[265] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[266] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[267] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[264] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[265] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[266] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[267] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [268] = { 3,	TF,		SEN(statfs64),			"statfs64"		},
 [269] = { 3,	TD,		SEN(fstatfs64),			"fstatfs64"		},
 [270] = { 3,	TS,		SEN(tgkill),			"tgkill"		},
@@ -398,7 +398,7 @@
 [370] = { 4,	0,		SEN(prlimit64),			"prlimit64"		},
 [371] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [372] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[373] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[373] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [374] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [375] = { 2,	TD,		SEN(setns),			"setns"			},
 [376] = { 4,	TN,		SEN(sendmmsg),			"sendmmsg"		},
diff --git a/linux/mips/syscallent-n32.h b/linux/mips/syscallent-n32.h
index 052af4fa..bce788fb 100644
--- a/linux/mips/syscallent-n32.h
+++ b/linux/mips/syscallent-n32.h
@@ -225,10 +225,10 @@
 [6222] = { 2,	0,		SEN(timer_gettime),		"timer_gettime"		},
 [6223] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [6224] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[6225] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[6226] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[6227] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[6228] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[6225] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[6226] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[6227] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[6228] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [6229] = { 3,	TS,		SEN(tgkill),			"tgkill"		},
 [6230] = { 2,	TF,		SEN(utimes),			"utimes"		},
 [6231] = { 6,	TM,		SEN(mbind),			"mbind"			},
@@ -305,7 +305,7 @@
 [6302] = { 4,	0,		SEN(prlimit64),			"prlimit64"		},
 [6303] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [6304] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[6305] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[6305] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [6306] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [6307] = { 4,	TN,		SEN(sendmmsg),			"sendmmsg"		},
 [6308] = { 2,	TD,		SEN(setns),			"setns"			},
diff --git a/linux/mips/syscallent-n64.h b/linux/mips/syscallent-n64.h
index fdd778b4..37c20240 100644
--- a/linux/mips/syscallent-n64.h
+++ b/linux/mips/syscallent-n64.h
@@ -221,10 +221,10 @@
 [5218] = { 2,	0,		SEN(timer_gettime),		"timer_gettime"		},
 [5219] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [5220] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[5221] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[5222] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[5223] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[5224] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[5221] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[5222] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[5223] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[5224] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [5225] = { 3,	TS,		SEN(tgkill),			"tgkill"		},
 [5226] = { 2,	TF,		SEN(utimes),			"utimes"		},
 [5227] = { 6,	TM,		SEN(mbind),			"mbind"			},
@@ -300,7 +300,7 @@
 [5297] = { 4,	0,		SEN(prlimit64),			"prlimit64"		},
 [5298] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [5299] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[5300] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[5300] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [5301] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [5302] = { 4,	TN,		SEN(sendmmsg),			"sendmmsg"		},
 [5303] = { 2,	TD,		SEN(setns),			"setns"			},
diff --git a/linux/mips/syscallent-o32.h b/linux/mips/syscallent-o32.h
index 509a719a..4e5797ea 100644
--- a/linux/mips/syscallent-o32.h
+++ b/linux/mips/syscallent-o32.h
@@ -262,10 +262,10 @@
 [4259] = { 2,	0,		SEN(timer_gettime),		"timer_gettime"		},
 [4260] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [4261] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[4262] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[4263] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[4264] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[4265] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[4262] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[4263] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[4264] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[4265] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [4266] = { 3,	TS,		SEN(tgkill),			"tgkill"		},
 [4267] = { 2,	TF,		SEN(utimes),			"utimes"		},
 [4268] = { 6,	TM,		SEN(mbind),			"mbind"			},
@@ -341,7 +341,7 @@
 [4338] = { 4,	0,		SEN(prlimit64),			"prlimit64"		},
 [4339] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [4340] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[4341] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[4341] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [4342] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [4343] = { 4,	TN,		SEN(sendmmsg),			"sendmmsg"		},
 [4344] = { 2,	TD,		SEN(setns),			"setns"			},
diff --git a/linux/powerpc/syscallent.h b/linux/powerpc/syscallent.h
index 1431f8a9..86e3a3f6 100644
--- a/linux/powerpc/syscallent.h
+++ b/linux/powerpc/syscallent.h
@@ -271,10 +271,10 @@
 [242] = { 2,	0,		SEN(timer_gettime),		"timer_gettime"		},
 [243] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [244] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[245] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[246] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[247] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[248] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[245] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[246] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[247] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[248] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [249] = { 2,	0,		SEN(printargs),			"swapcontext"		},
 [250] = { 3,	TS,		SEN(tgkill),			"tgkill"		},
 [251] = { 2,	TF,		SEN(utimes),			"utimes"		},
@@ -373,7 +373,7 @@
 [344] = { 4,	TN,		SEN(accept4),			"accept4"		},
 [345] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [346] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[347] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[347] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [348] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [349] = { 4,	TN,		SEN(sendmmsg),			"sendmmsg"		},
 [350] = { 2,	TD,		SEN(setns),			"setns"			},
diff --git a/linux/powerpc64/syscallent.h b/linux/powerpc64/syscallent.h
index eae3b57b..77f91fa6 100644
--- a/linux/powerpc64/syscallent.h
+++ b/linux/powerpc64/syscallent.h
@@ -266,10 +266,10 @@
 [242] = { 2,	0,		SEN(timer_gettime),		"timer_gettime"		},
 [243] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [244] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[245] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[246] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[247] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[248] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[245] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[246] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[247] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[248] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [249] = { 2,	0,		SEN(printargs),			"swapcontext"		},
 [250] = { 3,	TS,		SEN(tgkill),			"tgkill"		},
 [251] = { 2,	TF,		SEN(utimes),			"utimes"		},
@@ -368,7 +368,7 @@
 [344] = { 4,	TN,		SEN(accept4),			"accept4"		},
 [345] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [346] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[347] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[347] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [348] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [349] = { 4,	TN,		SEN(sendmmsg),			"sendmmsg"		},
 [350] = { 2,	TD,		SEN(setns),			"setns"			},
diff --git a/linux/s390/syscallent.h b/linux/s390/syscallent.h
index 105e511e..3b5dc5b0 100644
--- a/linux/s390/syscallent.h
+++ b/linux/s390/syscallent.h
@@ -287,10 +287,10 @@
 [256] = { 2,	0,		SEN(timer_gettime),		"timer_gettime"		},
 [257] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [258] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[259] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[260] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[261] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[262] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[259] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[260] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[261] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[262] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [263] = { 5,	0,		SEN(vserver),			"vserver"		},
 [264] = { 6,	TD,		SEN(fadvise64_64),		"fadvise64_64"		},
 [265] = { 3,	TF,		SEN(statfs64),			"statfs64"		},
@@ -365,7 +365,7 @@
 [334] = { 4,	0,		SEN(prlimit64),			"prlimit64"		},
 [335] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [336] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[337] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[337] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [338] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [339] = { 2,	TD,		SEN(setns),			"setns"			},
 [340] = { 6,	0,		SEN(process_vm_readv),		"process_vm_readv"	},
diff --git a/linux/s390x/syscallent.h b/linux/s390x/syscallent.h
index d5b54590..0e82385a 100644
--- a/linux/s390x/syscallent.h
+++ b/linux/s390x/syscallent.h
@@ -271,10 +271,10 @@
 [256] = { 2,	0,		SEN(timer_gettime),		"timer_gettime"		},
 [257] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [258] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[259] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[260] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[261] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[262] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[259] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[260] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[261] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[262] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [263] = { 5,	0,		SEN(vserver),			"vserver"		},
 [264] = { },
 [265] = { 3,	TF,		SEN(statfs64),			"statfs64"		},
@@ -349,7 +349,7 @@
 [334] = { 4,	0,		SEN(prlimit64),			"prlimit64"		},
 [335] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [336] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[337] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[337] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [338] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [339] = { 2,	TD,		SEN(setns),			"setns"			},
 [340] = { 6,	0,		SEN(process_vm_readv),		"process_vm_readv"	},
diff --git a/linux/sh/syscallent.h b/linux/sh/syscallent.h
index 13884169..92ec4224 100644
--- a/linux/sh/syscallent.h
+++ b/linux/sh/syscallent.h
@@ -289,10 +289,10 @@
 [261] = { 2,	0,		SEN(timer_gettime),		"timer_gettime"		},
 [262] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [263] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[264] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[265] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[266] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[267] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[264] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[265] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[266] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[267] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [268] = { 3,	TF,		SEN(statfs64),			"statfs64"		},
 [269] = { 3,	TD,		SEN(fstatfs64),			"fstatfs64"		},
 [270] = { 3,	TS,		SEN(tgkill),			"tgkill"		},
@@ -386,7 +386,7 @@
 [358] = { 4,	TN,		SEN(accept4),			"accept4"		},
 [359] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [360] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[361] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[361] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [362] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [363] = { 4,	TN,		SEN(sendmmsg),			"sendmmsg"		},
 [364] = { 2,	TD,		SEN(setns),			"setns"			},
diff --git a/linux/sh64/syscallent.h b/linux/sh64/syscallent.h
index e9351048..cf64fe4e 100644
--- a/linux/sh64/syscallent.h
+++ b/linux/sh64/syscallent.h
@@ -315,10 +315,10 @@
 [289] = { 2,	0,		SEN(timer_gettime),		"timer_gettime"		},
 [290] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [291] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[292] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[293] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[294] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[295] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[292] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[293] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[294] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[295] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [296] = { 3,	TF,		SEN(statfs64),			"statfs64"		},
 [297] = { 3,	TD,		SEN(fstatfs64),			"fstatfs64"		},
 [298] = { 3,	TS,		SEN(tgkill),			"tgkill"		},
@@ -395,7 +395,7 @@
 [369] = { 4,	0,		SEN(prlimit64),			"prlimit64"		},
 [370] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [371] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[372] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[372] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [373] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [374] = { 4,	TN,		SEN(sendmmsg),			"sendmmsg"		},
 [375] = { 2,	TD,		SEN(setns),			"setns"			},
diff --git a/linux/sparc/syscallent.h b/linux/sparc/syscallent.h
index 30d88193..3c3c9462 100644
--- a/linux/sparc/syscallent.h
+++ b/linux/sparc/syscallent.h
@@ -254,10 +254,10 @@
 [253] = { 1,	TD,		SEN(fdatasync),			"fdatasync"		},
 [254] = { 3,	0,		SEN(nfsservctl),		"nfsservctl"		},
 [255] = { 6,	TD,		SEN(sync_file_range),		"sync_file_range"	},
-[256] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[257] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[258] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[259] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[256] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[257] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[258] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[259] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [260] = { 3,	TSC,		SEN(sched_getaffinity),		"sched_getaffinity"	},
 [261] = { 3,	TSC,		SEN(sched_setaffinity),		"sched_setaffinity"	},
 [262] = { 4,	0,		SEN(timer_settime),		"timer_settime"		},
@@ -332,7 +332,7 @@
 [331] = { 4,	0,		SEN(prlimit64),			"prlimit64"		},
 [332] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [333] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[334] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[334] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [335] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [336] = { 4,	TN,		SEN(sendmmsg),			"sendmmsg"		},
 [337] = { 2,	TD,		SEN(setns),			"setns"			},
diff --git a/linux/sparc64/syscallent.h b/linux/sparc64/syscallent.h
index 1137a3e5..be6a3d99 100644
--- a/linux/sparc64/syscallent.h
+++ b/linux/sparc64/syscallent.h
@@ -252,10 +252,10 @@
 [253] = { 1,	TD,		SEN(fdatasync),			"fdatasync"		},
 [254] = { 3,	0,		SEN(nfsservctl),		"nfsservctl"		},
 [255] = { 4,	TD,		SEN(sync_file_range),		"sync_file_range"	},
-[256] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[257] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[258] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[259] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[256] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[257] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[258] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[259] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [260] = { 3,	TSC,		SEN(sched_getaffinity),		"sched_getaffinity"	},
 [261] = { 3,	TSC,		SEN(sched_setaffinity),		"sched_setaffinity"	},
 [262] = { 4,	0,		SEN(timer_settime),		"timer_settime"		},
@@ -330,7 +330,7 @@
 [331] = { 4,	0,		SEN(prlimit64),			"prlimit64"		},
 [332] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [333] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[334] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[334] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [335] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [336] = { 4,	TN,		SEN(sendmmsg),			"sendmmsg"		},
 [337] = { 2,	TD,		SEN(setns),			"setns"			},
diff --git a/linux/x32/syscallent.h b/linux/x32/syscallent.h
index 60bda375..f8be3253 100644
--- a/linux/x32/syscallent.h
+++ b/linux/x32/syscallent.h
@@ -225,10 +225,10 @@
 [224] = { 2,	0,		SEN(timer_gettime),		"timer_gettime"		},
 [225] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [226] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[227] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[228] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[229] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[230] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[227] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[228] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[229] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[230] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [231] = { 1,	TP|SE,		SEN(exit),			"exit_group"		},
 [232] = { 4,	TD,		SEN(epoll_wait),		"epoll_wait"		},
 [233] = { 4,	TD,		SEN(epoll_ctl),			"epoll_ctl"		},
@@ -303,7 +303,7 @@
 [302] = { 4,	0,		SEN(prlimit64),			"prlimit64"		},
 [303] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [304] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[305] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[305] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [306] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [307] = { 4,	TN,		SEN(printargs),			"64:sendmmsg"		},
 [308] = { 2,	TD,		SEN(setns),			"setns"			},
diff --git a/linux/x86_64/syscallent.h b/linux/x86_64/syscallent.h
index 73165b88..2aa20bd9 100644
--- a/linux/x86_64/syscallent.h
+++ b/linux/x86_64/syscallent.h
@@ -225,10 +225,10 @@
 [224] = { 2,	0,		SEN(timer_gettime),		"timer_gettime"		},
 [225] = { 1,	0,		SEN(timer_getoverrun),		"timer_getoverrun"	},
 [226] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
-[227] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[228] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[229] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[230] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[227] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[228] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[229] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[230] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [231] = { 1,	TP|SE,		SEN(exit),			"exit_group"		},
 [232] = { 4,	TD,		SEN(epoll_wait),		"epoll_wait"		},
 [233] = { 4,	TD,		SEN(epoll_ctl),			"epoll_ctl"		},
@@ -303,7 +303,7 @@
 [302] = { 4,	0,		SEN(prlimit64),			"prlimit64"		},
 [303] = { 5,	TD|TF,		SEN(name_to_handle_at),		"name_to_handle_at"	},
 [304] = { 3,	TD,		SEN(open_by_handle_at),		"open_by_handle_at"	},
-[305] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[305] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [306] = { 1,	TD,		SEN(syncfs),			"syncfs"		},
 [307] = { 4,	TN,		SEN(sendmmsg),			"sendmmsg"		},
 [308] = { 2,	TD,		SEN(setns),			"setns"			},
diff --git a/linux/xtensa/syscallent.h b/linux/xtensa/syscallent.h
index 63995bc2..21dea9fd 100644
--- a/linux/xtensa/syscallent.h
+++ b/linux/xtensa/syscallent.h
@@ -234,10 +234,10 @@
 [241] = { 3,	0,		SEN(io_submit),			"io_submit"		},
 [242] = { 5,	0,		SEN(io_getevents),		"io_getevents"		},
 [243] = { 3,	0,		SEN(io_cancel),			"io_cancel"		},
-[244] = { 2,	0,		SEN(clock_settime),		"clock_settime"		},
-[245] = { 2,	0,		SEN(clock_gettime),		"clock_gettime"		},
-[246] = { 2,	0,		SEN(clock_getres),		"clock_getres"		},
-[247] = { 4,	0,		SEN(clock_nanosleep),		"clock_nanosleep"	},
+[244] = { 2,	TCL,		SEN(clock_settime),		"clock_settime"		},
+[245] = { 2,	TCL,		SEN(clock_gettime),		"clock_gettime"		},
+[246] = { 2,	TCL,		SEN(clock_getres),		"clock_getres"		},
+[247] = { 4,	TCL,		SEN(clock_nanosleep),		"clock_nanosleep"	},
 [248] = { 3,	0,		SEN(timer_create),		"timer_create"		},
 [249] = { 1,	0,		SEN(timer_delete),		"timer_delete"		},
 [250] = { 4,	0,		SEN(timer_settime),		"timer_settime"		},
@@ -317,7 +317,7 @@
 [326] = { 6,	TD,		SEN(sync_file_range2),		"sync_file_range2"	},
 [327] = { 5,	TD,		SEN(perf_event_open),		"perf_event_open"	},
 [328] = { 4,	TP|TS,		SEN(rt_tgsigqueueinfo),		"rt_tgsigqueueinfo"	},
-[329] = { 2,	0,		SEN(clock_adjtime),		"clock_adjtime"		},
+[329] = { 2,	TCL,		SEN(clock_adjtime),		"clock_adjtime"		},
 [330] = { 4,	0,		SEN(prlimit64),			"prlimit64"		},
 [331] = { 5,	0,		SEN(kcmp),			"kcmp"			},
 [332] = { 3,	TD,		SEN(finit_module),		"finit_module"		},
diff --git a/qualify.c b/qualify.c
index b5023f21..6ab30339 100644
--- a/qualify.c
+++ b/qualify.c
@@ -220,6 +220,7 @@ lookup_class(const char *s)
 		{ "%ipc",	TRACE_IPC	},
 		{ "%network",	TRACE_NETWORK	},
 		{ "%sched",	TRACE_SCHED	},
+		{ "%clock",	TRACE_CLOCK	},
 	};
 
 	unsigned int i;
diff --git a/strace.1 b/strace.1
index 9b69ec22..0c0f1a7a 100644
--- a/strace.1
+++ b/strace.1
@@ -429,6 +429,9 @@ Trace all memory mapping related system calls.
 .BR "\-e\ trace" = %sched
 Trace all scheduler-related (sched_*) system calls.
 .TP
+.BR "\-e\ trace" = %clock
+Trace all clock-related (clock_*) system calls.
+.TP
 \fB\-e\ abbrev\fR=\,\fIset\fR
 Abbreviate the output from printing each member of large structures.
 The default is
diff --git a/syscall.c b/syscall.c
index 569055f2..5ca46d1e 100644
--- a/syscall.c
+++ b/syscall.c
@@ -77,6 +77,7 @@
 #define TS TRACE_SIGNAL
 #define TM TRACE_MEMORY
 #define TSC TRACE_SCHED
+#define TCL TRACE_CLOCK
 #define NF SYSCALL_NEVER_FAILS
 #define MA MAX_ARGS
 #define SI STACKTRACE_INVALIDATE_CACHE
@@ -113,6 +114,7 @@ static const struct_sysent sysent2[] = {
 #undef TS
 #undef TM
 #undef TSC
+#undef TCL
 #undef NF
 #undef MA
 #undef SI
diff --git a/sysent.h b/sysent.h
index f4eaa930..53a4a0a8 100644
--- a/sysent.h
+++ b/sysent.h
@@ -22,5 +22,6 @@ typedef struct sysent {
 #define TRACE_INDIRECT_SUBCALL	02000	/* Syscall is an indirect socket/ipc subcall. */
 #define COMPAT_SYSCALL_TYPES	04000	/* A compat syscall that uses compat types. */
 #define TRACE_SCHED		010000  /* Trace scheduler-related syscalls. */
+#define TRACE_CLOCK		020000  /* Trace clock-related syscalls. */
 
 #endif /* !STRACE_SYSENT_H */
diff --git a/tests/Makefile.am b/tests/Makefile.am
index c6c28cc0..fa9c5ce8 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -505,6 +505,7 @@ DECODER_TESTS = \
 	chown.test \
 	chown32.test \
 	chroot.test \
+	clock.test \
 	clock_adjtime.test \
 	clock_nanosleep.test \
 	clock_xettime.test \
diff --git a/tests/clock.test b/tests/clock.test
new file mode 100755
index 00000000..b3eb7ac2
--- /dev/null
+++ b/tests/clock.test
@@ -0,0 +1,35 @@
+#!/bin/sh
+# Check -e trace=%clock option.
+
+. "${srcdir=.}/init.sh"
+
+# Tracing clock_* related syscalls.
+while read w i
+do
+	try_run_prog "./$i" || continue
+	run_strace -a$w -e trace=%clock ./$i > "$EXP"
+	match_diff "$LOG" "$EXP"
+done << EOF
+40 clock_nanosleep
+37 clock_adjtime
+36 clock_xettime
+EOF
+
+echo '+++ exited with 0 +++' > "$EXP"
+
+# Tracing syscalls which do
+# not start with clock_*.
+while read w i
+do
+	try_run_prog "./$i" || continue
+	run_strace -a$w -e trace=%clock  ./$i  > /dev/null
+	match_diff "$LOG" "$EXP"
+done << EOF
+11 fchdir
+27 futex
+10 fsync
+21 fstat
+30 open
+EOF
+
+rm "$EXP"
diff --git a/tests/ksysent.c b/tests/ksysent.c
index 252feffc..72413692 100644
--- a/tests/ksysent.c
+++ b/tests/ksysent.c
@@ -41,6 +41,7 @@
 #define TS 0
 #define TM 0
 #define TSC 0
+#define TCL 0
 #define NF 0
 #define MA 0
 #define SI 0
diff --git a/tests/nsyscalls.c b/tests/nsyscalls.c
index c2bdb202..10943898 100644
--- a/tests/nsyscalls.c
+++ b/tests/nsyscalls.c
@@ -42,6 +42,7 @@
 #define TS 0
 #define TM 0
 #define TSC 0
+#define TCL 0
 #define NF 0
 #define MA 0
 #define SI 0
-- 
2.11.0

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Strace-devel mailing list
Strace-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/strace-devel

Reply via email to