Revision: 924 Author: teawater Date: Mon Feb 20 23:17:57 2012 Log: Remove GTP_VAR_NOT_GETV, GTP_VAR_NOT_SETV and GTP_VAR_NOT_TRACEV. http://code.google.com/p/kgtp/source/detail?r=924 Modified: /trunk/UPDATE /trunk/gtp.c /trunk/gtp_for_review.patch ======================================= --- /trunk/UPDATE Mon Feb 20 23:16:03 2012 +++ /trunk/UPDATE Mon Feb 20 23:17:57 2012 @@ -14,6 +14,8 @@ * Add $current_task_pid to access to get_current()->pid. +* Remove GTP_VAR_NOT_GETV, GTP_VAR_NOT_SETV and GTP_VAR_NOT_TRACEV. + *** 20120131 * https://lkml.org/lkml/2012/1/31/215 ======================================= --- /trunk/gtp.c Mon Feb 20 20:06:54 2012 +++ /trunk/gtp.c Mon Feb 20 23:17:57 2012 @@ -443,6 +443,10 @@ .num = GTP_VAR_VERSION_ID, .src = "0:1:6774705f76657273696f6e", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_version) @@ -452,6 +456,10 @@ .num = GTP_VAR_CPU_ID, .src = "0:1:6370755f6964", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_cpu_id) @@ -461,6 +469,10 @@ .num = GTP_VAR_CURRENT_TASK_ID, .src = "0:1:63757272656e745f7461736b", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_current_task) @@ -470,6 +482,10 @@ .num = GTP_VAR_CURRENT_TASK_PID_ID, .src = "0:1:63757272656e745f7461736b5f706964", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_current_task_pid) @@ -479,6 +495,10 @@ .num = GTP_VAR_CURRENT_THREAD_INFO_ID, .src = "0:1:63757272656e745f7468726561645f696e666f", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_current_thread_info) @@ -488,6 +508,10 @@ .num = GTP_VAR_CLOCK_ID, .src = "0:1:636c6f636b", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_clock) @@ -497,6 +521,10 @@ .num = GTP_VAR_COOKED_CLOCK_ID, .src = "0:1:636f6f6b65645f636c6f636b", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_cooked_clock) @@ -507,6 +535,10 @@ .num = GTP_VAR_RDTSC_ID, .src = "0:1:7264747363", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_rdtsc) @@ -515,6 +547,10 @@ .num = GTP_VAR_COOKED_RDTSC_ID, .src = "0:1:636f6f6b65645f7264747363", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_cooked_rdtsc) @@ -526,6 +562,10 @@ .num = GTP_VAR_GTP_RB_DISCARD_PAGE_NUMBER, .src = "0:1:646973636172645f706167655f6e756d", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_gtp_rb_discard_page_number) @@ -536,6 +576,10 @@ .num = GTP_VAR_PRINTK_TMP_ID, .src = "0:1:7072696e746b5f746d70", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_printk_tmp) @@ -545,6 +589,10 @@ .num = GTP_VAR_PRINTK_LEVEL_ID, .src = "8:1:7072696e746b5f6c6576656c", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_printk_level) @@ -554,6 +602,10 @@ .num = GTP_VAR_PRINTK_FORMAT_ID, .src = "0:1:7072696e746b5f666f726d6174", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_printk_format) @@ -563,6 +615,10 @@ .num = GTP_VAR_DUMP_STACK_ID, .src = "0:1:64756d705f737461636b", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_dump_stack) @@ -572,6 +628,10 @@ .num = GTP_VAR_NO_SELF_TRACE_ID, .src = "0:1:6e6f5f73656c665f7472616365", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_no_self_trace) @@ -581,6 +641,10 @@ .num = GTP_VAR_PIPE_TRACE_ID, .src = "0:1:706970655f7472616365", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_pipe_trace) @@ -590,6 +654,10 @@ .num = GTP_VAR_CPU_NUMBER_ID, .src = "0:1:6370755f6e756d626572", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_cpu_number) @@ -599,6 +667,10 @@ .num = GTP_VAR_PC_PE_EN_ID, .src = "0:1:70635f70655f656e", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_pc_pe_en) @@ -608,6 +680,10 @@ .num = GTP_VAR_KRET_ID, .src = "0:1:6b726574", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_kret) @@ -617,6 +693,10 @@ .num = GTP_VAR_XTIME_SEC_ID, .src = "0:1:7874696d655f736563", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_xtime_sec) @@ -626,6 +706,10 @@ .num = GTP_VAR_XTIME_NSEC_ID, .src = "0:1:7874696d655f6e736563", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_xtime_nsec) @@ -635,6 +719,10 @@ .num = GTP_VAR_IGNORE_ERROR_ID, .src = "0:1:69676e6f72655f6572726f72", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_ignore_error) @@ -644,6 +732,10 @@ .num = GTP_VAR_LAST_ERRNO_ID, .src = "0:1:6c6173745f6572726e6f", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_last_errno) @@ -653,6 +745,10 @@ .num = GTP_VAR_HARDIRQ_COUNT_ID, .src = "0:1:686172646972715f636f756e74", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_hardirq_count) @@ -662,6 +758,10 @@ .num = GTP_VAR_SOFTIRQ_COUNT_ID, .src = "0:1:736f66746972715f636f756e74", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR #define PREV_VAR (>p_var_softirq_count) @@ -671,6 +771,10 @@ .num = GTP_VAR_IRQ_COUNT_ID, .src = "0:1:6972715f636f756e74", .per_cpu = NULL, +#ifdef GTP_PERF_EVENTS + .ptid = 0, + .pts = NULL, +#endif }; #undef PREV_VAR @@ -678,19 +782,6 @@ #define GTP_VAR_IS_SPECIAL(x) ((x) >= GTP_VAR_SPECIAL_MIN \ && (x) <= GTP_VAR_SPECIAL_MAX) -#define GTP_VAR_NOT_GETV(x) ((x) == GTP_VAR_PRINTK_LEVEL_ID \ - || (x) == GTP_VAR_PRINTK_FORMAT_ID \ - || (x) == GTP_VAR_PC_PE_EN_ID \ - || (x) == GTP_VAR_KRET_ID) -#define GTP_VAR_NOT_SETV(x) (((x) >= GTP_VAR_CURRENT_TASK_ID \ - && (x) <= GTP_VAR_CPU_ID) \ - || (x) == GTP_VAR_DUMP_STACK_ID \ - || (x) == GTP_VAR_CPU_NUMBER_ID \ - || (x) == GTP_VAR_KRET_ID) -#define GTP_VAR_NOT_TRACEV(x) (((x) >= GTP_VAR_PRINTK_LEVEL_ID \ - && (x) <= GTP_VAR_PRINTK_FORMAT_ID) \ - || (x) == GTP_VAR_PC_PE_EN_ID \ - || (x) == GTP_VAR_KRET_ID) #ifdef GTP_RB #define GTP_VAR_AUTO_TRACEV(x) ((x) == GTP_VAR_CPU_ID) #endif @@ -2610,7 +2701,8 @@ gtp_action_x_setv_pe; \ /* Not check the other special \ trace state variables. \ - Checked in gtp_check_x. */ \ + Because set in tve->val doesn't \ + affect anything. */ \ tve->val = (uint64_t)top; \ } \ break; \ @@ -3313,24 +3405,18 @@ case 0x2c: arg = ebuf[pc++]; arg = (arg << 8) + ebuf[pc++]; - if (GTP_VAR_NOT_GETV(arg)) - goto code_error_out; gtp_action_x_getv; break; /* setv */ case 0x2d: arg = ebuf[pc++]; arg = (arg << 8) + ebuf[pc++]; - if (GTP_VAR_NOT_SETV(arg)) - goto code_error_out; gtp_action_x_setv; break; /* tracev */ case 0x2e: arg = ebuf[pc++]; arg = (arg << 8) + ebuf[pc++]; - if (GTP_VAR_NOT_TRACEV(arg)) - goto code_error_out; gtp_action_x_tracev; break; /* printf */ @@ -4597,13 +4683,6 @@ ret = 1; goto release_out; } - - if (GTP_VAR_NOT_GETV(arg)) { - printk(KERN_WARNING - "gtp_check_x: The tv %d cannot " - "get.\n", arg); - goto release_out; - } if (!GTP_VAR_IS_SPECIAL(arg)) { if (gtp_x_var_add(&vlist, arg, 1)) { @@ -4646,13 +4725,6 @@ ret = 1; goto release_out; } - - if (GTP_VAR_NOT_SETV(arg)) { - printk(KERN_WARNING - "gtp_check_x: The tv %d cannot " - "set.\n", arg); - goto release_out; - } if (arg == GTP_VAR_PRINTK_LEVEL_ID) tpe->have_printk = 1; @@ -4683,13 +4755,6 @@ ret = 1; goto release_out; } - - if (GTP_VAR_NOT_TRACEV(arg)) { - printk(KERN_WARNING - "gtp_check_x: The tv %d cannot " - "trace.\n", arg); - goto release_out; - } if (!GTP_VAR_IS_SPECIAL(arg)) { if (gtp_x_var_add(&vlist, arg, 4)) { ======================================= --- /trunk/gtp_for_review.patch Mon Feb 20 20:06:54 2012 +++ /trunk/gtp_for_review.patch Mon Feb 20 23:17:57 2012 @@ -8,11 +8,11 @@ kernel/events/core.c | 14 lib/Kconfig.debug | 10 lib/Makefile | 4- lib/gtp.c | 8468 +++++++++++++++++++++++++++++++++ + lib/gtp.c | 8533 +++++++++++++++++++++++++++++++++
lib/gtp_rb.c | 495 + scripts/gtp/getgtprsp.pl | 137 scripts/gtp/getmod.py | 132 - 13 files changed, 11079 insertions(+), 2 deletions(-) + 13 files changed, 11144 insertions(+), 2 deletions(-) --- /dev/null +++ b/Documentation/trace/gtp.txt @@ -1951,7 +1951,7 @@ +gtp.o: gtp_rb.c --- /dev/null +++ b/lib/gtp.c -@@ -0,0 +1,8468 @@ +@@ -0,0 +1,8533 @@ +/* + * Kernel GDB tracepoint module. + * @@ -2243,6 +2243,10 @@ + .num = GTP_VAR_VERSION_ID, + .src = "0:1:6774705f76657273696f6e", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_version) @@ -2252,6 +2256,10 @@ + .num = GTP_VAR_CPU_ID, + .src = "0:1:6370755f6964", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_cpu_id) @@ -2261,6 +2269,10 @@ + .num = GTP_VAR_CURRENT_TASK_ID, + .src = "0:1:63757272656e745f7461736b", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_current_task) @@ -2270,6 +2282,10 @@ + .num = GTP_VAR_CURRENT_TASK_PID_ID, + .src = "0:1:63757272656e745f7461736b5f706964", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_current_task_pid) @@ -2279,6 +2295,10 @@ + .num = GTP_VAR_CURRENT_THREAD_INFO_ID, + .src = "0:1:63757272656e745f7468726561645f696e666f", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_current_thread_info) @@ -2288,6 +2308,10 @@ + .num = GTP_VAR_CLOCK_ID, + .src = "0:1:636c6f636b", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_clock) @@ -2297,6 +2321,10 @@ + .num = GTP_VAR_COOKED_CLOCK_ID, + .src = "0:1:636f6f6b65645f636c6f636b", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_cooked_clock) @@ -2307,6 +2335,10 @@ + .num = GTP_VAR_RDTSC_ID, + .src = "0:1:7264747363", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_rdtsc) @@ -2315,6 +2347,10 @@ + .num = GTP_VAR_COOKED_RDTSC_ID, + .src = "0:1:636f6f6b65645f7264747363", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_cooked_rdtsc) @@ -2326,6 +2362,10 @@ + .num = GTP_VAR_GTP_RB_DISCARD_PAGE_NUMBER, + .src = "0:1:646973636172645f706167655f6e756d", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_gtp_rb_discard_page_number) @@ -2336,6 +2376,10 @@ + .num = GTP_VAR_PRINTK_TMP_ID, + .src = "0:1:7072696e746b5f746d70", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_printk_tmp) @@ -2345,6 +2389,10 @@ + .num = GTP_VAR_PRINTK_LEVEL_ID, + .src = "8:1:7072696e746b5f6c6576656c", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_printk_level) @@ -2354,6 +2402,10 @@ + .num = GTP_VAR_PRINTK_FORMAT_ID, + .src = "0:1:7072696e746b5f666f726d6174", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_printk_format) @@ -2363,6 +2415,10 @@ + .num = GTP_VAR_DUMP_STACK_ID, + .src = "0:1:64756d705f737461636b", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_dump_stack) @@ -2372,6 +2428,10 @@ + .num = GTP_VAR_NO_SELF_TRACE_ID, + .src = "0:1:6e6f5f73656c665f7472616365", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_no_self_trace) @@ -2381,6 +2441,10 @@ + .num = GTP_VAR_PIPE_TRACE_ID, + .src = "0:1:706970655f7472616365", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_pipe_trace) @@ -2390,6 +2454,10 @@ + .num = GTP_VAR_CPU_NUMBER_ID, + .src = "0:1:6370755f6e756d626572", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_cpu_number) @@ -2399,6 +2467,10 @@ + .num = GTP_VAR_PC_PE_EN_ID, + .src = "0:1:70635f70655f656e", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_pc_pe_en) @@ -2408,6 +2480,10 @@ + .num = GTP_VAR_KRET_ID, + .src = "0:1:6b726574", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_kret) @@ -2417,6 +2493,10 @@ + .num = GTP_VAR_XTIME_SEC_ID, + .src = "0:1:7874696d655f736563", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_xtime_sec) @@ -2426,6 +2506,10 @@ + .num = GTP_VAR_XTIME_NSEC_ID, + .src = "0:1:7874696d655f6e736563", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_xtime_nsec) @@ -2435,6 +2519,10 @@ + .num = GTP_VAR_IGNORE_ERROR_ID, + .src = "0:1:69676e6f72655f6572726f72", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_ignore_error) @@ -2444,6 +2532,10 @@ + .num = GTP_VAR_LAST_ERRNO_ID, + .src = "0:1:6c6173745f6572726e6f", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_last_errno) @@ -2453,6 +2545,10 @@ + .num = GTP_VAR_HARDIRQ_COUNT_ID, + .src = "0:1:686172646972715f636f756e74", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_hardirq_count) @@ -2462,6 +2558,10 @@ + .num = GTP_VAR_SOFTIRQ_COUNT_ID, + .src = "0:1:736f66746972715f636f756e74", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR +#define PREV_VAR (>p_var_softirq_count) @@ -2471,6 +2571,10 @@ + .num = GTP_VAR_IRQ_COUNT_ID, + .src = "0:1:6972715f636f756e74", + .per_cpu = NULL, ++#ifdef GTP_PERF_EVENTS ++ .ptid = 0, ++ .pts = NULL, ++#endif +}; +#undef PREV_VAR + @@ -2478,19 +2582,6 @@ + +#define GTP_VAR_IS_SPECIAL(x) ((x) >= GTP_VAR_SPECIAL_MIN \ + && (x) <= GTP_VAR_SPECIAL_MAX) -+#define GTP_VAR_NOT_GETV(x) ((x) == GTP_VAR_PRINTK_LEVEL_ID \ -+ || (x) == GTP_VAR_PRINTK_FORMAT_ID \ -+ || (x) == GTP_VAR_PC_PE_EN_ID \ -+ || (x) == GTP_VAR_KRET_ID) -+#define GTP_VAR_NOT_SETV(x) (((x) >= GTP_VAR_CURRENT_TASK_ID \ -+ && (x) <= GTP_VAR_CPU_ID) \ -+ || (x) == GTP_VAR_DUMP_STACK_ID \ -+ || (x) == GTP_VAR_CPU_NUMBER_ID \ -+ || (x) == GTP_VAR_KRET_ID) -+#define GTP_VAR_NOT_TRACEV(x) (((x) >= GTP_VAR_PRINTK_LEVEL_ID \ -+ && (x) <= GTP_VAR_PRINTK_FORMAT_ID) \ -+ || (x) == GTP_VAR_PC_PE_EN_ID \ -+ || (x) == GTP_VAR_KRET_ID) +#ifdef GTP_RB +#define GTP_VAR_AUTO_TRACEV(x) ((x) == GTP_VAR_CPU_ID) +#endif @@ -4086,7 +4177,8 @@ + gtp_action_x_setv_pe; \ + /* Not check the other special \ + trace state variables. \ -+ Checked in gtp_check_x. */ \ ++ Because set in tve->val doesn't \ ++ affect anything. */ \ + tve->val = (uint64_t)top; \ + } \ + break; \ @@ -4789,24 +4881,18 @@ + case 0x2c: + arg = ebuf[pc++]; + arg = (arg << 8) + ebuf[pc++]; -+ if (GTP_VAR_NOT_GETV(arg)) -+ goto code_error_out; + gtp_action_x_getv; + break; + /* setv */ + case 0x2d: + arg = ebuf[pc++]; + arg = (arg << 8) + ebuf[pc++]; -+ if (GTP_VAR_NOT_SETV(arg)) -+ goto code_error_out; + gtp_action_x_setv; + break; + /* tracev */ + case 0x2e: + arg = ebuf[pc++]; + arg = (arg << 8) + ebuf[pc++]; -+ if (GTP_VAR_NOT_TRACEV(arg)) -+ goto code_error_out; + gtp_action_x_tracev; + break; + /* printf */ @@ -6050,13 +6136,6 @@ + ret = 1; + goto release_out; + } -+ -+ if (GTP_VAR_NOT_GETV(arg)) { -+ printk(KERN_WARNING -+ "gtp_check_x: The tv %d cannot " -+ "get.\n", arg); -+ goto release_out; -+ } + + if (!GTP_VAR_IS_SPECIAL(arg)) { + if (gtp_x_var_add(&vlist, arg, 1)) { @@ -6101,13 +6180,6 @@ + } + + -+ if (GTP_VAR_NOT_SETV(arg)) { -+ printk(KERN_WARNING -+ "gtp_check_x: The tv %d cannot " -+ "set.\n", arg); -+ goto release_out; -+ } -+ + if (arg == GTP_VAR_PRINTK_LEVEL_ID) + tpe->have_printk = 1; + @@ -6137,13 +6209,6 @@ + ret = 1; + goto release_out; + } -+ -+ if (GTP_VAR_NOT_TRACEV(arg)) { -+ printk(KERN_WARNING -+ "gtp_check_x: The tv %d cannot " -+ "trace.\n", arg); -+ goto release_out; -+ } + + if (!GTP_VAR_IS_SPECIAL(arg)) { + if (gtp_x_var_add(&vlist, arg, 4)) {