Re: [PATCH] Kbuild: suppress packed-not-aligned warning for default setting only

From: Masahiro Yamada
Date: Tue Jan 16 2018 - 11:39:17 EST


2018-01-11 18:22 GMT+09:00 Xiongfeng Wang <wangxiongfeng2@xxxxxxxxxx>:
> From: Xiongfeng Wang <xiongfeng.wang@xxxxxxxxxx>
>
> gcc-8 reports many -Wpacked-not-aligned warnings. The below are some
> examples.
>
> ./include/linux/ceph/msgr.h:67:1: warning: alignment 1 of 'struct
> ceph_entity_addr' is less than 8 [-Wpacked-not-aligned]
> } __attribute__ ((packed));
>
> ./include/linux/ceph/msgr.h:67:1: warning: alignment 1 of 'struct
> ceph_entity_addr' is less than 8 [-Wpacked-not-aligned]
> } __attribute__ ((packed));
>
> ./include/linux/ceph/msgr.h:67:1: warning: alignment 1 of 'struct
> ceph_entity_addr' is less than 8 [-Wpacked-not-aligned]
> } __attribute__ ((packed));
>
> This patch suppress this kind of warnings for default setting.
>
> Signed-off-by: Xiongfeng Wang <xiongfeng.wang@xxxxxxxxxx>
> ---
> scripts/Makefile.extrawarn | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/scripts/Makefile.extrawarn b/scripts/Makefile.extrawarn
> index c6ebf42..8d53570 100644
> --- a/scripts/Makefile.extrawarn
> +++ b/scripts/Makefile.extrawarn
> @@ -11,6 +11,8 @@
> # are not supported by all versions of the compiler
> # ==========================================================================
>
> +KBUILD_CFLAGS += $(call cc-disable-warning, packed-not-aligned)
> +
> ifeq ("$(origin W)", "command line")
> export KBUILD_ENABLE_EXTRA_GCC_CHECKS := $(W)
> endif
> @@ -26,6 +28,7 @@ warning-1 += -Wold-style-definition
> warning-1 += $(call cc-option, -Wmissing-include-dirs)
> warning-1 += $(call cc-option, -Wunused-but-set-variable)
> warning-1 += $(call cc-option, -Wunused-const-variable)
> +warning-1 += $(call cc-option, -Wpacked-not-aligned)
> warning-1 += $(call cc-disable-warning, missing-field-initializers)
> warning-1 += $(call cc-disable-warning, sign-compare)


Applied to linux-kbuild/kbuild. Thanks!

--
Best Regards
Masahiro Yamada