Messages in this thread | | | Date | Sun, 10 Sep 2017 05:06:22 -0400 | From | Steven Rostedt <> | Subject | Re: [PATCH RFC v4 1/3] tracing/irqsoff: Prepare to add preempt and irq trace events |
| |
On Wed, 6 Sep 2017 17:17:50 -0700 Joel Fernandes <joelaf@google.com> wrote:
> +#else /* IRQSOFF_TRACER || PREEMPTOFF_TRACER */ > + > +#define start_critical_timings_tracer() do { } while (0) > +#define stop_critical_timings_tracer() do { } while (0) > + > +#endif > + > +#ifndef CONFIG_IRQSOFF_TRACER > +#define tracer_hardirqs_on() do { } while (0) > +#define tracer_hardirqs_off() do { } while (0) > +#define tracer_hardirqs_on_caller(x) do { } while (0) > +#define tracer_hardirqs_off_caller(x) do { } while (0) > +#endif > + > +#ifndef CONFIG_PREEMPT_TRACER > +#define tracer_preempt_on(x, y) do { } while (0) > +#define tracer_preempt_off(x, y) do { } while (0) > +#endif
Is there a reason the above is #define and not static inline? The preferred method is static inline as that allows the compiler to check types. #define is used if one of the parameters has a struct or something that is not defined.
-- Steve
| |