Re: [PATCH 3/3] sched/core / kcov: avoid kcov_area during task switch

From: Mark Rutland
Date: Fri May 04 2018 - 10:36:26 EST


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.