Re: [PATCH v1 1/1] kernel.h: Split out COUNT_ARGS() and CONCATENATE()

From: Andrew Morton
Date: Tue Apr 11 2023 - 18:21:24 EST


On Tue, 11 Apr 2023 13:24:54 +0300 Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> wrote:

> kernel.h is being used as a dump for all kinds of stuff for a long time.
> The COUNT_ARGS() and CONCATENATE() macros may be used in some places
> without need of the full kernel.h dependency train with it.
>
> Here is the attempt on cleaning it up by splitting out these macros().
>
> --- a/include/linux/kernel.h
> +++ b/include/linux/kernel.h
> @@ -13,6 +13,7 @@
>
> #include <linux/stdarg.h>
> #include <linux/align.h>
> +#include <linux/args.h>

A more energetic patch would have included args.h into each file which
calls COUNT_ARGS() and CONCATENATE(), and not included args.h into
kernel.h. And that appears to be very easy - only bpf uses these things?

In fact these macros are so weird and ugly I'd be inclined to move them
into some bpf header so we don't have to see them again. No
args.h, which might avoid encouraging others to use them.