Hey,
I have implemented clock.test test case,and ya clock_nanosleep's test
has setitimer as one of the option,so i did the same and and included
setitimer in my test case so that $LOG and $EXP  have the same out
put. But well i am still in doubt that why printing setitimer is
necessary in clock_nanosleep.c?

Well i am not sure about the changeLog thing but what i have
understood in README-hacking i have implemented that.

I have used TRACE_SCHED 00030,well Eugene said that i have to use a
code which doesn't collide with other TRACE_*  so what collision means
here?

Also i have fixed the other issues that Eugene had pointed out.

So take a look,

>From db0bcd1ec344610e574481a186e91345844d0b29 Mon Sep 17 00:00:00 2001
From: Rishi Bhatt <bhatt.rishi...@gmail.com>
Date: Tue, 14 Mar 2017 21:25:26 +0530
Subject: [PATCH v2] Implemented -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_\)/TC\1/'

* sysent.h (TRACE_CLOCK): New definition.
* syscall.c: Alias TC to TRACE_CLOCK around syscallent.h inclusion.
* linux/32/syscallent.h: Add TC 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 TC to 0.
* tests/nsyscalls.c: Likewise.
* tests/clock.test: New test.
* tests/Makefile.am (DECODER_TESTS): Add clock.test.
* 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              | 42 ++++++++++++++++++++++++++++++++++++++++++
 tests/ksysent.c               |  1 +
 tests/nsyscalls.c             |  1 +
 34 files changed, 182 insertions(+), 130 deletions(-)
 create mode 100644 tests/clock.test

