* [PATCH] Fix usage of true and false as field names in struct taint_flag
@ 2016-12-26 23:49 Valdis Kletnieks
2017-01-03 19:55 ` Jessica Yu
0 siblings, 1 reply; 3+ messages in thread
From: Valdis Kletnieks @ 2016-12-26 23:49 UTC (permalink / raw)
To: Petr Mladek, Jessica Yu; +Cc: linux-kernel, Andrew Morton, Al Viro
The commit 7fd8329ba502ef76dd ("taint/module: Clean up global and
module taint flags handling") contains this chunk:
+struct taint_flag {
+ char true; /* character printed when tainted */
+ char false; /* character printed when not tainted */
+ bool module; /* also show as a per-module taint flag */
+};
and hilarity ensues when an out-of-tree module has this:
# ifndef true
# define true (1)
# endif
# ifndef false
# define false (0)
# endif
Change the field names to not shadow something likely to be used
by third-party modules.
Signed-off-by: Valdis Kletnieks <valdis.kletnieks@vt.edu>
Reviewed-by: Petr Mladek <pmladek@suse.com>
diff --git a/include/linux/kernel.h b/include/linux/kernel.h
index 56aec84237ad..420d4b87feb0 100644
--- a/include/linux/kernel.h
+++ b/include/linux/kernel.h
@@ -514,8 +514,8 @@ extern enum system_states {
#define TAINT_FLAGS_COUNT 16
struct taint_flag {
- char true; /* character printed when tainted */
- char false; /* character printed when not tainted */
+ char tainted; /* character printed when tainted */
+ char untainted; /* character printed when not tainted */
bool module; /* also show as a per-module taint flag */
};
diff --git a/kernel/module.c b/kernel/module.c
index f7482db0f843..6a0434de5dbd 100644
--- a/kernel/module.c
+++ b/kernel/module.c
@@ -1145,7 +1145,7 @@ static size_t module_flags_taint(struct module *mod, char *buf)
for (i = 0; i < TAINT_FLAGS_COUNT; i++) {
if (taint_flags[i].module && test_bit(i, &mod->taints))
- buf[l++] = taint_flags[i].true;
+ buf[l++] = taint_flags[i].tainted;
}
return l;
diff --git a/kernel/panic.c b/kernel/panic.c
index c51edaa04fce..e02da0928910 100644
--- a/kernel/panic.c
+++ b/kernel/panic.c
@@ -355,7 +355,7 @@ const char *print_tainted(void)
for (i = 0; i < TAINT_FLAGS_COUNT; i++) {
const struct taint_flag *t = &taint_flags[i];
*s++ = test_bit(i, &tainted_mask) ?
- t->true : t->false;
+ t->tainted : t->untainted;
}
*s = 0;
} else
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: Fix usage of true and false as field names in struct taint_flag
2016-12-26 23:49 [PATCH] Fix usage of true and false as field names in struct taint_flag Valdis Kletnieks
@ 2017-01-03 19:55 ` Jessica Yu
2017-01-03 20:22 ` Valdis.Kletnieks
0 siblings, 1 reply; 3+ messages in thread
From: Jessica Yu @ 2017-01-03 19:55 UTC (permalink / raw)
To: Valdis Kletnieks
Cc: Petr Mladek, linux-kernel, Andrew Morton, Al Viro, Rusty Russell,
Larry Finger
+++ Valdis Kletnieks [26/12/16 18:49 -0500]:
>The commit 7fd8329ba502ef76dd ("taint/module: Clean up global and
>module taint flags handling") contains this chunk:
>
>+struct taint_flag {
>+ char true; /* character printed when tainted */
>+ char false; /* character printed when not tainted */
>+ bool module; /* also show as a per-module taint flag */
>+};
>
>and hilarity ensues when an out-of-tree module has this:
>
># ifndef true
># define true (1)
># endif
># ifndef false
># define false (0)
># endif
>
>Change the field names to not shadow something likely to be used
>by third-party modules.
>
>Signed-off-by: Valdis Kletnieks <valdis.kletnieks@vt.edu>
>Reviewed-by: Petr Mladek <pmladek@suse.com>
[ added Rusty and Larry to CC ]
Hm, you and Larry Finger sent the exact same fix at around the same
time, although I think people are leaning towards the other patch
(it's just a naming preference), see here:
https://lkml.kernel.org/r/20161224195532.15128-1-Larry.Finger@lwfinger.net
I plan to take the other patch, but since you first reported the
issue to lkml, and additionally sent a fix in response, I will add a
Reported-by: tag to the patch so I can also give you credit.
Thanks Valdis!
Jessica
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Fix usage of true and false as field names in struct taint_flag
2017-01-03 19:55 ` Jessica Yu
@ 2017-01-03 20:22 ` Valdis.Kletnieks
0 siblings, 0 replies; 3+ messages in thread
From: Valdis.Kletnieks @ 2017-01-03 20:22 UTC (permalink / raw)
To: Jessica Yu
Cc: Petr Mladek, linux-kernel, Andrew Morton, Al Viro, Rusty Russell,
Larry Finger
[-- Attachment #1: Type: text/plain, Size: 547 bytes --]
On Tue, 03 Jan 2017 11:55:36 -0800, Jessica Yu said:
> Hm, you and Larry Finger sent the exact same fix at around the same
> time, although I think people are leaning towards the other patch
> (it's just a naming preference), see here:
>
> https://lkml.kernel.org/r/20161224195532.15128-1-Larry.Finger@lwfinger.net
>
> I plan to take the other patch, but since you first reported the
> issue to lkml, and additionally sent a fix in response, I will add a
> Reported-by: tag to the patch so I can also give you credit.
Works for me, thanks..
[-- Attachment #2: Type: application/pgp-signature, Size: 484 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2017-01-03 21:14 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-12-26 23:49 [PATCH] Fix usage of true and false as field names in struct taint_flag Valdis Kletnieks
2017-01-03 19:55 ` Jessica Yu
2017-01-03 20:22 ` Valdis.Kletnieks
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).