Re: gfp.h:20:32: error: redefinition of typedef 'gfp_t' is a C11 feature
From: Nick Desaulniers
Date: Mon Feb 22 2021 - 12:39:24 EST
On Mon, Feb 22, 2021 at 9:36 AM Naresh Kamboju
<naresh.kamboju@xxxxxxxxxx> wrote:
>
> arm davinci_all_defconfig config with clang 10, 11 and 12 failing
> on Linux next tag 20210222 due to below listed errors / warnings.
>
> - arm (davinci_all_defconfig) with clang-10
> - arm (davinci_all_defconfig) with clang-11
> - arm (davinci_all_defconfig) with clang-12
>
> make --silent --keep-going --jobs=8
> O=/home/tuxbuild/.cache/tuxmake/builds/1/tmp ARCH=arm
> CROSS_COMPILE=arm-linux-gnueabihf- 'HOSTCC=sccache clang' 'CC=sccache
> clang' davinci_all_defconfig
>
> make --silent --keep-going --jobs=8
> O=/home/tuxbuild/.cache/tuxmake/builds/1/tmp ARCH=arm
> CROSS_COMPILE=arm-linux-gnueabihf- 'HOSTCC=sccache clang' 'CC=sccache
> clang'
>
>
> include/linux/gfp.h:20:32: error: redefinition of typedef 'gfp_t' is a
> C11 feature [-Werror,-Wtypedef-redefinition]
> typedef unsigned int __bitwise gfp_t; // repeated here for kernel-doc
> ^
Thanks for the report, sounds like this has already been fixed:
https://lore.kernel.org/linux-mm/CAKwvOdmbx+rLv+z-POUq+DPedhrWFEFVHhWW9j5vWpzH0J53Kg@xxxxxxxxxxxxxx/T/#m7d7d6f2905b1be082f31628011d51056a7e94abc
> include/linux/types.h:148:32: note: previous definition is here
> typedef unsigned int __bitwise gfp_t;
> ^
> 1 warning generated.
> 1 warning generated.
> 1 warning generated.
> 1 warning generated.
> 1 error generated.
> make[5]: *** [scripts/Makefile.build:287:
> drivers/gpu/drm/tilcdc/tilcdc_plane.o] Error 1
>
> Reported-by: Naresh Kamboju <naresh.kamboju@xxxxxxxxxx>
>
> Step to reproduce:
> ---------------------------
> # TuxMake is a command line tool and Python library that provides
> # portable and repeatable Linux kernel builds across a variety of
> # architectures, toolchains, kernel configurations, and make targets.
> #
> # TuxMake supports the concept of runtimes.
> # See https://docs.tuxmake.org/runtimes/, for that to work it requires
> # that you install podman or docker on your system.
> #
> # To install tuxmake on your system globally:
> # sudo pip3 install -U tuxmake
> #
> # See https://docs.tuxmake.org/ for complete documentation.
>
> tuxmake --runtime podman --target-arch arm --toolchain clang-10
> --kconfig davinci_all_defconfig
>
> build log,
> https://builds.tuxbuild.com/1opbM56yvX4uyeXV8JBwFNz9WEQ/
>
> --
> Linaro LKFT
> https://lkft.linaro.org
--
Thanks,
~Nick Desaulniers