Thanks, I will improve this change in v2. And also update related docs. On Mon, Feb 12, 2018 at 12:04:52PM -0500, Steven Rostedt wrote: > On Sun, 11 Feb 2018 18:50:04 +0800 > "Du, Changbin" <changbin...@intel.com> wrote: > > > Steve, How abount DEFINE_EVENT_PRINT as below? > > Yes, DEFINE_EVENT_PRINT is better. > > > > > diff --git a/include/trace/events/power.h b/include/trace/events/power.h > > index 908977d..e71ce98 100644 > > --- a/include/trace/events/power.h > > +++ b/include/trace/events/power.h > > @@ -14,12 +14,12 @@ > > > > DECLARE_EVENT_CLASS(cpu, > > > > - TP_PROTO(unsigned int state, unsigned int cpu_id), > > + TP_PROTO(int state, unsigned int cpu_id), > > > > TP_ARGS(state, cpu_id), > > > > TP_STRUCT__entry( > > - __field( u32, state ) > > + __field( s32, state ) > > __field( u32, cpu_id ) > > ), > > > > @@ -28,13 +28,12 @@ DECLARE_EVENT_CLASS(cpu, > > __entry->cpu_id = cpu_id; > > ), > > > > - TP_printk("state=%lu cpu_id=%lu", (unsigned long)__entry->state, > > - (unsigned long)__entry->cpu_id) > > Yous still need the type casting, because s32/u32 on 32 bit machines > can be defined as "long". > > -- Steve > > > + TP_printk("state=%d cpu_id=%u", __entry->state, __entry->cpu_id) > > ); > > > > DEFINE_EVENT(cpu, cpu_idle, > > > > - TP_PROTO(unsigned int state, unsigned int cpu_id), > > + TP_PROTO(int state, unsigned int cpu_id), > > > > TP_ARGS(state, cpu_id) > > ); > > @@ -141,11 +140,13 @@ TRACE_EVENT(pstate_sample, > > { PM_EVENT_RESTORE, "restore" }, \ > > { PM_EVENT_RECOVER, "recover" }) > > > > -DEFINE_EVENT(cpu, cpu_frequency, > > +DEFINE_EVENT_PRINT(cpu, cpu_frequency, > > > > - TP_PROTO(unsigned int frequency, unsigned int cpu_id), > > + TP_PROTO(int state, unsigned int cpu_id), > > > > - TP_ARGS(frequency, cpu_id) > > + TP_ARGS(state, cpu_id), > > + > > + TP_printk("frequency=%u cpu_id=%lu", __entry->state, > > __entry->cpu_id) > > ); >
-- Thanks, Changbin Du