On 2013/3/27 18:00, zhangwei(Jovi) wrote: > On 2013/3/27 17:42, Li Zefan wrote: >> On 2013/3/27 17:27, zhangwei(Jovi) wrote: >>> From: "zhangwei(Jovi)" <jovi.zhangwei@xxxxxxxxxx> >>> >>> Using perf command: perf stat -e ftrace:function ls >>> >>> this will cause kernel warning and oops. >>> >>> [ 797.828904] ------------[ cut here ]------------ >>> [ 797.828946] WARNING: at include/linux/ftrace.h:209 ftrace_ops_control_func+0xb1/0xc0() >>> [ 797.829065] Pid: 6086, comm: perf Not tainted 3.8.0-rc4+ #88 >>> [ 797.829066] Call Trace: >>> [ 797.829078] [<c0447a42>] warn_slowpath_common+0x72/0xa0 >>> [ 797.829080] [<c04bd6d1>] ? ftrace_ops_control_func+0xb1/0xc0 >>> [ 797.829082] [<c04bd6d1>] ? ftrace_ops_control_func+0xb1/0xc0 >>> [ 797.829083] [<c04b7453>] ? synchronize_sched+0x3/0x50 >>> [ 797.829085] [<c04be50f>] ? __unregister_ftrace_function+0x8f/0x170 >>> [ 797.829087] [<c0447a92>] warn_slowpath_null+0x22/0x30 >>> [ 797.829089] [<c04bd6d1>] ftrace_ops_control_func+0xb1/0xc0 >>> [ 797.829099] [<c08eba6b>] ftrace_call+0x5/0xb >>> [ 797.829100] [<c04b7458>] ? synchronize_sched+0x8/0x50 >>> [ 797.829102] [<c04be50f>] __unregister_ftrace_function+0x8f/0x170 >>> [ 797.829104] [<c04c00cf>] unregister_ftrace_function+0x1f/0x50 >>> [ 797.829109] [<c04d31bd>] perf_ftrace_event_register+0x9d/0x140 >>> [ 797.829111] [<c04d304b>] perf_trace_destroy+0x2b/0x50 >>> [ 797.829117] [<c04db3c8>] tp_perf_event_destroy+0x8/0x10 >>> [ 797.829119] [<c04dd672>] free_event+0x42/0x110 >>> [ 797.829121] [<c04de446>] perf_event_release_kernel+0x56/0x90 >>> [ 797.829122] [<c04de4fc>] put_event+0x7c/0xa0 >>> [ 797.829124] [<c04de5cb>] perf_release+0xb/0x10 >>> [ 797.829128] [<c0532ae6>] __fput+0xc6/0x1f0 >>> [ 797.829130] [<c0532c1d>] ____fput+0xd/0x10 >>> [ 797.829134] [<c04645b1>] task_work_run+0x81/0xa0 >>> [ 797.829142] [<c0412819>] do_notify_resume+0x59/0x90 >>> [ 797.829150] [<c08e4745>] work_notifysig+0x30/0x37 >>> [ 797.829152] ---[ end trace 4dbd63f12b55163f ]--- >>> >>> This bug was introduced by below commit(in 3.8-rc4): >>> commit 0a016409e42f273415f8225ddf2c58eb2df88034 >>> Author: Steven Rostedt <srostedt@xxxxxxxxxx> >>> Date: Fri Nov 2 17:03:03 2012 -0400 >>> >>> ftrace: Optimize the function tracer list loop >>> >>> When variable op is ftrace_list_end, it cannot pass control ops checking, >>> so that loop optimize is not suit for ftrace_control_list, change it back. >>> >>> Signed-off-by: zhangwei(Jovi) <jovi.zhangwei@xxxxxxxxxx> >>> Cc: stable@xxxxxxxxxxxxxxx >> >> words stolen from Greg: >> >> This is not the correct way to submit patches for inclusion in the >> stable kernel tree. Please read Documentation/stable_kernel_rules.txt >> for how to do this properly. >> >> ========= >> >> You should send this patch to LKML and Steven. When this patch finds >> it's way into mainline, it will be queued into stable tree automatically >> as long as it's tagged "Cc: stable@xxxxxxxxxxxxxxx", but you don't >> need to cc stable mailing list when you send this patch. >> Sorry,mail escaped without sending to LKML :) I will check stable rule again. Thanks. -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html