diff --git a/linux/32/syscallent.h b/linux/32/syscallent.h
index a8f95107..2e6fabbd 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[113] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[114] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[115] = { 4,   TC,             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,   TC,             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 a705eae9..60b7b073 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[113] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[114] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[115] = { 4,   TC,             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,   TC,             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 4449f221..6ded7df2 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[420] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[421] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[422] = { 4,   TC,             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,   TC,             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..f4c8812c 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[263] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[264] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[265] = { 4,   TC,             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,   TC,             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..d174ccac 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[216] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[217] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[218] = { 4,   TC,             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,   TC,             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..b0a5f690 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[266] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[267] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[268] = { 4,   TC,             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,   TC,             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..c0c9ec71 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[265] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[266] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[267] = { 4,   TC,             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,   TC,             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 647a2dc5..a04c2e45 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[256] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[257] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[258] = { 4,   TC,             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,   TC,             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 8ef1b1cd..8845d8d6 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[265] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[266] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[267] = { 4,   TC,             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,   TC,             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 895e7aec..275ee12e 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,  TC,             SEN(clock_settime),             "clock_settime" 
        },
+[1254] = { 2,  TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[1255] = { 2,  TC,             SEN(clock_getres),              "clock_getres"  
        },
+[1256] = { 4,  TC,             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,  TC,             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..1d481859 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[260] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[261] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[262] = { 4,   TC,             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,   TC,             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..6c48939f 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[265] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[266] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[267] = { 4,   TC,             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,   TC,             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..4a9afe25 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,  TC,             SEN(clock_settime),             "clock_settime" 
        },
+[6226] = { 2,  TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[6227] = { 2,  TC,             SEN(clock_getres),              "clock_getres"  
        },
+[6228] = { 4,  TC,             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,  TC,             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..a489323f 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,  TC,             SEN(clock_settime),             "clock_settime" 
        },
+[5222] = { 2,  TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[5223] = { 2,  TC,             SEN(clock_getres),              "clock_getres"  
        },
+[5224] = { 4,  TC,             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,  TC,             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..93a22934 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,  TC,             SEN(clock_settime),             "clock_settime" 
        },
+[4263] = { 2,  TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[4264] = { 2,  TC,             SEN(clock_getres),              "clock_getres"  
        },
+[4265] = { 4,  TC,             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,  TC,             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..0928b7ef 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[246] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[247] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[248] = { 4,   TC,             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,   TC,             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..c8642415 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[246] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[247] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[248] = { 4,   TC,             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,   TC,             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 c04353cc..6de6d90a 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[260] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[261] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[262] = { 4,   TC,             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,   TC,             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 ab8a5d86..3e5d0956 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[260] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[261] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[262] = { 4,   TC,             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,   TC,             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..4eee0e59 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[265] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[266] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[267] = { 4,   TC,             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,   TC,             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..287bdf08 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[293] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[294] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[295] = { 4,   TC,             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,   TC,             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..6f3f54fc 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[257] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[258] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[259] = { 4,   TC,             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,   TC,             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..4f4fc201 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[257] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[258] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[259] = { 4,   TC,             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,   TC,             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 2699bc04..e2e3a178 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[228] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[229] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[230] = { 4,   TC,             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,   TC,             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 a1a268ec..3adc9345 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[228] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[229] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[230] = { 4,   TC,             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,   TC,             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..eab5b0e8 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,   TC,             SEN(clock_settime),             "clock_settime" 
        },
+[245] = { 2,   TC,             SEN(clock_gettime),             "clock_gettime" 
        },
+[246] = { 2,   TC,             SEN(clock_getres),              "clock_getres"  
        },
+[247] = { 4,   TC,             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,   TC,             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..373393f6 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..383c7d8f 100644
--- a/syscall.c
+++ b/syscall.c
@@ -77,6 +77,7 @@
 #define TS TRACE_SIGNAL
 #define TM TRACE_MEMORY
 #define TSC TRACE_SCHED
+#define TC 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 TC
 #undef NF
 #undef MA
 #undef SI
diff --git a/sysent.h b/sysent.h
index f4eaa930..dc00ae3f 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            00030   /*Trace clocks-related syscalls*/

 #endif /* !STRACE_SYSENT_H */
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 5a7a45f6..57e99454 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -502,6 +502,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 100644
index 00000000..cba21d38
--- /dev/null
+++ b/tests/clock.test
@@ -0,0 +1,42 @@
+#!/bin/sh
+# Check -e trace=%clock option
+
+# Positive Test cases.
+CLOCK_TESTS='40 clock_nanosleep
+37 clock_adjtime
+36 clock_xettime'
+
+# Negative Test Cases.
+NON_CLOCK_TESTS='11 fchdir
+27 futex
+10 fsync'
+
+# Declaring the init.sh
+. "${srcdir=.}/init.sh"
+
+#
+# Tracing Clock_* related syscalls.
+#
+echo "$CLOCK_TESTS" | while read w i
+do
+       run_prog ./$i > /dev/null
+       run_strace -a$w -e trace=%clock,setitimer ./$i > "$EXP"
+       match_diff "$LOG" "$EXP"
+
+done
+
+echo '+++ exited with 0 +++' > "$EXP"
+#
+#  Tracing NON_CLOCK related syscalls
+#  /dev/null for ignoring print statements
+#  from the executable.
+#
+echo "$NON_CLOCK_TESTS" | while read w i
+do
+       run_prog ./$i > /dev/null
+       run_strace -a$w -e trace=%clock ./$i  > /dev/null
+       match_diff "$LOG" "$EXP"
+done
+
+rm "$EXP"
+
diff --git a/tests/ksysent.c b/tests/ksysent.c
index 252feffc..9e978ed2 100644
--- a/tests/ksysent.c
+++ b/tests/ksysent.c
@@ -41,6 +41,7 @@
 #define TS 0
 #define TM 0
 #define TSC 0
+#define TC 0
 #define NF 0
 #define MA 0
 #define SI 0
diff --git a/tests/nsyscalls.c b/tests/nsyscalls.c
index c2bdb202..ab440f77 100644
--- a/tests/nsyscalls.c
+++ b/tests/nsyscalls.c
@@ -42,6 +42,7 @@
 #define TS 0
 #define TM 0
 #define TSC 0
+#define TC 0
 #define NF 0
 #define MA 0
 #define SI 0
-- 
2.11.0


On 3/14/17, Rishi Bhatt <bhatt.rishi...@gmail.com> wrote:
> Well i got it so i have done something like this:
>
> run_prog ./$i > /dev/null
>     run_strace -a$w -e trace=%clock,setitimer ./$i > "$EXP"
>     match_diff "$LOG" "$EXP"
>
> On Tue, Mar 14, 2017 at 8:04 AM, Dmitry V. Levin <l...@altlinux.org> wrote:
>
>> On Mon, Mar 13, 2017 at 11:20:30PM +0530, Rishi Bhatt wrote:
>> > Hey does $STRACE in init.sh is doing this:strace -e trace=%clock
>> > ./clock_nanosleep > /dev/null
>> >
>> > So  my problem here is the output in .tmp file is correct but the .exp
>> has
>> > the print statements from ./clock_nanosleep so for matching .exp and
>> > .tmp
>> > files i have to filter setitimer string from .exp file?
>> >
>> > (< setitimer(ITIMER_REAL, {it_interval={tv_sec=0, tv_usec=222222},
>> > it_value={tv_sec=0, tv_usec=111111}}, NULL) = 0)
>> >
>> > Also please give me some idea about if i want to implement a test case,
>> > i
>> > am confuse in ,what should be the output and from whom i have to
>> > compare
>> > it?  Or what should be my basic approach to implement test cases.
>> >
>> > Sorry if this thing is too easy but well i am not just getting the crux
>> of
>> > it.
>>
>> Looks like you don't understand the fact that you are trying to reuse a
>> part of clock_nanosleep.test for your new test, and you don't understand
>> that it doesn't work as easily as with other clock_* tests you are trying
>> to reuse because for some obscure reason clock_nanosleep.test doesn't
>> limit itself with testing of clock_nanosleep decoder.
>>
>>
>> --
>> 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
>>
>>
>

------------------------------------------------------------------------------
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