public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* perf: some questions about perf software events
@ 2010-11-24 11:35 Franck Bui-Huu
  2010-11-24 11:41 ` Peter Zijlstra
  0 siblings, 1 reply; 5+ messages in thread
From: Franck Bui-Huu @ 2010-11-24 11:35 UTC (permalink / raw)
  To: Peter Zijlstra; +Cc: lkml

Hello Peter,

I've still a couple of questions after looking at the software events
code, hope you don't mind.

For pure software events (ie excluding {task,cpu}-clock), does it make
sense to set a sample frequency ? I would have done something like this:


diff --git a/kernel/perf_event.c b/kernel/perf_event.c
index 31515200..df27fd8 100644
--- a/kernel/perf_event.c
+++ b/kernel/perf_event.c
@@ -4671,6 +4671,8 @@ static int perf_swevent_init(struct perf_event *event)
 
 	if (event->attr.type != PERF_TYPE_SOFTWARE)
 		return -ENOENT;
+	if (event->attr.freq)
+		return -EINVAL;
 
 	switch (event_id) {
 	case PERF_COUNT_SW_CPU_CLOCK:



That is for no 'contiguous' events, setting a sampling frequency doesn't
really make sense since for example you could set a frequency to 1000 HZ
for the software ALIGNMENT_FAULT event and never get any samplings or at
least getting sampling but with a totally different rate. And the
current code doesn't look to handle sample_freq anyway.

Also I'm currently not seeing any real differences between cpu-clock and
task-clock events. They both seem to count the time elapsed when the
task is running on a CPU. Am I wrong ?

Thanks
-- 
		Franck

^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2010-12-02 20:52 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-11-24 11:35 perf: some questions about perf software events Franck Bui-Huu
2010-11-24 11:41 ` Peter Zijlstra
2010-11-27 13:28   ` Franck Bui-Huu
2010-11-30 22:44     ` Peter Zijlstra
2010-12-02 20:52       ` Franck Bui-Huu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox