* [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.