Re: [PATCH -v2 2/2] printk: Add kernel parameter to control writes to /dev/kmsg
From: Borislav Petkov
Date: Fri Jul 01 2016 - 05:17:23 EST
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.