2019-10-02 12:05:08

by kernelci.org bot

[permalink] [raw]
Subject: net-next/master boot bisection: v5.3-13203-gc01ebd6c4698 on bcm2836-rpi-2-b

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* This automated bisection report was sent to you on the basis *
* that you may be involved with the breaking commit it has *
* found. No manual investigation has been done to verify it, *
* and the root cause of the problem may be somewhere else. *
* *
* If you do send a fix, please include this trailer: *
* Reported-by: "kernelci.org bot" <[email protected]> *
* *
* Hope this helps! *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

net-next/master boot bisection: v5.3-13203-gc01ebd6c4698 on bcm2836-rpi-2-b

Summary:
Start: c01ebd6c4698 r8152: Use guard clause and fix comment typos
Details: https://kernelci.org/boot/id/5d942a9059b514a119d857e9
Plain log: https://storage.kernelci.org//net-next/master/v5.3-13203-gc01ebd6c4698/arm/bcm2835_defconfig/gcc-8/lab-collabora/boot-bcm2836-rpi-2-b.txt
HTML log: https://storage.kernelci.org//net-next/master/v5.3-13203-gc01ebd6c4698/arm/bcm2835_defconfig/gcc-8/lab-collabora/boot-bcm2836-rpi-2-b.html
Result: ac7c3e4ff401 compiler: enable CONFIG_OPTIMIZE_INLINING forcibly

Checks:
revert: PASS
verify: PASS

Parameters:
Tree: net-next
URL: git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git
Branch: master
Target: bcm2836-rpi-2-b
CPU arch: arm
Lab: lab-collabora
Compiler: gcc-8
Config: bcm2835_defconfig
Test suite: boot

Breaking commit found:

-------------------------------------------------------------------------------
commit ac7c3e4ff401b304489a031938dbeaab585bfe0a
Author: Masahiro Yamada <[email protected]>
Date: Wed Sep 25 16:47:42 2019 -0700

compiler: enable CONFIG_OPTIMIZE_INLINING forcibly

