* [PATCH v2 2/2] auxdisplay: panel: avoid gcc 8's Wstringop-truncation warning
@ 2018-08-01 17:58 Miguel Ojeda
2018-08-01 18:47 ` Kees Cook
0 siblings, 1 reply; 3+ messages in thread
From: Miguel Ojeda @ 2018-08-01 17:58 UTC (permalink / raw)
To: Andrew Morton, Ingo Molnar
Cc: Willy Tarreau, Geert Uytterhoeven, Martin Sebor, linux-kernel,
Ingo Molnar, Josh Poimboeuf, Kees Cook, Andrew Morton,
Will Deacon, Greg Kroah-Hartman, David Rientjes, Arnd Bergmann
Let gcc know it is not meant to be NUL-terminated by annotating with
the new __nonstring variable attribute; and remove the comment since it
conveys the same information.
Cc: Willy Tarreau <w@1wt.eu>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Martin Sebor <msebor@gmail.com>
Signed-off-by: Miguel Ojeda <miguel.ojeda.sandonis@gmail.com>
---
drivers/auxdisplay/panel.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/drivers/auxdisplay/panel.c b/drivers/auxdisplay/panel.c
index 3b25a643058c..21b9b2f2470a 100644
--- a/drivers/auxdisplay/panel.c
+++ b/drivers/auxdisplay/panel.c
@@ -155,10 +155,9 @@ struct logical_input {
int release_data;
} std;
struct { /* valid when type == INPUT_TYPE_KBD */
- /* strings can be non null-terminated */
- char press_str[sizeof(void *) + sizeof(int)];
- char repeat_str[sizeof(void *) + sizeof(int)];
- char release_str[sizeof(void *) + sizeof(int)];
+ char press_str[sizeof(void *) + sizeof(int)] __nonstring;
+ char repeat_str[sizeof(void *) + sizeof(int)] __nonstring;
+ char release_str[sizeof(void *) + sizeof(int)] __nonstring;
} kbd;
} u;
};
--
2.17.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH v2 2/2] auxdisplay: panel: avoid gcc 8's Wstringop-truncation warning
2018-08-01 17:58 [PATCH v2 2/2] auxdisplay: panel: avoid gcc 8's Wstringop-truncation warning Miguel Ojeda
@ 2018-08-01 18:47 ` Kees Cook
2018-08-01 19:50 ` Miguel Ojeda
0 siblings, 1 reply; 3+ messages in thread
From: Kees Cook @ 2018-08-01 18:47 UTC (permalink / raw)
To: Miguel Ojeda
Cc: Andrew Morton, Ingo Molnar, Willy Tarreau, Geert Uytterhoeven,
Martin Sebor, linux-kernel, Josh Poimboeuf, Will Deacon,
Greg Kroah-Hartman, David Rientjes, Arnd Bergmann
On Wed, Aug 1, 2018 at 10:58 AM, Miguel Ojeda
<miguel.ojeda.sandonis@gmail.com> wrote:
> Let gcc know it is not meant to be NUL-terminated by annotating with
> the new __nonstring variable attribute; and remove the comment since it
> conveys the same information.
>
> Cc: Willy Tarreau <w@1wt.eu>
> Cc: Geert Uytterhoeven <geert@linux-m68k.org>
> Cc: Martin Sebor <msebor@gmail.com>
> Signed-off-by: Miguel Ojeda <miguel.ojeda.sandonis@gmail.com>
> ---
> drivers/auxdisplay/panel.c | 7 +++----
> 1 file changed, 3 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/auxdisplay/panel.c b/drivers/auxdisplay/panel.c
> index 3b25a643058c..21b9b2f2470a 100644
> --- a/drivers/auxdisplay/panel.c
> +++ b/drivers/auxdisplay/panel.c
> @@ -155,10 +155,9 @@ struct logical_input {
> int release_data;
> } std;
> struct { /* valid when type == INPUT_TYPE_KBD */
> - /* strings can be non null-terminated */
> - char press_str[sizeof(void *) + sizeof(int)];
> - char repeat_str[sizeof(void *) + sizeof(int)];
> - char release_str[sizeof(void *) + sizeof(int)];
> + char press_str[sizeof(void *) + sizeof(int)] __nonstring;
> + char repeat_str[sizeof(void *) + sizeof(int)] __nonstring;
> + char release_str[sizeof(void *) + sizeof(int)] __nonstring;
> } kbd;
> } u;
> };
If it's not a string, why not use "u8" instead of "char"? Does the
warning persist?
-Kees
--
Kees Cook
Pixel Security
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH v2 2/2] auxdisplay: panel: avoid gcc 8's Wstringop-truncation warning
2018-08-01 18:47 ` Kees Cook
@ 2018-08-01 19:50 ` Miguel Ojeda
0 siblings, 0 replies; 3+ messages in thread
From: Miguel Ojeda @ 2018-08-01 19:50 UTC (permalink / raw)
To: Kees Cook
Cc: Andrew Morton, Ingo Molnar, Willy Tarreau, Geert Uytterhoeven,
Martin Sebor, linux-kernel, Josh Poimboeuf, Will Deacon,
Greg Kroah-Hartman, David Rientjes, Arnd Bergmann
On Wed, Aug 1, 2018 at 8:47 PM, Kees Cook <keescook@chromium.org> wrote:
> On Wed, Aug 1, 2018 at 10:58 AM, Miguel Ojeda
> <miguel.ojeda.sandonis@gmail.com> wrote:
>> Let gcc know it is not meant to be NUL-terminated by annotating with
>> the new __nonstring variable attribute; and remove the comment since it
>> conveys the same information.
>>
>> Cc: Willy Tarreau <w@1wt.eu>
>> Cc: Geert Uytterhoeven <geert@linux-m68k.org>
>> Cc: Martin Sebor <msebor@gmail.com>
>> Signed-off-by: Miguel Ojeda <miguel.ojeda.sandonis@gmail.com>
>> ---
>> drivers/auxdisplay/panel.c | 7 +++----
>> 1 file changed, 3 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/auxdisplay/panel.c b/drivers/auxdisplay/panel.c
>> index 3b25a643058c..21b9b2f2470a 100644
>> --- a/drivers/auxdisplay/panel.c
>> +++ b/drivers/auxdisplay/panel.c
>> @@ -155,10 +155,9 @@ struct logical_input {
>> int release_data;
>> } std;
>> struct { /* valid when type == INPUT_TYPE_KBD */
>> - /* strings can be non null-terminated */
>> - char press_str[sizeof(void *) + sizeof(int)];
>> - char repeat_str[sizeof(void *) + sizeof(int)];
>> - char release_str[sizeof(void *) + sizeof(int)];
>> + char press_str[sizeof(void *) + sizeof(int)] __nonstring;
>> + char repeat_str[sizeof(void *) + sizeof(int)] __nonstring;
>> + char release_str[sizeof(void *) + sizeof(int)] __nonstring;
>> } kbd;
>> } u;
>> };
>
> If it's not a string, why not use "u8" instead of "char"? Does the
> warning persist?
Yes, it persists (on purpose). Originally it didn't, but see the discussion at:
https://www.spinics.net/lists/kernel/msg2737596.html
And:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84725
Cheers,
Miguel
>
> -Kees
>
> --
> Kees Cook
> Pixel Security
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2018-08-01 19:50 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-08-01 17:58 [PATCH v2 2/2] auxdisplay: panel: avoid gcc 8's Wstringop-truncation warning Miguel Ojeda
2018-08-01 18:47 ` Kees Cook
2018-08-01 19:50 ` Miguel Ojeda
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).