All of lore.kernel.org
 help / color / mirror / Atom feed
* [Powertop] hrtimer events are not properly added -- is this bug or feature?
@ 2012-07-24  7:24 Igor Zhbanov
  0 siblings, 0 replies; 3+ messages in thread
From: Igor Zhbanov @ 2012-07-24  7:24 UTC (permalink / raw)
  To: powertop

[-- Attachment #1: Type: text/plain, Size: 1575 bytes --]

Hello!

In the function start_process_measurement() in the file src/process/do_process.cpp
events are added to perf_bundle:
		perf_events->add_event("irq:softirq_entry");
		perf_events->add_event("irq:softirq_exit");
		perf_events->add_event("timer:timer_expire_entry");
		perf_events->add_event("timer:timer_expire_exit");
		perf_events->add_event("hrtimer_expire_entry");		/* !!! */
		perf_events->add_event("hrtimer_expire_exit");		/* !!! */
		if (!perf_events->add_event("power:cpu_idle")){
			perf_events->add_event("power:power_start");
			perf_events->add_event("power:power_end");
		}

As you may see all events are prefixed with the subsystem name.
All but hrtimer_expire_entry and hrtimer_expire_exit. And without "timer:" prefix
these events are never catched.

So I have added this prefix and see that events are intercepted as needed.
But event parser complains about wrong event format:
   unknown op '{'
   failed to read event print fmt for hrtimer_expire_entry

It seems that event parser can't handle square bracket in print format for the event:
print fmt: "hrtimer=%p function=%pf now=%llu", REC->hrtimer, REC->function, (unsigned long long)(((ktime_t) { .tv64 = REC->now }).tv64)

So is the absence of "timer:" prefix a bug or a commenting of non-working case?

Thank you.

-- 
Best regards,
Igor Zhbanov,
Expert Software Engineer,
phone: +7 (495) 797 25 00 ext 3806
e-mail: i.zhbanov(a)samsung.com

ASWG, Moscow R&D center, Samsung Electronics
12 Dvintsev street, building 1
127018, Moscow, Russian Federation


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

* Re: [Powertop] hrtimer events are not properly added -- is this bug or feature?
@ 2012-07-25 17:45 Chris Ferron
  0 siblings, 0 replies; 3+ messages in thread
From: Chris Ferron @ 2012-07-25 17:45 UTC (permalink / raw)
  To: powertop

[-- Attachment #1: Type: text/plain, Size: 1538 bytes --]

On 07/24/2012 12:24 AM, Igor Zhbanov wrote:
> Hello!
>
> In the function start_process_measurement() in the file 
> src/process/do_process.cpp
> events are added to perf_bundle:
>         perf_events->add_event("irq:softirq_entry");
>         perf_events->add_event("irq:softirq_exit");
>         perf_events->add_event("timer:timer_expire_entry");
>         perf_events->add_event("timer:timer_expire_exit");
>         perf_events->add_event("hrtimer_expire_entry"); /* !!! */
>         perf_events->add_event("hrtimer_expire_exit"); /* !!! */
>         if (!perf_events->add_event("power:cpu_idle")){
>             perf_events->add_event("power:power_start");
>             perf_events->add_event("power:power_end");
>         }
>
> As you may see all events are prefixed with the subsystem name.
> All but hrtimer_expire_entry and hrtimer_expire_exit. And without 
> "timer:" prefix
> these events are never catched.
>
> So I have added this prefix and see that events are intercepted as 
> needed.
> But event parser complains about wrong event format:
>   unknown op '{'
>   failed to read event print fmt for hrtimer_expire_entry
>
> It seems that event parser can't handle square bracket in print format 
> for the event:
> print fmt: "hrtimer=%p function=%pf now=%llu", REC->hrtimer, 
> REC->function, (unsigned long long)(((ktime_t) { .tv64 = REC->now 
> }).tv64)
>
> So is the absence of "timer:" prefix a bug or a commenting of 
> non-working case?
>
> Thank you.
>
Im looking into this

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

* Re: [Powertop] hrtimer events are not properly added -- is this bug or feature?
@ 2012-07-31 20:08 Chris Ferron
  0 siblings, 0 replies; 3+ messages in thread
From: Chris Ferron @ 2012-07-31 20:08 UTC (permalink / raw)
  To: powertop

[-- Attachment #1: Type: text/plain, Size: 1993 bytes --]

> Hello!
>
> In the function start_process_measurement() in the file
> src/process/do_process.cpp
> events are added to perf_bundle:
> 		perf_events->add_event("irq:softirq_entry");
> 		perf_events->add_event("irq:softirq_exit");
> 		perf_events->add_event("timer:timer_expire_entry");
> 		perf_events->add_event("timer:timer_expire_exit");
> 		perf_events->add_event("hrtimer_expire_entry");		/* !!! */
> 		perf_events->add_event("hrtimer_expire_exit");		/* !!! */
> 		if (!perf_events->add_event("power:cpu_idle")){
> 			perf_events->add_event("power:power_start");
> 			perf_events->add_event("power:power_end");
> 		}
>
> As you may see all events are prefixed with the subsystem name.
> All but hrtimer_expire_entry and hrtimer_expire_exit. And without "timer:"
> prefix
> these events are never catched.
>
> So I have added this prefix and see that events are intercepted as needed.
> But event parser complains about wrong event format:
>    unknown op '{'
>    failed to read event print fmt for hrtimer_expire_entry
>
> It seems that event parser can't handle square bracket in print format for
> the event:
> print fmt: "hrtimer=%p function=%pf now=%llu", REC->hrtimer,
> REC->function, (unsigned long long)(((ktime_t) { .tv64 = REC->now }).tv64)
>
> So is the absence of "timer:" prefix a bug or a commenting of non-working
> case?
I sent a note to Steve for a consult, seems its a bug. Steve sent a fix it
in the traceevent lib. Thanks for the report, please let me know if you
find something else.
>
> Thank you.
>
> --
> Best regards,
> Igor Zhbanov,
> Expert Software Engineer,
> phone: +7 (495) 797 25 00 ext 3806
> e-mail: i.zhbanov(a)samsung.com
>
> ASWG, Moscow R&D center, Samsung Electronics
> 12 Dvintsev street, building 1
> 127018, Moscow, Russian Federation
>
> _______________________________________________
> PowerTop mailing list
> PowerTop(a)lists.01.org
> https://lists.01.org/mailman/listinfo/powertop
>


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

end of thread, other threads:[~2012-07-31 20:08 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-07-24  7:24 [Powertop] hrtimer events are not properly added -- is this bug or feature? Igor Zhbanov
  -- strict thread matches above, loose matches on Subject: below --
2012-07-25 17:45 Chris Ferron
2012-07-31 20:08 Chris Ferron

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.