Commit 9012d011660e ("compiler: allow all arches to enable
CONFIG_OPTIMIZE_INLINING") allowed all architectures to enable this
option. A couple of build errors were reported by randconfig, but all of
them have been ironed out.

Towards the goal of removing CONFIG_OPTIMIZE_INLINING entirely (and it
will simplify the 'inline' macro in compiler_types.h), this commit changes
it to always-on option. Going forward, the compiler will always be
allowed to not inline functions marked 'inline'.

This is not a problem for x86 since it has been long used by
arch/x86/configs/{x86_64,i386}_defconfig.

I am keeping the config option just in case any problem crops up for other
architectures.

The code clean-up will be done after confirming this is solid.

Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: Masahiro Yamada <[email protected]>
Acked-by: Nick Desaulniers <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: Borislav Petkov <[email protected]>
Cc: Miguel Ojeda <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>

diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index 6b1b1703a646..93d97f9b0157 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -311,7 +311,7 @@ config HEADERS_CHECK
relevant for userspace, say 'Y'.

config OPTIMIZE_INLINING
- bool "Allow compiler to uninline functions marked 'inline'"
+ def_bool y
help
This option determines if the kernel forces gcc to inline the functions
developers have marked 'inline'. Doing so takes away freedom from gcc to
@@ -322,8 +322,6 @@ config OPTIMIZE_INLINING
decision will become the default in the future. Until then this option
is there to test gcc for this.

- If unsure, say N.
-
config DEBUG_SECTION_MISMATCH
bool "Enable full Section mismatch analysis"
help
-------------------------------------------------------------------------------


Git bisection log:

-------------------------------------------------------------------------------
git bisect start
# good: [b41dae061bbd722b9d7fa828f35d22035b218e18] Merge tag 'xfs-5.4-merge-7' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux
git bisect good b41dae061bbd722b9d7fa828f35d22035b218e18
# bad: [c01ebd6c46980654220f6d2b660308a074ee29df] r8152: Use guard clause and fix comment typos
git bisect bad c01ebd6c46980654220f6d2b660308a074ee29df
# good: [45824fc0da6e46cc5d563105e1eaaf3098a686f9] Merge tag 'powerpc-5.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux
git bisect good 45824fc0da6e46cc5d563105e1eaaf3098a686f9
# good: [bfe7b00de6d1e25fee08484c4fbf1c1ed175be78] mm, thp: introduce FOLL_SPLIT_PMD
git bisect good bfe7b00de6d1e25fee08484c4fbf1c1ed175be78
# bad: [972a2bf7dfe39ebf49dd47f68d27c416392e53b1] Merge tag 'nfs-for-5.4-1' of git://git.linux-nfs.org/projects/anna/linux-nfs
git bisect bad 972a2bf7dfe39ebf49dd47f68d27c416392e53b1
# good: [2e959dd87a9f58f1ad824d830e06388c9e328239] Merge tag 'for-5.4/post-2019-09-24' of git://git.kernel.dk/linux-block
git bisect good 2e959dd87a9f58f1ad824d830e06388c9e328239
# bad: [a22fea94992a2bc5328005e62f368413ede49c14] arch/sparc/include/asm/pgtable_64.h: fix build
git bisect bad a22fea94992a2bc5328005e62f368413ede49c14
# good: [351c8a09b00b5c51c8f58b016fffe51f87e2d820] Merge branch 'i2c/for-5.4' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux
git bisect good 351c8a09b00b5c51c8f58b016fffe51f87e2d820
# bad: [ac7c3e4ff401b304489a031938dbeaab585bfe0a] compiler: enable CONFIG_OPTIMIZE_INLINING forcibly
git bisect bad ac7c3e4ff401b304489a031938dbeaab585bfe0a
# good: [94fb98450456da82a16a378816390d99b85edb55] checkpatch: allow consecutive close braces
git bisect good 94fb98450456da82a16a378816390d99b85edb55
# good: [4fadcd1c14d810ec6a695039cfc71e03ae742deb] fs/reiserfs/fix_node.c: remove set but not used variables
git bisect good 4fadcd1c14d810ec6a695039cfc71e03ae742deb
# good: [8495f7e6732ed248b648d36439795b42ec650b9e] fork: improve error message for corrupted page tables
git bisect good 8495f7e6732ed248b648d36439795b42ec650b9e
# good: [7c3a6aedcd6aae0a32a527e68669f7dd667492d1] kexec: bail out upon SIGKILL when allocating memory.
git bisect good 7c3a6aedcd6aae0a32a527e68669f7dd667492d1
# good: [9dd819a15162f8f82a6001b090caa38c18297b39] uaccess: add missing __must_check attributes
git bisect good 9dd819a15162f8f82a6001b090caa38c18297b39
# first bad commit: [ac7c3e4ff401b304489a031938dbeaab585bfe0a] compiler: enable CONFIG_OPTIMIZE_INLINING forcibly
-------------------------------------------------------------------------------


2019-10-02 17:24:40

by Guillaume Tucker

[permalink] [raw]
Subject: Re: net-next/master boot bisection: v5.3-13203-gc01ebd6c4698 on bcm2836-rpi-2-b

On 02/10/2019 11:05, kernelci.org bot wrote:
> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
> * This automated bisection report was sent to you on the basis *
> * that you may be involved with the breaking commit it has *
> * found. No manual investigation has been done to verify it, *
> * and the root cause of the problem may be somewhere else. *
> * *
> * If you do send a fix, please include this trailer: *
> * Reported-by: "kernelci.org bot" <[email protected]> *
> * *
> * Hope this helps! *
> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
>
> net-next/master boot bisection: v5.3-13203-gc01ebd6c4698 on bcm2836-rpi-2-b
>
> Summary:
> Start: c01ebd6c4698 r8152: Use guard clause and fix comment typos
> Details: https://kernelci.org/boot/id/5d942a9059b514a119d857e9
> Plain log: https://storage.kernelci.org//net-next/master/v5.3-13203-gc01ebd6c4698/arm/bcm2835_defconfig/gcc-8/lab-collabora/boot-bcm2836-rpi-2-b.txt
> HTML log: https://storage.kernelci.org//net-next/master/v5.3-13203-gc01ebd6c4698/arm/bcm2835_defconfig/gcc-8/lab-collabora/boot-bcm2836-rpi-2-b.html
> Result: ac7c3e4ff401 compiler: enable CONFIG_OPTIMIZE_INLINING forcibly
>
> Checks:
> revert: PASS
> verify: PASS
>
> Parameters:
> Tree: net-next
> URL: git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git
> Branch: master
> Target: bcm2836-rpi-2-b
> CPU arch: arm
> Lab: lab-collabora
> Compiler: gcc-8
> Config: bcm2835_defconfig
> Test suite: boot
>
> Breaking commit found:
>
> -------------------------------------------------------------------------------
> commit ac7c3e4ff401b304489a031938dbeaab585bfe0a
> Author: Masahiro Yamada <[email protected]>
> Date: Wed Sep 25 16:47:42 2019 -0700
>
> compiler: enable CONFIG_OPTIMIZE_INLINING forcibly
>
> Commit 9012d011660e ("compiler: allow all arches to enable
> CONFIG_OPTIMIZE_INLINING") allowed all architectures to enable this
> option. A couple of build errors were reported by randconfig, but all of
> them have been ironed out.
>
> Towards the goal of removing CONFIG_OPTIMIZE_INLINING entirely (and it
> will simplify the 'inline' macro in compiler_types.h), this commit changes
> it to always-on option. Going forward, the compiler will always be
> allowed to not inline functions marked 'inline'.
>
> This is not a problem for x86 since it has been long used by
> arch/x86/configs/{x86_64,i386}_defconfig.
>
> I am keeping the config option just in case any problem crops up for other
> architectures.

It seems like this isn't the case on the Raspberry Pi 2b with
bcm2835_defconfig. Here's an example of the kernel errors:

https://lava.collabora.co.uk/scheduler/job/1859342#L327

There doesn't appear to be any problem with multi_v7_defconfig on
the same platform as shown with this test:

https://lava.collabora.co.uk/scheduler/job/1858986

So it's not entirely broken, but some investigation needs to be
done to find out what differences between bcm2835_defconfig and
multi_v7_defconfig are making the problem apparent.

I guess people can turn the option off in their local configs in
the meantime. It doesn't seem like turning it off in
bcm2835_defconfig would be a solution though as it would only
hide the issue for a bit longer until the option is removed.

Guillaume

> The code clean-up will be done after confirming this is solid.
>
> Link: http://lkml.kernel.org/r/[email protected]
> Signed-off-by: Masahiro Yamada <[email protected]>
> Acked-by: Nick Desaulniers <[email protected]>
> Cc: Ingo Molnar <[email protected]>
> Cc: Borislav Petkov <[email protected]>
> Cc: Miguel Ojeda <[email protected]>
> Signed-off-by: Andrew Morton <[email protected]>
> Signed-off-by: Linus Torvalds <[email protected]>
>
> diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
> index 6b1b1703a646..93d97f9b0157 100644
> --- a/lib/Kconfig.debug
> +++ b/lib/Kconfig.debug
> @@ -311,7 +311,7 @@ config HEADERS_CHECK
> relevant for userspace, say 'Y'.
>
> config OPTIMIZE_INLINING
> - bool "Allow compiler to uninline functions marked 'inline'"
> + def_bool y
> help
> This option determines if the kernel forces gcc to inline the functions
> developers have marked 'inline'. Doing so takes away freedom from gcc to
> @@ -322,8 +322,6 @@ config OPTIMIZE_INLINING
> decision will become the default in the future. Until then this option
> is there to test gcc for this.
>
> - If unsure, say N.
> -
> config DEBUG_SECTION_MISMATCH
> bool "Enable full Section mismatch analysis"
> help
> -------------------------------------------------------------------------------
>
>
> Git bisection log:
>
> -------------------------------------------------------------------------------
> git bisect start
> # good: [b41dae061bbd722b9d7fa828f35d22035b218e18] Merge tag 'xfs-5.4-merge-7' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux
> git bisect good b41dae061bbd722b9d7fa828f35d22035b218e18
> # bad: [c01ebd6c46980654220f6d2b660308a074ee29df] r8152: Use guard clause and fix comment typos
> git bisect bad c01ebd6c46980654220f6d2b660308a074ee29df
> # good: [45824fc0da6e46cc5d563105e1eaaf3098a686f9] Merge tag 'powerpc-5.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux
> git bisect good 45824fc0da6e46cc5d563105e1eaaf3098a686f9
> # good: [bfe7b00de6d1e25fee08484c4fbf1c1ed175be78] mm, thp: introduce FOLL_SPLIT_PMD
> git bisect good bfe7b00de6d1e25fee08484c4fbf1c1ed175be78
> # bad: [972a2bf7dfe39ebf49dd47f68d27c416392e53b1] Merge tag 'nfs-for-5.4-1' of git://git.linux-nfs.org/projects/anna/linux-nfs
> git bisect bad 972a2bf7dfe39ebf49dd47f68d27c416392e53b1
> # good: [2e959dd87a9f58f1ad824d830e06388c9e328239] Merge tag 'for-5.4/post-2019-09-24' of git://git.kernel.dk/linux-block
> git bisect good 2e959dd87a9f58f1ad824d830e06388c9e328239
> # bad: [a22fea94992a2bc5328005e62f368413ede49c14] arch/sparc/include/asm/pgtable_64.h: fix build
> git bisect bad a22fea94992a2bc5328005e62f368413ede49c14
> # good: [351c8a09b00b5c51c8f58b016fffe51f87e2d820] Merge branch 'i2c/for-5.4' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux
> git bisect good 351c8a09b00b5c51c8f58b016fffe51f87e2d820
> # bad: [ac7c3e4ff401b304489a031938dbeaab585bfe0a] compiler: enable CONFIG_OPTIMIZE_INLINING forcibly
> git bisect bad ac7c3e4ff401b304489a031938dbeaab585bfe0a
> # good: [94fb98450456da82a16a378816390d99b85edb55] checkpatch: allow consecutive close braces
> git bisect good 94fb98450456da82a16a378816390d99b85edb55
> # good: [4fadcd1c14d810ec6a695039cfc71e03ae742deb] fs/reiserfs/fix_node.c: remove set but not used variables
> git bisect good 4fadcd1c14d810ec6a695039cfc71e03ae742deb
> # good: [8495f7e6732ed248b648d36439795b42ec650b9e] fork: improve error message for corrupted page tables
> git bisect good 8495f7e6732ed248b648d36439795b42ec650b9e
> # good: [7c3a6aedcd6aae0a32a527e68669f7dd667492d1] kexec: bail out upon SIGKILL when allocating memory.
> git bisect good 7c3a6aedcd6aae0a32a527e68669f7dd667492d1
> # good: [9dd819a15162f8f82a6001b090caa38c18297b39] uaccess: add missing __must_check attributes
> git bisect good 9dd819a15162f8f82a6001b090caa38c18297b39
> # first bad commit: [ac7c3e4ff401b304489a031938dbeaab585bfe0a] compiler: enable CONFIG_OPTIMIZE_INLINING forcibly
> -------------------------------------------------------------------------------
>

2019-10-02 17:26:49

by David Miller

[permalink] [raw]
Subject: Re: net-next/master boot bisection: v5.3-13203-gc01ebd6c4698 on bcm2836-rpi-2-b

From: Guillaume Tucker <[email protected]>
Date: Wed, 2 Oct 2019 18:21:31 +0100

> It seems like this isn't the case on the Raspberry Pi 2b with
> bcm2835_defconfig. Here's an example of the kernel errors:

This has been fixed upstream I believe, it was some ARM assembler issue
or something like that.

In any event, definitely not a networking problem. :-)

2019-10-02 17:31:23

by Masahiro Yamada

[permalink] [raw]
Subject: Re: net-next/master boot bisection: v5.3-13203-gc01ebd6c4698 on bcm2836-rpi-2-b

On Thu, Oct 3, 2019 at 2:24 AM David Miller <[email protected]> wrote:
>
> From: Guillaume Tucker <[email protected]>
> Date: Wed, 2 Oct 2019 18:21:31 +0100
>
> > It seems like this isn't the case on the Raspberry Pi 2b with
> > bcm2835_defconfig. Here's an example of the kernel errors:
>
> This has been fixed upstream I believe, it was some ARM assembler issue
> or something like that.
>
> In any event, definitely not a networking problem. :-)


