Message ID | 20220407013959.929748-1-yozhao@google.com |
---|---|
State | New |
Headers | show |
Series | kernel_configcheck should be run for SRCTREE linux | expand |
Hello, I believe this has introduced a race condition and is the cause of those two failures: https://autobuilder.yoctoproject.org/typhoon/#/builders/87/builds/3442/steps/14/logs/stdio https://autobuilder.yoctoproject.org/typhoon/#/builders/86/builds/3399/steps/14/logs/stdio 2022-04-12 22:43:44,845 - oe-selftest - INFO - FAIL: devtool.DevtoolUpgradeTests.test_devtool_virtual_kernel_modify (subunit.RemotedTestCase) 2022-04-12 22:43:44,845 - oe-selftest - INFO - ---------------------------------------------------------------------- 2022-04-12 22:43:44,845 - oe-selftest - INFO - testtools.testresult.real._StringException: Traceback (most recent call last): File "/home/pokybuild/yocto-worker/oe-selftest-ubuntu/build/meta/lib/oeqa/selftest/cases/devtool.py", line 1911, in test_devtool_virtual_kernel_modify runCmd('devtool build %s' % kernel_provider) File "/home/pokybuild/yocto-worker/oe-selftest-ubuntu/build/meta/lib/oeqa/utils/commands.py", line 207, in runCmd raise AssertionError("Command '%s' returned non-zero exit status %d:\n%s" % (command, result.status, exc_output)) AssertionError: Command 'devtool build linux-yocto' returned non-zero exit status 1: ERROR: linux-yocto-5.15.32+git999-r0 do_kernel_configcheck: config analysis failed: ERROR: Logfile of failure stored in: /home/pokybuild/yocto-worker/oe-selftest-ubuntu/build/build-st-3540668/tmp/work/qemux86_64-poky-linux/linux-yocto/5.15.32+git999-r0/temp/log.do_kernel_configcheck.342487 NOTE: recipe linux-yocto-5.15.32+git999-r0: task do_kernel_configcheck: Failed ERROR: Task (/tmp/devtoolqasd4ey4qf/core-copy/meta/recipes-kernel/linux/linux-yocto_5.15.bb:do_kernel_configcheck) failed with exit code '1' I tried to get the logs from the autobuilders but the linux-yocto/5.15.32+git999-r0/ directory was not present anymore... On 06/04/2022 18:39:59-0700, Yong Zhao via lists.openembedded.org wrote: > The task is useful for a SRCTREE linux. Because it won't modify the > SRCTREE, it does not hurt to run it by default. > > Signed-off-by: Yong Zhao <yozhao@google.com> > --- > meta/classes/kernel-yocto.bbclass | 2 +- > scripts/lib/devtool/standard.py | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass > index 1d5a8cdf29..56ba340c1b 100644 > --- a/meta/classes/kernel-yocto.bbclass > +++ b/meta/classes/kernel-yocto.bbclass > @@ -1,5 +1,5 @@ > # remove tasks that modify the source tree in case externalsrc is inherited > -SRCTREECOVEREDTASKS += "do_validate_branches do_kernel_configcheck do_kernel_checkout do_fetch do_unpack do_patch" > +SRCTREECOVEREDTASKS += "do_validate_branches do_kernel_checkout do_fetch do_unpack do_patch" > PATCH_GIT_USER_EMAIL ?= "kernel-yocto@oe" > PATCH_GIT_USER_NAME ?= "OpenEmbedded" > > diff --git a/scripts/lib/devtool/standard.py b/scripts/lib/devtool/standard.py > index 01fb5ad96f..35cea6f320 100644 > --- a/scripts/lib/devtool/standard.py > +++ b/scripts/lib/devtool/standard.py > @@ -949,7 +949,7 @@ def modify(args, config, basepath, workspace): > > if bb.data.inherits_class('kernel', rd): > f.write('SRCTREECOVEREDTASKS = "do_validate_branches do_kernel_checkout ' > - 'do_fetch do_unpack do_kernel_configcheck"\n') > + 'do_fetch do_unpack"\n') > f.write('\ndo_patch[noexec] = "1"\n') > f.write('\ndo_configure:append() {\n' > ' cp ${B}/.config ${S}/.config.baseline\n' > -- > 2.35.1.1094.g7c7d902a7c-goog > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#164095): https://lists.openembedded.org/g/openembedded-core/message/164095 > Mute This Topic: https://lists.openembedded.org/mt/90304701/3617179 > Group Owner: openembedded-core+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alexandre.belloni@bootlin.com] > -=-=-=-=-=-=-=-=-=-=-=- >
Hi Alexandre, Thanks for the info. I think the failure happened because the config files did not pass do_kernel_configcheck. My patch is intended to catch those errors. I don't know how to access those test results and how to reproduce the issue at my side. As this patch is only an improvement, I can hold this patch back unless you can help fix those config file issues. Regards, Yong On Tue, Apr 12, 2022 at 11:46 PM Alexandre Belloni < alexandre.belloni@bootlin.com> wrote: > Hello, > > I believe this has introduced a race condition and is the cause of those > two failures: > > https://autobuilder.yoctoproject.org/typhoon/#/builders/87/builds/3442/steps/14/logs/stdio > > https://autobuilder.yoctoproject.org/typhoon/#/builders/86/builds/3399/steps/14/logs/stdio > > 2022-04-12 22:43:44,845 - oe-selftest - INFO - FAIL: > devtool.DevtoolUpgradeTests.test_devtool_virtual_kernel_modify > (subunit.RemotedTestCase) > 2022-04-12 22:43:44,845 - oe-selftest - INFO - > ---------------------------------------------------------------------- > 2022-04-12 22:43:44,845 - oe-selftest - INFO - > testtools.testresult.real._StringException: Traceback (most recent call > last): > File > "/home/pokybuild/yocto-worker/oe-selftest-ubuntu/build/meta/lib/oeqa/selftest/cases/devtool.py", > line 1911, in test_devtool_virtual_kernel_modify > runCmd('devtool build %s' % kernel_provider) > File > "/home/pokybuild/yocto-worker/oe-selftest-ubuntu/build/meta/lib/oeqa/utils/commands.py", > line 207, in runCmd > raise AssertionError("Command '%s' returned non-zero exit status > %d:\n%s" % (command, result.status, exc_output)) > AssertionError: Command 'devtool build linux-yocto' returned non-zero exit > status 1: > > ERROR: linux-yocto-5.15.32+git999-r0 do_kernel_configcheck: config > analysis failed: > ERROR: Logfile of failure stored in: > /home/pokybuild/yocto-worker/oe-selftest-ubuntu/build/build-st-3540668/tmp/work/qemux86_64-poky-linux/linux-yocto/5.15.32+git999-r0/temp/log.do_kernel_configcheck.342487 > NOTE: recipe linux-yocto-5.15.32+git999-r0: task do_kernel_configcheck: > Failed > ERROR: Task > (/tmp/devtoolqasd4ey4qf/core-copy/meta/recipes-kernel/linux/linux-yocto_5.15.bb:do_kernel_configcheck) > failed with exit code '1' > > I tried to get the logs from the autobuilders but the > linux-yocto/5.15.32+git999-r0/ directory was not present anymore... > > On 06/04/2022 18:39:59-0700, Yong Zhao via lists.openembedded.org wrote: > > The task is useful for a SRCTREE linux. Because it won't modify the > > SRCTREE, it does not hurt to run it by default. > > > > Signed-off-by: Yong Zhao <yozhao@google.com> > > --- > > meta/classes/kernel-yocto.bbclass | 2 +- > > scripts/lib/devtool/standard.py | 2 +- > > 2 files changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/meta/classes/kernel-yocto.bbclass > b/meta/classes/kernel-yocto.bbclass > > index 1d5a8cdf29..56ba340c1b 100644 > > --- a/meta/classes/kernel-yocto.bbclass > > +++ b/meta/classes/kernel-yocto.bbclass > > @@ -1,5 +1,5 @@ > > # remove tasks that modify the source tree in case externalsrc is > inherited > > -SRCTREECOVEREDTASKS += "do_validate_branches do_kernel_configcheck > do_kernel_checkout do_fetch do_unpack do_patch" > > +SRCTREECOVEREDTASKS += "do_validate_branches do_kernel_checkout > do_fetch do_unpack do_patch" > > PATCH_GIT_USER_EMAIL ?= "kernel-yocto@oe" > > PATCH_GIT_USER_NAME ?= "OpenEmbedded" > > > > diff --git a/scripts/lib/devtool/standard.py > b/scripts/lib/devtool/standard.py > > index 01fb5ad96f..35cea6f320 100644 > > --- a/scripts/lib/devtool/standard.py > > +++ b/scripts/lib/devtool/standard.py > > @@ -949,7 +949,7 @@ def modify(args, config, basepath, workspace): > > > > if bb.data.inherits_class('kernel', rd): > > f.write('SRCTREECOVEREDTASKS = "do_validate_branches > do_kernel_checkout ' > > - 'do_fetch do_unpack do_kernel_configcheck"\n') > > + 'do_fetch do_unpack"\n') > > f.write('\ndo_patch[noexec] = "1"\n') > > f.write('\ndo_configure:append() {\n' > > ' cp ${B}/.config ${S}/.config.baseline\n' > > -- > > 2.35.1.1094.g7c7d902a7c-goog > > > > > > > -=-=-=-=-=-=-=-=-=-=-=- > > Links: You receive all messages sent to this group. > > View/Reply Online (#164095): > https://lists.openembedded.org/g/openembedded-core/message/164095 > > Mute This Topic: https://lists.openembedded.org/mt/90304701/3617179 > > Group Owner: openembedded-core+owner@lists.openembedded.org > > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [ > alexandre.belloni@bootlin.com] > > -=-=-=-=-=-=-=-=-=-=-=- > > > > > -- > Alexandre Belloni, co-owner and COO, Bootlin > Embedded Linux and Kernel engineering > https://bootlin.com >
diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass index 1d5a8cdf29..56ba340c1b 100644 --- a/meta/classes/kernel-yocto.bbclass +++ b/meta/classes/kernel-yocto.bbclass @@ -1,5 +1,5 @@ # remove tasks that modify the source tree in case externalsrc is inherited -SRCTREECOVEREDTASKS += "do_validate_branches do_kernel_configcheck do_kernel_checkout do_fetch do_unpack do_patch" +SRCTREECOVEREDTASKS += "do_validate_branches do_kernel_checkout do_fetch do_unpack do_patch" PATCH_GIT_USER_EMAIL ?= "kernel-yocto@oe" PATCH_GIT_USER_NAME ?= "OpenEmbedded" diff --git a/scripts/lib/devtool/standard.py b/scripts/lib/devtool/standard.py index 01fb5ad96f..35cea6f320 100644 --- a/scripts/lib/devtool/standard.py +++ b/scripts/lib/devtool/standard.py @@ -949,7 +949,7 @@ def modify(args, config, basepath, workspace): if bb.data.inherits_class('kernel', rd): f.write('SRCTREECOVEREDTASKS = "do_validate_branches do_kernel_checkout ' - 'do_fetch do_unpack do_kernel_configcheck"\n') + 'do_fetch do_unpack"\n') f.write('\ndo_patch[noexec] = "1"\n') f.write('\ndo_configure:append() {\n' ' cp ${B}/.config ${S}/.config.baseline\n'
The task is useful for a SRCTREE linux. Because it won't modify the SRCTREE, it does not hurt to run it by default. Signed-off-by: Yong Zhao <yozhao@google.com> --- meta/classes/kernel-yocto.bbclass | 2 +- scripts/lib/devtool/standard.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)