Re: [PATCH v9 3.2 7/9] tracing: uprobes trace_event interface
From: Srikar Dronamraju <hidden>
Date: 2012-01-18 10:17:44
Also in:
lkml
Have you tried to use 'perf probe' to achieve any useful instrumentation on a real app? I just tried out the 'glibc:free' usecase and it's barely usable.
Thanks for trying. Yes, I have actually place probes on free and malloc while building a kernel and it has worked for me.
Firstly, the recording very frequently produces overruns: $ perf record -e probe_libc:free -aR sleep 1 [ perf record: Woken up 169 times to write data ] [ perf record: Captured and wrote 89.674 MB perf.data (~3917919 samples) ] Warning:Processed 1349133 events and lost 1 chunks!
I have seen the "lost chunks" but thats not always and mostly when I have run perf record for a very long time. But I have seen this even with just kernel probes too. So I didnt debug that.
Using -m 4096 made it work better. Adding -g for call-graph profiling caused 'perf report' to lock up: perf record -m 4096 -e probe_libc:free -agR sleep 1 perf report [ loops forever ]
This actually works for me. I had CONFIG_PREEMPT not set. So I set it and tried with and without Jiri's fix. It still worked for me. Can you pass me your config that shows this hang so that I can try and fix it.
I've sent a testcase to Arnaldo separately. Note that perf report --stdio appears to work.
There are no changes in perf report because of uprobes. So the data collected from uprobes could trigger the hang. I was speculating that not disabling preemption that Jiri pointed out could be causing this. So I tried with and without but couldnt reproduce. Can I request you to see if Jiri's patch helps? Today with -g option, on one machine I do see a $ sudo perf report perf: Floating point exception I will take a look at this too. Other machines dont seem to show this error.
Regular '-e cycles -g' works fine, so this is a uprobes specific bug.
-- Thanks and Regards Srikar -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>