On Fri, May 04, 2018 at 05:32:26PM +0300, Andrey Ryabinin wrote:
> On 05/04/2018 04:55 PM, Mark Rutland wrote:
> 
> > +#define kcov_prepare_switch(t)                     \
> > +do {                                               \
> > +   (t)->kcov_mode |= KCOV_IN_CTXSW;        \
> > +} while (0)
> > +
> > +#define kcov_finish_switch(t)                      \
> > +do {                                               \
> > +   (t)->kcov_mode &= ~KCOV_IN_CTXSW;       \
> > +} while (0)
> > +
> 
> Why macros?

I can't use static inline functions without a circular include
dependency between <linux/sched.h> and <linux/kcov.h>, since the
definition of task_struct uses things defined in <linux/kcov.h>.

Thanks,
Mark.

Reply via email to