Re: [PATCH printk v1 07/10] console: add write_atomic interface

John Ogness
2021-08-06T10:56:48Z

On 2021-08-03, Andy Shevchenko <andriy.shevchenko@linux.intel.com> wrote:
>> #include <linux/atomic.h>
>> #include <linux/types.h>
>> +#include <linux/printk.h>
>
> Ordered?

Agreed. v2 will include printk.h first.

>> + if (!(con->flags & CON_ENABLED)) \
>> + continue; \
>
> What about
>
> #define console_is_enabled(con) (!!(con->flags & CON_ENABLED))
>
> or inliner equivalent
>
> static inline bool console_is_enabled(struct console *con)
> {
> return !!(con->flags & CON_ENABLED);
> }

Generally kernel code uses the console flags directly. A quick check for
CON_ENABLED shows direct flag queries all over:

$ git grep -l -e 'flags.*& .*CON_ENABLED' | wc -c
16

Are you suggesting I replace this usage in all of these files? Or just
the one macro in console.h for now? And since there are 6 more console
flags, they should probably also have equivalent wrappers?

Thanks.

John Ogness