2023-11-16 03:28:53

by Gustavo A. R. Silva

[permalink] [raw]
Subject: [PATCH][next] Makefile: Enable -Wstringop-overflow globally

It seems that we have finished addressing all the remaining
issues regarding compiler option -Wstringop-overflow. So, we
are now in good shape to enable this compiler option globally.

Signed-off-by: Gustavo A. R. Silva <[email protected]>
---
Makefile | 3 +++
scripts/Makefile.extrawarn | 2 --
2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/Makefile b/Makefile
index 690cde550acd..452b7d0e19e9 100644
--- a/Makefile
+++ b/Makefile
@@ -985,6 +985,9 @@ NOSTDINC_FLAGS += -nostdinc
# perform bounds checking.
KBUILD_CFLAGS += $(call cc-option, -fstrict-flex-arrays=3)

+# We are now in good shape to enable this option.
+KBUILD_CFLAGS += $(call cc-option, -Wstringop-overflow)
+
# disable invalid "can't wrap" optimizations for signed / pointers
KBUILD_CFLAGS += -fno-strict-overflow

diff --git a/scripts/Makefile.extrawarn b/scripts/Makefile.extrawarn
index 2fe6f2828d37..1527199161d7 100644
--- a/scripts/Makefile.extrawarn
+++ b/scripts/Makefile.extrawarn
@@ -106,7 +106,6 @@ KBUILD_CFLAGS += $(call cc-option, -Wunused-const-variable)
KBUILD_CFLAGS += $(call cc-option, -Wpacked-not-aligned)
KBUILD_CFLAGS += $(call cc-option, -Wformat-overflow)
KBUILD_CFLAGS += $(call cc-option, -Wformat-truncation)
-KBUILD_CFLAGS += $(call cc-option, -Wstringop-overflow)
KBUILD_CFLAGS += $(call cc-option, -Wstringop-truncation)

KBUILD_CPPFLAGS += -Wundef
@@ -122,7 +121,6 @@ KBUILD_CFLAGS += $(call cc-disable-warning, restrict)
KBUILD_CFLAGS += $(call cc-disable-warning, packed-not-aligned)
KBUILD_CFLAGS += $(call cc-disable-warning, format-overflow)
KBUILD_CFLAGS += $(call cc-disable-warning, format-truncation)
-KBUILD_CFLAGS += $(call cc-disable-warning, stringop-overflow)
KBUILD_CFLAGS += $(call cc-disable-warning, stringop-truncation)

ifdef CONFIG_CC_IS_CLANG
--
2.34.1


2023-11-16 11:24:29

by Masahiro Yamada

[permalink] [raw]
Subject: Re: [PATCH][next] Makefile: Enable -Wstringop-overflow globally

On Thu, Nov 16, 2023 at 12:27 PM Gustavo A. R. Silva
<[email protected]> wrote:
>
> It seems that we have finished addressing all the remaining
> issues regarding compiler option -Wstringop-overflow. So, we
> are now in good shape to enable this compiler option globally.
>
> Signed-off-by: Gustavo A. R. Silva <[email protected]>
> ---
> Makefile | 3 +++
> scripts/Makefile.extrawarn | 2 --
> 2 files changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/Makefile b/Makefile
> index 690cde550acd..452b7d0e19e9 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -985,6 +985,9 @@ NOSTDINC_FLAGS += -nostdinc
> # perform bounds checking.
> KBUILD_CFLAGS += $(call cc-option, -fstrict-flex-arrays=3)
>
> +# We are now in good shape to enable this option.

Please remove this comment.

It it fine to mention it in the commit log, but
not in the Makefile.



I hope somebody will double-check this patch in CI infrastructure.




