On 8/5/20 10:39 AM, Naresh Kamboju wrote:
On Wed, 5 Aug 2020 at 21:22, Greg Kroah-Hartman gregkh@linuxfoundation.org wrote:
This is the start of the stable review cycle for the 5.7.14 release. There are 6 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Fri, 07 Aug 2020 15:34:53 +0000. Anything received after that time might be too late.
The whole patch series can be found in one patch at: https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.7.14-rc1.... or in the git tree and branch at: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.7.y and the diffstat can be found below.
thanks,
greg k-h
Pseudo-Shortlog of commits:
Greg Kroah-Hartman gregkh@linuxfoundation.org Linux 5.7.14-rc1
Marc Zyngier maz@kernel.org arm64: Workaround circular dependency in pointer_auth.h
Linus Torvalds torvalds@linux-foundation.org random32: move the pseudo-random 32-bit definitions to prandom.h
Linus Torvalds torvalds@linux-foundation.org random32: remove net_rand_state from the latent entropy gcc plugin
Willy Tarreau w@1wt.eu random: fix circular include dependency on arm64 after addition of percpu.h
Grygorii Strashko grygorii.strashko@ti.com ARM: percpu.h: fix build error
Willy Tarreau w@1wt.eu random32: update the net random state on interrupt and activity
[ sorry if it is not interesting ! ]
While building with old gcc-7.3.0 the build breaks for arm64 whereas build PASS on gcc-8, gcc-9 and gcc-10.
with gcc 7.3.0 build breaks log,
Same with older versions of gcc. I don't see the problem with the mainline kernel.
I think this is caused by more recursive includes. arch/arm64/include/asm/archrandom.h includes include/linux/random.h which includes arch/arm64/include/asm/archrandom.h to get the definition of arch_get_random_seed_long_early (which it won't get because of the recursion).
What I don't really understand is how this works with new versions of gcc.
Guenter
In file included from arch/arm64/include/asm/archrandom.h:9:0, from arch/arm64/kernel/kaslr.c:14: include/linux/random.h: In function 'arch_get_random_seed_long_early': include/linux/random.h:149:9: error: implicit declaration of function 'arch_get_random_seed_long'; did you mean 'arch_get_random_seed_long_early'? [-Werror=implicit-function-declaration] return arch_get_random_seed_long(v); ^~~~~~~~~~~~~~~~~~~~~~~~~ arch_get_random_seed_long_early include/linux/random.h: In function 'arch_get_random_long_early': include/linux/random.h:157:9: error: implicit declaration of function 'arch_get_random_long'; did you mean 'get_random_long'? [-Werror=implicit-function-declaration] return arch_get_random_long(v); ^~~~~~~~~~~~~~~~~~~~ get_random_long In file included from arch/arm64/kernel/kaslr.c:14:0: arch/arm64/include/asm/archrandom.h: At top level: arch/arm64/include/asm/archrandom.h:30:33: error: conflicting types for 'arch_get_random_long' static inline bool __must_check arch_get_random_long(unsigned long *v) ^~~~~~~~~~~~~~~~~~~~ In file included from arch/arm64/include/asm/archrandom.h:9:0, from arch/arm64/kernel/kaslr.c:14: include/linux/random.h:157:9: note: previous implicit declaration of 'arch_get_random_long' was here return arch_get_random_long(v); ^~~~~~~~~~~~~~~~~~~~ In file included from arch/arm64/kernel/kaslr.c:14:0: arch/arm64/include/asm/archrandom.h:40:33: error: conflicting types for 'arch_get_random_seed_long' static inline bool __must_check arch_get_random_seed_long(unsigned long *v) ^~~~~~~~~~~~~~~~~~~~~~~~~ In file included from arch/arm64/include/asm/archrandom.h:9:0, from arch/arm64/kernel/kaslr.c:14: include/linux/random.h:149:9: note: previous implicit declaration of 'arch_get_random_seed_long' was here return arch_get_random_seed_long(v); ^~~~~~~~~~~~~~~~~~~~~~~~~ In file included from arch/arm64/kernel/kaslr.c:14:0: arch/arm64/include/asm/archrandom.h:72:1: error: redefinition of 'arch_get_random_seed_long_early' arch_get_random_seed_long_early(unsigned long *v) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from arch/arm64/include/asm/archrandom.h:9:0, from arch/arm64/kernel/kaslr.c:14: include/linux/random.h:146:27: note: previous definition of 'arch_get_random_seed_long_early' was here static inline bool __init arch_get_random_seed_long_early(unsigned long *v)