[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160701091710.GC4593@pd.tnic>
Date: Fri, 1 Jul 2016 11:17:11 +0200
From: Borislav Petkov <bp@...en8.de>
To: Ingo Molnar <mingo@...nel.org>
Cc: Linus Torvalds <torvalds@...ux-foundation.org>,
Steven Rostedt <rostedt@...dmis.org>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Peter Zijlstra <peterz@...radead.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Uwe Kleine-König
<u.kleine-koenig@...gutronix.de>, Franck Bui <fbui@...e.com>,
LKML <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH -v2 2/2] printk: Add kernel parameter to control writes
to /dev/kmsg
On Fri, Jul 01, 2016 at 11:04:13AM +0200, Ingo Molnar wrote:
...
> So the most robust way to define such bitfields is via a pattern like this:
>
> enum devkmsg_log_bits {
> __DEVKMSG_LOG_BIT_ON,
> __DEVKMSG_LOG_BIT_OFF,
> __DEVKMSG_LOG_BIT_LOCK,
> };
>
> enum devkmsg_log_masks {
> DEVKMSG_LOG_MASK_ON = BIT(__DEVKMSG_LOG_BIT_ON),
> DEVKMSG_LOG_MASK_OFF = BIT(__DEVKMSG_LOG_BIT_OFF),
> DEVKMSG_LOG_MASK_LOCK = BIT(__DEVKMSG_LOG_BIT_LOCK),
Agreed with so far, I'd only drop the "_MASK" thing and make it even
easier on the eyes:
enum devkmsg_log_state {
DEVKMSG_LOG_ON = BIT(__DEVKMSG_LOG_BIT_ON),
DEVKMSG_LOG_OFF = BIT(__DEVKMSG_LOG_BIT_OFF),
DEVKMSG_LOCK = BIT(__DEVKMSG_LOG_BIT_LOCK),
};
Now this makes the checking code even more readable!
if (devkmsg_log & DEVKMSG_LOCK) {
and
if (devkmsg_log & DEVKMSG_LOG_OFF)
and
if ((system_state != SYSTEM_BOOTING) && (!(devkmsg_log & DEVKMSG_LOG_ON)) {
And this way you can read it straight-away as english text.
:-)))
Thanks.
--
Regards/Gruss,
Boris.
ECO tip #101: Trim your mails when you reply.
Powered by blists - more mailing lists