The fix and related discussions are available.

https://lore.kernel.org/patchwork/patch/1132785/



--
Best Regards
Masahiro Yamada

2019-10-02 17:48:20

by Guillaume Tucker

[permalink] [raw]
Subject: Re: net-next/master boot bisection: v5.3-13203-gc01ebd6c4698 on bcm2836-rpi-2-b

On 02/10/2019 18:26, Masahiro Yamada wrote:
> On Thu, Oct 3, 2019 at 2:24 AM David Miller <[email protected]> wrote:
>>
>> From: Guillaume Tucker <[email protected]>
>> Date: Wed, 2 Oct 2019 18:21:31 +0100
>>
>>> It seems like this isn't the case on the Raspberry Pi 2b with
>>> bcm2835_defconfig. Here's an example of the kernel errors:
>>
>> This has been fixed upstream I believe, it was some ARM assembler issue
>> or something like that.
>>
>> In any event, definitely not a networking problem. :-)

Quite, and there was also a bisection on the clk-next branch. If
some subsystem branches don't rebase with the fix and the problem
keeps happening then we'll be disabling boot bisections for them
temporarily to avoid email noise.

On a side note, we're also planning to add a way to mark a
revision as fixed to stop reporting particular failures that have
been fixed upstream - but that's not possible at the moment.

> The fix and related discussions are available.
>
> https://lore.kernel.org/patchwork/patch/1132785/

Great, thanks! Sorry I missed that thread. Thank you also for
having mentioned the kernelci.org bot in the fix.

Guillaume