On Tue, Mar 08, 2016 at 10:05:15PM +0530, haris iqbal wrote: > On Tue, Mar 8, 2016 at 4:02 AM, Dmitry V. Levin <[email protected]> wrote: > > On Mon, Mar 07, 2016 at 02:35:50PM +0530, haris iqbal wrote: > >> 2016-03-07 Md Haris Iqbal <[email protected]> > >> > >> * defs.h > >> * + define TRACE_SCHED 04000 / Trace scheduler-related syscalls / > >> > >> * syscall.c (lookup_class) > >> * + if (strcmp(s, "scheduler") == 0) > >> * + return TRACE_SCHED; > >> * + define TSC TRACE_SCHED > >> > >> * All syscallent.h files > >> * added TSC flag > >> > >> Tested with -e trace=scheduler > > > > Sorry, but what does this mean? It surely doesn't look like a patch. > > Sorry, My mistake. Here it is. > > commit 5203b9e6512a9c8a77faa63669b1899d247e1059 > Author: student <[email protected]> > Date: Mon Mar 7 14:18:12 2016 +0530 > > Added feature to trace the scheduler group with -e option > > diff --git a/defs.h b/defs.h > index f095ff6..6c840f5 100644 > --- a/defs.h > +++ b/defs.h > @@ -403,6 +403,7 @@ extern const struct xlat whence_codes[]; > #define TRACE_SIGNAL 020 /* Trace signal-related syscalls. */ > #define TRACE_DESC 040 /* Trace file descriptor-related syscalls. */ > #define TRACE_MEMORY 0100 /* Trace memory mapping-related syscalls. */ > +#define TRACE_SCHED 04000 /* Trace scheduler-related syscalls */
Is there any reason to insert a new value in the middle of the list?
Let's keep the list in order.
Also, please follow the indentation style.
> #define SYSCALL_NEVER_FAILS 0200 /* Syscall is always successful. */
> #define STACKTRACE_INVALIDATE_CACHE 0400 /* Trigger proc/maps cache
> updating */
> #define STACKTRACE_CAPTURE_ON_ENTER 01000 /* Capture stacktrace on
> "entering" stage */
> diff --git a/linux/32/syscallent.h b/linux/32/syscallent.h
> index 03874ac..096bd32 100644
> --- a/linux/32/syscallent.h
> +++ b/linux/32/syscallent.h
> @@ -123,16 +123,16 @@
> [115] = { 4, 0, SEN(clock_nanosleep), "clock_nanosleep"
> },
> [116] = { 3, 0, SEN(syslog), "syslog" },
> [117] = { 4, 0, SEN(ptrace), "ptrace" },
> -[118] = { 2, 0, SEN(sched_setparam), "sched_setparam" },
> -[119] = { 3, 0, SEN(sched_setscheduler),
> "sched_setscheduler" },
> -[120] = { 1, 0, SEN(sched_getscheduler),
> "sched_getscheduler" },
> -[121] = { 2, 0, SEN(sched_getparam), "sched_getparam" },
> -[122] = { 3, 0, SEN(sched_setaffinity),
> "sched_setaffinity" },
> -[123] = { 3, 0, SEN(sched_getaffinity),
> "sched_getaffinity" },
> -[124] = { 0, 0, SEN(sched_yield), "sched_yield" },
> -[125] = { 1, 0, SEN(sched_get_priority_max),
> "sched_get_priority_max"},
> -[126] = { 1, 0, SEN(sched_get_priority_min),
> "sched_get_priority_min"},
> -[127] = { 2, 0, SEN(sched_rr_get_interval),
> "sched_rr_get_interval" },
> +[118] = { 2, TSC, SEN(sched_setparam), "sched_setparam"
> },
> +[119] = { 3, TSC, SEN(sched_setscheduler),
> "sched_setscheduler" },
> +[120] = { 1, TSC, SEN(sched_getscheduler),
> "sched_getscheduler" },
> +[121] = { 2, TSC, SEN(sched_getparam), "sched_getparam"
> },
> +[122] = { 3, TSC, SEN(sched_setaffinity),
> "sched_setaffinity" },
> +[123] = { 3, TSC, SEN(sched_getaffinity),
> "sched_getaffinity" },
> +[124] = { 0, TSC, SEN(sched_yield), "sched_yield" },
> +[125] = { 1, TSC, SEN(sched_get_priority_max),
> "sched_get_priority_max"},
> +[126] = { 1, TSC, SEN(sched_get_priority_min),
> "sched_get_priority_min"},
> +[127] = { 2, TSC, SEN(sched_rr_get_interval),
> "sched_rr_get_interval" },
> [128] = { 0, 0, SEN(restart_syscall), "restart_syscall"
> },
> [129] = { 2, TS, SEN(kill), "kill" },
> [130] = { 2, TS, SEN(kill), "tkill" },
> @@ -264,8 +264,8 @@
> [271] = { 6, 0, SEN(process_vm_writev),
> "process_vm_writev" },
> [272] = { 5, 0, SEN(kcmp), "kcmp" },
> [273] = { 3, TD, SEN(finit_module), "finit_module" },
> -[274] = { 3, 0, SEN(sched_setattr), "sched_setattr"
> },
> -[275] = { 4, 0, SEN(sched_getattr), "sched_getattr"
> },
> +[274] = { 3, TSC, SEN(sched_setattr),
> "sched_setattr" },
> +[275] = { 4, TSC, SEN(sched_getattr),
> "sched_getattr" },
> [276] = { 5, TD|TF, SEN(renameat2), "renameat2"
> },
> [277] = { 3, 0, SEN(seccomp), "seccomp", },
> [278] = { 3, 0, SEN(getrandom), "getrandom", },
I assume all changes to syscallent files were made by some simple script.
Please include this script into commit message.
[...]
> --- a/syscall.c
> +++ b/syscall.c
> @@ -78,6 +78,7 @@
> #define TP TRACE_PROCESS
> #define TS TRACE_SIGNAL
> #define TM TRACE_MEMORY
> +#define TSC TRACE_SCHED
> #define NF SYSCALL_NEVER_FAILS
> #define MA MAX_ARGS
> #define SI STACKTRACE_INVALIDATE_CACHE
> @@ -500,6 +501,8 @@ lookup_class(const char *s)
> return TRACE_DESC;
> if (strcmp(s, "memory") == 0)
> return TRACE_MEMORY;
> + if (strcmp(s, "scheduler") == 0)
> + return TRACE_SCHED;
> return -1;
> }
Please follow the indentation style.
BTW, why "scheduler"? Could you give a rationale for this name?
--
ldv
pgpB24r5tLx9B.pgp
Description: PGP signature
------------------------------------------------------------------------------ Transform Data into Opportunity. Accelerate data analysis in your applications with Intel Data Analytics Acceleration Library. Click to learn more. http://pubads.g.doubleclick.net/gampad/clk?id=278785111&iu=/4140
_______________________________________________ Strace-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/strace-devel