> +KBUILD_CFLAGS += $(call cc-option, -Wstringop-overflow)
> +
> # disable invalid "can't wrap" optimizations for signed / pointers
> KBUILD_CFLAGS += -fno-strict-overflow
>
> diff --git a/scripts/Makefile.extrawarn b/scripts/Makefile.extrawarn
> index 2fe6f2828d37..1527199161d7 100644
> --- a/scripts/Makefile.extrawarn
> +++ b/scripts/Makefile.extrawarn
> @@ -106,7 +106,6 @@ KBUILD_CFLAGS += $(call cc-option, -Wunused-const-variable)
> KBUILD_CFLAGS += $(call cc-option, -Wpacked-not-aligned)
> KBUILD_CFLAGS += $(call cc-option, -Wformat-overflow)
> KBUILD_CFLAGS += $(call cc-option, -Wformat-truncation)
> -KBUILD_CFLAGS += $(call cc-option, -Wstringop-overflow)
> KBUILD_CFLAGS += $(call cc-option, -Wstringop-truncation)
>
> KBUILD_CPPFLAGS += -Wundef
> @@ -122,7 +121,6 @@ KBUILD_CFLAGS += $(call cc-disable-warning, restrict)
> KBUILD_CFLAGS += $(call cc-disable-warning, packed-not-aligned)
> KBUILD_CFLAGS += $(call cc-disable-warning, format-overflow)
> KBUILD_CFLAGS += $(call cc-disable-warning, format-truncation)
> -KBUILD_CFLAGS += $(call cc-disable-warning, stringop-overflow)
> KBUILD_CFLAGS += $(call cc-disable-warning, stringop-truncation)
>
> ifdef CONFIG_CC_IS_CLANG
> --
> 2.34.1
>


--
Best Regards
Masahiro Yamada

2023-11-16 14:19:35

by Gustavo A. R. Silva

[permalink] [raw]
Subject: Re: [PATCH][next] Makefile: Enable -Wstringop-overflow globally



On 11/16/23 05:23, Masahiro Yamada wrote:
> On Thu, Nov 16, 2023 at 12:27 PM Gustavo A. R. Silva
> <[email protected]> wrote:
>>
>> It seems that we have finished addressing all the remaining
>> issues regarding compiler option -Wstringop-overflow. So, we
>> are now in good shape to enable this compiler option globally.
>>
>> Signed-off-by: Gustavo A. R. Silva <[email protected]>
>> ---
>> Makefile | 3 +++
>> scripts/Makefile.extrawarn | 2 --
>> 2 files changed, 3 insertions(+), 2 deletions(-)
>>
>> diff --git a/Makefile b/Makefile
>> index 690cde550acd..452b7d0e19e9 100644
>> --- a/Makefile
>> +++ b/Makefile
>> @@ -985,6 +985,9 @@ NOSTDINC_FLAGS += -nostdinc
>> # perform bounds checking.
>> KBUILD_CFLAGS += $(call cc-option, -fstrict-flex-arrays=3)
>>
>> +# We are now in good shape to enable this option.
>
> Please remove this comment.
>
> It it fine to mention it in the commit log, but
> not in the Makefile.

Sure thing. I'll change that and add this patch to my -next tree.

>
>
>
> I hope somebody will double-check this patch in CI infrastructure.

I'll take care of that.

Thanks
--
Gustavo

>
>
>
>
>> +KBUILD_CFLAGS += $(call cc-option, -Wstringop-overflow)
>> +
>> # disable invalid "can't wrap" optimizations for signed / pointers
>> KBUILD_CFLAGS += -fno-strict-overflow
>>
>> diff --git a/scripts/Makefile.extrawarn b/scripts/Makefile.extrawarn
>> index 2fe6f2828d37..1527199161d7 100644
>> --- a/scripts/Makefile.extrawarn
>> +++ b/scripts/Makefile.extrawarn
>> @@ -106,7 +106,6 @@ KBUILD_CFLAGS += $(call cc-option, -Wunused-const-variable)
>> KBUILD_CFLAGS += $(call cc-option, -Wpacked-not-aligned)
>> KBUILD_CFLAGS += $(call cc-option, -Wformat-overflow)
>> KBUILD_CFLAGS += $(call cc-option, -Wformat-truncation)
>> -KBUILD_CFLAGS += $(call cc-option, -Wstringop-overflow)
>> KBUILD_CFLAGS += $(call cc-option, -Wstringop-truncation)
>>
>> KBUILD_CPPFLAGS += -Wundef
>> @@ -122,7 +121,6 @@ KBUILD_CFLAGS += $(call cc-disable-warning, restrict)
>> KBUILD_CFLAGS += $(call cc-disable-warning, packed-not-aligned)
>> KBUILD_CFLAGS += $(call cc-disable-warning, format-overflow)
>> KBUILD_CFLAGS += $(call cc-disable-warning, format-truncation)
>> -KBUILD_CFLAGS += $(call cc-disable-warning, stringop-overflow)
>> KBUILD_CFLAGS += $(call cc-disable-warning, stringop-truncation)
>>
>> ifdef CONFIG_CC_IS_CLANG
>> --
>> 2.34.1
>>
>
>