[meta-selinux][PATCH 02/16] selinux: upgrade inc files to 3.0 (20191204)
Signed-off-by: Yi Zhao <yi.zhao@...> --- .../selinux/{selinux_20190315.inc => selinux_20191204.inc} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename recipes-security/selinux/{selinux_20190315.inc => selinux_20191204.inc} (90%) diff --git a/recipes-security/selinux/selinux_20190315.inc b/recipes-security/selinux/selinux_20191204.inc similarity index 90% rename from recipes-security/selinux/selinux_20190315.inc rename to recipes-security/selinux/selinux_20191204.inc index e79dd54..113fc30 100644 --- a/recipes-security/selinux/selinux_20190315.inc +++ b/recipes-security/selinux/selinux_20191204.inc @@ -1,4 +1,4 @@ -SELINUX_RELEASE = "20190315" +SELINUX_RELEASE = "20191204" SRC_URI = " https://github.com/SELinuxProject/selinux/releases/download/${SELINUX_RELEASE}/${BPN}-${PV}.tar.gz" -- 2.17.1
|
|
Re: [meta-intel][PATCH] conf:machine: Use weak reference for SERIAL_CONSOLES variable
On Tue, 2020-04-14 at 08:25 +0200, Marek Belisko wrote: This add possibility to override in custom layer.
Signed-off-by: Marek Belisko <marek.belisko@...> --- conf/machine/intel-core2-32.conf | 2 +- conf/machine/intel-corei7-64.conf | 2 +- conf/machine/intel-skylake-64.conf | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/conf/machine/intel-core2-32.conf b/conf/machine/intel- core2-32.conf index 20c9872..384ad1e 100644 --- a/conf/machine/intel-core2-32.conf +++ b/conf/machine/intel-core2-32.conf @@ -27,7 +27,7 @@ XSERVER ?= "${XSERVER_X86_BASE} \ " SYSLINUX_OPTS = "serial 0 115200" -SERIAL_CONSOLES = "115200;ttyS0 115200;ttyS1 115200;ttyPCH0" +SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyS1 115200;ttyPCH0" I think having just this would make this statement not do anything as these machine files includes x86-base.inc which also sets this variable using a ?=. This would probably also need a ??= in x86-base.inc. Thanks, Anuj APPEND += "rootwait console=ttyS0,115200 console=ttyPCH0,115200 console=tty0" IMAGE_FSTYPES += "wic" diff --git a/conf/machine/intel-corei7-64.conf b/conf/machine/intel- corei7-64.conf index 6164bf3..2009537 100644 --- a/conf/machine/intel-corei7-64.conf +++ b/conf/machine/intel-corei7-64.conf @@ -32,7 +32,7 @@ XSERVER ?= "${XSERVER_X86_BASE} \ " SYSLINUX_OPTS = "serial 0 115200" -SERIAL_CONSOLES = "115200;ttyS0 115200;ttyS1 115200;ttyS2" +SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyS1 115200;ttyS2" APPEND += "rootwait console=ttyS0,115200 console=tty0" IMAGE_FSTYPES += "wic" diff --git a/conf/machine/intel-skylake-64.conf b/conf/machine/intel- skylake-64.conf index e367951..503a982 100644 --- a/conf/machine/intel-skylake-64.conf +++ b/conf/machine/intel-skylake-64.conf @@ -25,7 +25,7 @@ XSERVER ?= "${XSERVER_X86_BASE} \ " SYSLINUX_OPTS = "serial 0 115200" -SERIAL_CONSOLES = "115200;ttyS0 115200;ttyS1 115200;ttyS2" +SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyS1 115200;ttyS2" APPEND += "rootwait console=ttyS0,115200 console=tty0" IMAGE_FSTYPES += "wic"
|
|
Re: meta-intel: Override SERIAL_CONSOLES variable
On Sat, Apr 11, 2020 at 8:09 AM Anuj Mittal <anuj.mittal@...> wrote: Could you send a patch please?
Done: https://lists.yoctoproject.org/g/yocto/message/49131 Thanks,
Anuj
-----Original Message----- From: yocto@... <yocto@...> On Behalf Of Leon Woestenberg Sent: Saturday, April 11, 2020 04:48 AM To: Marek Belisko <marek.belisko@...> Cc: yocto <yocto@...> Subject: Re: [yocto] meta-intel: Override SERIAL_CONSOLES variable
Hi all,
On Fri, Apr 10, 2020 at 8:56 AM Marek Belisko <marek.belisko@...> wrote:
Hi,
in meta-intel in machine configuration SERIAL_CONSOLES are defined as : SERIAL_CONSOLES = "115200;ttyS0 115200;ttyS1 115200;ttyS2"
For a more generic solution, could this be made a weak assignment?
I am on a SMARC x86-64 module which only one serial is useful, so I would like to downtune this variable as well.
Regards,
Leon.
BR, marek
|
|
[meta-intel][PATCH] conf:machine: Use weak reference for SERIAL_CONSOLES variable
This add possibility to override in custom layer.
Signed-off-by: Marek Belisko <marek.belisko@...> --- conf/machine/intel-core2-32.conf | 2 +- conf/machine/intel-corei7-64.conf | 2 +- conf/machine/intel-skylake-64.conf | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/conf/machine/intel-core2-32.conf b/conf/machine/intel-core2-32.conf index 20c9872..384ad1e 100644 --- a/conf/machine/intel-core2-32.conf +++ b/conf/machine/intel-core2-32.conf @@ -27,7 +27,7 @@ XSERVER ?= "${XSERVER_X86_BASE} \ " SYSLINUX_OPTS = "serial 0 115200" -SERIAL_CONSOLES = "115200;ttyS0 115200;ttyS1 115200;ttyPCH0" +SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyS1 115200;ttyPCH0" APPEND += "rootwait console=ttyS0,115200 console=ttyPCH0,115200 console=tty0" IMAGE_FSTYPES += "wic" diff --git a/conf/machine/intel-corei7-64.conf b/conf/machine/intel-corei7-64.conf index 6164bf3..2009537 100644 --- a/conf/machine/intel-corei7-64.conf +++ b/conf/machine/intel-corei7-64.conf @@ -32,7 +32,7 @@ XSERVER ?= "${XSERVER_X86_BASE} \ " SYSLINUX_OPTS = "serial 0 115200" -SERIAL_CONSOLES = "115200;ttyS0 115200;ttyS1 115200;ttyS2" +SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyS1 115200;ttyS2" APPEND += "rootwait console=ttyS0,115200 console=tty0" IMAGE_FSTYPES += "wic" diff --git a/conf/machine/intel-skylake-64.conf b/conf/machine/intel-skylake-64.conf index e367951..503a982 100644 --- a/conf/machine/intel-skylake-64.conf +++ b/conf/machine/intel-skylake-64.conf @@ -25,7 +25,7 @@ XSERVER ?= "${XSERVER_X86_BASE} \ " SYSLINUX_OPTS = "serial 0 115200" -SERIAL_CONSOLES = "115200;ttyS0 115200;ttyS1 115200;ttyS2" +SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyS1 115200;ttyS2" APPEND += "rootwait console=ttyS0,115200 console=tty0" IMAGE_FSTYPES += "wic" -- 2.7.4
|
|
Re: What is the recommended method to patch a recipe?
On 4/13/20 10:31 AM, Nicolas Dechesne wrote: On Mon, Apr 13, 2020 at 12:55 PM Alexander Kanavin <alex.kanavin@...> wrote:
On Mon, 13 Apr 2020 at 12:46, Nicolas Dechesne < nicolas.dechesne@...> wrote:
A good rule of thumb is to never modify a metadata that is not yours. That applies to everything: * if you need to modify a bb file from a 3rd party library, create a bbappend file in your layer * if you need to modify a bbappend from a 3rd party, then create another bbappend in your layer
And by 3rd party i mean any layer/tree which is not yours (OE-core, or any other layer your are using).
I beg to differ! Bbappends are making it difficult to reason about what the recipe with all its appends is doing (because they destroy spatial locality and aren't easily visible), and I would actually discourage using them if the modification can go to the original recipe.
Ok.. you're right. Well at least my answer is not complete ;)
Is it fixing a problem? Is it adding a build option absent from the original recipe? Then please take the trouble to submit the change to the owners of the recipe.
This is correct. We should encourage everyone to report, and even better propose a fix, to the relevant layer, when the 'problem' is applicable. I didn't want to discourage that, for sure! When developing against master, it's a no brainer. When developing against a stable branch (like probably many users), it's not as obvious. In that case I think trying to avoid 'touching' somebody else layer remains a good advice, since it makes upgrades and maintenance trickier.
Similarly, if a bbappend is re-setting the component version to something else (yes, people do that despite my best efforts to prohibit the practice), then a much cleaner approach is to actually make a fully copy of the recipe, or go and fix the original.
I just ran across a bbappend that change configure options, but looking at the original recipe, there is a PACKAGECONFIG option to do the same thing. So they could have used that mechanism instram of the bbappend. Philip Recipes version upgrades (or downgrade) should be done in a dedicated layer owned by the 'developer', and in that case, I agree that bbappend should be prohibited, and the entire recipe should be copied.
Alex
|
|
Re: Files get sporadically lost for native packages
Adding Michael (lack of confirmtation email from bugzilla).
Alex
toggle quoted messageShow quoted text
On Mon, 13 Apr 2020 at 19:59, Konrad Weihmann < kweihmann@...> wrote: Hi Randy,
I'm trying all day to create an account at bugzilla to file the issue,
but somehow I don't get any confirmation mail (although I tried several
mail accounts today, and no it didn't got stuck in spam;-)) - guess
that's not how it is supposed to be, right :-)? - I don't know where to
address such a problem, so take this reply as FYI.
Best
Konrad
On 03.04.20 21:28, Randy MacLeod wrote:
> On 2020-04-02 4:44 a.m., Konrad Weihmann wrote:
>>
>> To answer your others questions... see below
>>
>> On 02.04.20 05:42, Randy MacLeod wrote:
>>> On 2020-03-28 8:26 a.m., Konrad Weihmann wrote:
>>>> Hi,
>>>>
>>>> I'm facing the following error message sporadically on all branches
>>>> I tried so far (master, zeus, warrior and thud)
>>>>
>>>> The stack trace of python calls that resulted in this
>>>> exception/failure was:
>>>> File: 'exec_python_func() autogenerated', lineno: 2, function: <module>
>>>> 0001:
>>>> *** 0002:extend_recipe_sysroot(d)
>>>> 0003:
>>>> File: '/build/poky/meta/classes/staging.bbclass', lineno: 551,
>>>> function: extend_recipe_sysroot
>>>> 0547: dest = newmanifest[l]
>>>> 0548: if l.endswith("/"):
>>>> 0549: staging_copydir(l, targetdir,
>>>> dest, seendirs)
>>>> 0550: continue
>>>> *** 0551: staging_copyfile(l, targetdir, dest,
>>>> postinsts, seendirs)
>>>> 0552:
>>>> 0553: bb.note("Installed into sysroot: %s" % str(msg_adding))
>>>> 0554: bb.note("Skipping as already exists in sysroot: %s" %
>>>> str(msg_exists))
>>>> 0555:
>>>> File: '/build/poky/meta/classes/staging.bbclass', lineno: 152,
>>>> function: staging_copyfile
>>>> 0148: os.symlink(linkto, dest)
>>>> 0149: #bb.warn(c)
>>>> 0150: else:
>>>> 0151: try:
>>>> *** 0152: os.link(c, dest)
>>>> 0153: except OSError as err:
>>>> 0154: if err.errno == errno.EXDEV:
>>>> 0155: bb.utils.copyfile(c, dest)
>>>> 0156: else:
>>>> Exception: FileNotFoundError: [Errno 2] No such file or directory:
>>>> '/build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/__pycache__/__init__.cpython-37.pyc'
>>>> ->
>>>> '/build/poky/build/tmp/work/qemux86_64-mine-linux/core-image-minimal-mine/1.0-r0/recipe-sysroot-native/usr/lib/python3.7/site-packages/msgcheck/__pycache__/__init__.cpython-37.pyc'
>>>>
>>>> I already had a look at the manifest
>>>>
>>>> cat manifest-x86_64-python3-msgcheck-native.populate_sysroot
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/__init__.py
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/po.py
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/msgcheck.py
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/__pycache__/__init__.cpython-37.pyc
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/__pycache__/po.cpython-37.pyc
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/__pycache__/msgcheck.cpython-37.pyc
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/dependency_links.txt
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/requires.txt
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/top_level.txt
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/SOURCES.txt
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/PKG-INFO
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/entry_points.txt
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/bin/msgcheck
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/sysroot-providers/python3-msgcheck-native
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/__pycache__/
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/sysroot-providers/
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/share/
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/bin/
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/
>>>>
>>>>
>>>> which states the file should be there, but when doing
>>>>
>>>> find
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/__init__.py
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/__pycache__
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/__pycache__/po.cpython-37.pyc
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/__pycache__/msgcheck.cpython-37.pyc
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/po.py
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/msgcheck.py
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/dependency_links.txt
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/requires.txt
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/top_level.txt
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/SOURCES.txt
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/PKG-INFO
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/entry_points.txt
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/bin
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/bin/msgcheck
>>>>
>>>> /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/share
>>>>
>>>>
>>>> the file isn't there.
>>>>
>>>> This happens to random python packages compiled as native (sometimes
>>>> even for python-native itself), but (afaik) not for cross or target
>>>> packages (I'm pretty sure because of the different packaging applied).
>>>> So I digged a little into the code
>>>> classes/sstate.bbclass:sstate_install, which seems to create the
>>>> sysroot-component dir and the manifest.
>>>> There is a gap between the manifest creation (line 285) and the
>>>> hardlinking (line till 311).
>>>>
>>>> Now my question is there any place where a file potentially could
>>>> get lost? - at first glance there shouldn't be one - I have to admit
>>>> that I don't fully understand all this subprocess magic in
>>>> lib/oe/path.py:copyhardlinktree.
>>>> What I do to fix the issue is reopening the manifest and double
>>>> check for missing files and remove them from the manifest, but this
>>>> feels wrong - so any advise is welcome...
>>>>
>>>> Hope that someone more familiar with the topic could have a look.
>>>
>>> Hi Konrad,
>>>
>>> I'm not really familiar with that code but it's being run buy 1000s of
>>> builder around the world so let's try to eliminate a few possibilities.
>>>
>>> When did you start having this problem?
>> Since the start of the test distribution I'm working on. But also for
>> plain poky builds if I forcefully inject all of the python-native
>> site-packages via local.conf (DEPENDS_class-native += "..."), without
>> actually using them in the recipe scope
>>> How often do you think it's happening: 1 in 3 builds, 1 in 10?
>> See the other mail - looks like it heavily depends on the host
>>> Tell us about your machine: OS,version, disk, CPUs, ram
>> See the other mail
>>> Do you do anything special in your conf dir? Send local.conf perhaps.
>> No custom modification (just for testing the DEPENDS-injection)
>>> Do you have any local bbappends or commits on top of poky or
>>> in other layers?
>> No
>>> Have you tried to simplify the build to eliminate problems
>>> potentially caused by other layers?
>> I did - see above
>>> Are you able to reproduce the problem on more than one build machine?
>> See the other mail
>>> Are you able to reproduce the problem on a different Linux distro?
>> Not really - Debian 9 was fine all other Hosts are Ubuntu based
>>> Are there other builds or users on the machine that may be causing
>>> extra load?
>> No the hosts are just being poorly equipped - at least the ones that
>> produce this issue
>
>
> Hi Konrad,
>
> Thanks for the detailed and complete replies.
>
> I don't think I've seen this error and we do 100s of builds
> per day using local many-core systems running Ubuntu-18.04
> but with the builds in docker containers using a variety of
> OS distributions.
>
> My first *wild* guess is that the problem might go away on the Azure
> systems if you allocate more memory. That might be an easy
> test to do so that we can confirm that it happens more frequently
> when there is a memory constraint. Can you do that test?
>
> I've also BCCed someone who might know someone who
> would be interested in fixing Azure + Yocto bugs. Let's see
> if they can help. :)
>
> It would also be helpful if you created a defect in:
>
> https://bugzilla.yoctoproject.org/
>
> and hopefully add a patch in that defect including the -native recipes that
> are required to make the problem happen.
>
> Thanks,
>
> ../Randy
>
>
>>>
>>>
>>> ../Randy
>>>
>>>>
>>>> Thanks
>>>>
>>>> Konrad
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>
>>
>
>
> --
> # Randy MacLeod
> # Wind River Linux
>
|
|
Re: Files get sporadically lost for native packages
Konrad Weihmann <kweihmann@...>
Hi Randy,
I'm trying all day to create an account at bugzilla to file the issue, but somehow I don't get any confirmation mail (although I tried several mail accounts today, and no it didn't got stuck in spam;-)) - guess that's not how it is supposed to be, right :-)? - I don't know where to address such a problem, so take this reply as FYI.
Best Konrad
toggle quoted messageShow quoted text
On 03.04.20 21:28, Randy MacLeod wrote: On 2020-04-02 4:44 a.m., Konrad Weihmann wrote:
To answer your others questions... see below
On 02.04.20 05:42, Randy MacLeod wrote:
On 2020-03-28 8:26 a.m., Konrad Weihmann wrote:
Hi,
I'm facing the following error message sporadically on all branches I tried so far (master, zeus, warrior and thud)
The stack trace of python calls that resulted in this exception/failure was: File: 'exec_python_func() autogenerated', lineno: 2, function: <module> 0001: *** 0002:extend_recipe_sysroot(d) 0003: File: '/build/poky/meta/classes/staging.bbclass', lineno: 551, function: extend_recipe_sysroot 0547: dest = newmanifest[l] 0548: if l.endswith("/"): 0549: staging_copydir(l, targetdir, dest, seendirs) 0550: continue *** 0551: staging_copyfile(l, targetdir, dest, postinsts, seendirs) 0552: 0553: bb.note("Installed into sysroot: %s" % str(msg_adding)) 0554: bb.note("Skipping as already exists in sysroot: %s" % str(msg_exists)) 0555: File: '/build/poky/meta/classes/staging.bbclass', lineno: 152, function: staging_copyfile 0148: os.symlink(linkto, dest) 0149: #bb.warn(c) 0150: else: 0151: try: *** 0152: os.link(c, dest) 0153: except OSError as err: 0154: if err.errno == errno.EXDEV: 0155: bb.utils.copyfile(c, dest) 0156: else: Exception: FileNotFoundError: [Errno 2] No such file or directory: '/build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/__pycache__/__init__.cpython-37.pyc' -> '/build/poky/build/tmp/work/qemux86_64-mine-linux/core-image-minimal-mine/1.0-r0/recipe-sysroot-native/usr/lib/python3.7/site-packages/msgcheck/__pycache__/__init__.cpython-37.pyc'
I already had a look at the manifest
cat manifest-x86_64-python3-msgcheck-native.populate_sysroot /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/__init__.py /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/po.py /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/msgcheck.py /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/__pycache__/__init__.cpython-37.pyc /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/__pycache__/po.cpython-37.pyc /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/__pycache__/msgcheck.cpython-37.pyc /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/dependency_links.txt /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/requires.txt /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/top_level.txt /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/SOURCES.txt /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/PKG-INFO /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/entry_points.txt /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/bin/msgcheck /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/sysroot-providers/python3-msgcheck-native /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/ /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/__pycache__/ /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/ /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/ /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/ /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/sysroot-providers/ /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/share/ /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/bin/ /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/ /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/
which states the file should be there, but when doing
find /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/ /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/ /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7 /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/__init__.py /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/__pycache__ /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/__pycache__/po.cpython-37.pyc /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/__pycache__/msgcheck.cpython-37.pyc /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/po.py /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck/msgcheck.py /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/dependency_links.txt /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/requires.txt /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/top_level.txt /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/SOURCES.txt /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/PKG-INFO /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/lib/python3.7/site-packages/msgcheck-2.8-py3.7.egg-info/entry_points.txt /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/bin /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/bin/msgcheck /build/poky/build/tmp/sysroots-components/x86_64/python3-msgcheck-native/usr/share
the file isn't there.
This happens to random python packages compiled as native (sometimes even for python-native itself), but (afaik) not for cross or target packages (I'm pretty sure because of the different packaging applied). So I digged a little into the code classes/sstate.bbclass:sstate_install, which seems to create the sysroot-component dir and the manifest. There is a gap between the manifest creation (line 285) and the hardlinking (line till 311).
Now my question is there any place where a file potentially could get lost? - at first glance there shouldn't be one - I have to admit that I don't fully understand all this subprocess magic in lib/oe/path.py:copyhardlinktree. What I do to fix the issue is reopening the manifest and double check for missing files and remove them from the manifest, but this feels wrong - so any advise is welcome...
Hope that someone more familiar with the topic could have a look. Hi Konrad,
I'm not really familiar with that code but it's being run buy 1000s of builder around the world so let's try to eliminate a few possibilities.
When did you start having this problem? Since the start of the test distribution I'm working on. But also for plain poky builds if I forcefully inject all of the python-native site-packages via local.conf (DEPENDS_class-native += "..."), without actually using them in the recipe scope
How often do you think it's happening: 1 in 3 builds, 1 in 10? See the other mail - looks like it heavily depends on the host
Tell us about your machine: OS,version, disk, CPUs, ram See the other mail
Do you do anything special in your conf dir? Send local.conf perhaps. No custom modification (just for testing the DEPENDS-injection)
Do you have any local bbappends or commits on top of poky or in other layers? No
Have you tried to simplify the build to eliminate problems potentially caused by other layers? I did - see above
Are you able to reproduce the problem on more than one build machine? See the other mail
Are you able to reproduce the problem on a different Linux distro? Not really - Debian 9 was fine all other Hosts are Ubuntu based
Are there other builds or users on the machine that may be causing extra load? No the hosts are just being poorly equipped - at least the ones that produce this issue Hi Konrad, Thanks for the detailed and complete replies. I don't think I've seen this error and we do 100s of builds per day using local many-core systems running Ubuntu-18.04 but with the builds in docker containers using a variety of OS distributions. My first *wild* guess is that the problem might go away on the Azure systems if you allocate more memory. That might be an easy test to do so that we can confirm that it happens more frequently when there is a memory constraint. Can you do that test? I've also BCCed someone who might know someone who would be interested in fixing Azure + Yocto bugs. Let's see if they can help. :) It would also be helpful if you created a defect in: https://bugzilla.yoctoproject.org/ and hopefully add a patch in that defect including the -native recipes that are required to make the problem happen. Thanks, ../Randy
../Randy
Thanks
Konrad
-- # Randy MacLeod # Wind River Linux
|
|

Randy MacLeod
On 2020-04-04 12:27 p.m., Ajam Ali
wrote:
Hi All,
Thanks for your suggestions. I am working on your suggestions.
I will let you know if it did not work for me.
Ajam,
It would be useful if you could reply either way.
If there's still a problem then perhaps someone can help.
If you are able to resolve the issue, then a brief summary
of what you did could help the next person who has a similar
issue.
Thanks,
../Randy
Regards,
Ajam Ali
[CAUTION: This Email is from outside
the Organization. Do not click links or open attachments
unless you trust the sender.]
Op 29-03-2020 om 18:28 schreef Ajam Ali:
> Hi All,
>
> Actually my current image size is 3.9GB because of
heavy size packages
> required by my project and without project required
packages my image
> size in Yocto is 800MB.
So your project adds 3.1GB right
> I want to reduce the image size as maximum as
possible.
3.1GB is huge. Compare to f.i. Libreoffice (installed
0.5GB or so).
Either your own code has a lot of fat, or you are pulling
in lots of
packages you don't really need. But is there no way to
advise you
without knowing more.
> Please suggest the best possible way so that I could
reduce the maximum
> possible size(desirable below 1.5 GB).
>
>
> Thanks in advance,
> Ajam Ali
>
>
> Sent from Outlook Mobile < https://apc01.safelinks.protection.outlook.com/?url=https%3A%2F%2Faka.ms%2Fblhgte&data=02%7C01%7Cajama%40hcl.com%7Cf719cb14fe674f86f02408d7d8b236b0%7C189de737c93a4f5a8b686f4ca9941912%7C0%7C0%7C637216132261322392&sdata=8in2t%2B6mXtrsRwa7GmgGQDl69uRzL7g4smj%2Ba3QG9gU%3D&reserved=0>
> ::DISCLAIMER::
>
------------------------------------------------------------------------
> The contents of this e-mail and any attachment(s) are
confidential and
> intended for the named recipient(s) only. E-mail
transmission is not
> guaranteed to be secure or error-free as information
could be
> intercepted, corrupted, lost, destroyed, arrive late
or incomplete, or
> may contain viruses in transmission. The e mail and
its contents (with
> or without referred errors) shall therefore not
attach any liability on
> the originator or HCL or its affiliates. Views or
opinions, if any,
> presented in this email are solely those of the
author and may not
> necessarily reflect the views or opinions of HCL or
its affiliates. Any
> form of reproduction, dissemination, copying,
disclosure, modification,
> distribution and / or publication of this message
without the prior
> written consent of authorized representative of HCL
is strictly
> prohibited. If you have received this email in error
please delete it
> and notify the sender immediately. Before opening any
email and/or
> attachments, please check them for viruses and other
defects.
>
------------------------------------------------------------------------
>
>
>
--
# Randy MacLeod
# Wind River Linux
|
|
M+ & H bugs with Milestone Movements WW15
All,
YP M+ or high bugs which moved to a new milestone in WW15 are listed below: Priority | Bug ID | Short Description | Changer | Owner | Was | Became | High | 13604 | [master-next] Distrodata.test_maintainers fails | randy.macleod@... | kai.kang@... | 3.1 M4 | 3.2 M1 | | 13802 | ltp tests fail with ssh connection lost error intermittently | randy.macleod@... | yang.wang@... | 3.1 M4 | 3.2 M1 | Medium+ | 12090 | bitbake resident server reconnect needed ? | richard.purdie@... | richard.purdie@... | 3.99 | 3.2 M1 | | 12367 | moving or removing tmp breaks persistent bitbake server | richard.purdie@... | richard.purdie@... | 3.99 | 3.2 M1 | | 12368 | persistent bitbake server does not re-parse if previous build was ctrl+C'd | richard.purdie@... | richard.purdie@... | 3.99 | 3.2 M1 |
Thanks, Stephen K. Jolley Yocto Project Program Manager ( Cell: (208) 244-4460 * Email: sjolley.yp.pm@...
|
|
Enhancements/Bugs closed WW15!
All,
The below were the owners of enhancements or bugs closed during the last week! Who | Count | randy.macleod@... | 7 | richard.purdie@... | 5 | timothy.t.orling@... | 2 | akuster@... | 2 | ee.peng.yeoh@... | 1 | changqing.li@... | 1 | michael@... | 1 | jpuhlman@... | 1 | david.reyna@... | 1 | Grand Total | 21 |
Thanks, Stephen K. Jolley Yocto Project Program Manager ( Cell: (208) 244-4460 * Email: sjolley.yp.pm@...
|
|
Current Top developers on Yocto Project 3.1
All,
Below is the list as of top 43 developers as of the end of WW15 of who have open medium or higher bugs and enhancements against YP 3.1. There are 13 possible work days left until the final release candidates for YP 3.1 needs to be released. Who | Count | richard.purdie@... | 36 | liezhi.yang@... | 27 | david.reyna@... | 21 | akuster808@... | 16 | bluelightning@... | 13 | bruce.ashfield@... | 11 | mark.morton@... | 11 | kai.kang@... | 10 | randy.macleod@... | 10 | Qi.Chen@... | 10 | ross@... | 7 | timothy.t.orling@... | 7 | trevor.gamblin@... | 6 | michael@... | 6 | pbarker@... | 5 | JPEWhacker@... | 5 | changqing.li@... | 5 | jon.mason@... | 5 | alejandro@... | 4 | kexin.hao@... | 4 | alex.kanavin@... | 4 | mingli.yu@... | 4 | matthew.zeng@... | 3 | hongxu.jia@... | 3 | mark.hatle@... | 2 | kergoth@... | 2 | mostthingsweb@... | 2 | jaewon@... | 2 | jpuhlman@... | 2 | yang.wang@... | 2 | ycnakajsph@... | 2 | raj.khem@... | 2 | seebs@... | 2 | limon.anibal@... | 2 | rpjday@... | 2 | amber.n.elliot@... | 1 | naveen.kumar.saini@... | 1 | anuj.mittal@... | 1 | denis@... | 1 | ee.peng.yeoh@... | 1 | mshah@... | 1 | apoorv.sangal@... | 1 | kai.ruhnau@... | 1 | scott.branden@... | 1 | yi.zhao@... | 1 | dl9pf@... | 1 | jonathan.yong@... | 1 | Martin.Jansa@... | 1 | maxime.roussinbelanger@... | 1 |
Thanks, Stephen K. Jolley Yocto Project Program Manager ( Cell: (208) 244-4460 * Email: sjolley.yp.pm@...
|
|
Yocto Project Newcomer & Unassigned Bugs - Help Needed
All, The triage team is starting to try and collect up and classify bugs which a newcomer to the project would be able to work on in a way which means people can find them. They're being listed on the triage page under the appropriate heading: https://wiki.yoctoproject.org/wiki/Bug_Triage#Newcomer_Bugs The idea is these bugs should be straight forward for a person to help work on who doesn't have deep experience with the project. If anyone can help, please take ownership of the bug and send patches! If anyone needs help/advice there are people on irc who can likely do so, or some of the more experienced contributors will likely be happy to help too. Also, the triage team meets weekly and does its best to handle the bugs reported into the Bugzilla. The number of people attending that meeting has fallen, as have the number of people available to help fix bugs. One of the things we hear users report is they don't know how to help. We (the triage team) are therefore going to start reporting out the currently 309 unassigned or newcomer bugs. We're hoping people may be able to spare some time now and again to help out with these. Bugs are split into two types, "true bugs" where things don't work as they should and "enhancements" which are features we'd want to add to the system. There are also roughly four different "priority" classes right now, “3.1”, “3.2, "3.99" and "Future", the more pressing/urgent issues being in "3.1" and then “3.2”. Please review this link and if a bug is something you would be able to help with either take ownership of the bug, or send me (sjolley.yp.pm@...) an e-mail with the bug number you would like and I will assign it to you (please make sure you have a Bugzilla account). The list is at: https://wiki.yoctoproject.org/wiki/Bug_Triage_Archive#Unassigned_or_Newcomer_Bugs Thanks, Stephen K. Jolley Yocto Project Program Manager ( Cell: (208) 244-4460 * Email: sjolley.yp.pm@...
|
|
Re: What is the recommended method to patch a recipe?

Nicolas Dechesne
A good rule of thumb is to never modify a metadata that is not yours. That applies to everything: * if you need to modify a bb file from a 3rd party library, create a bbappend file in your layer * if you need to modify a bbappend from a 3rd party, then create another bbappend in your layer
And by 3rd party i mean any layer/tree which is not yours (OE-core, or any other layer your are using).
I beg to differ! Bbappends are making it difficult to reason about what the recipe with all its appends is doing (because they destroy spatial locality and aren't easily visible), and I would actually discourage using them if the modification can go to the original recipe.
Ok.. you're right. Well at least my answer is not complete ;)
Is it fixing a problem? Is it adding a build option absent from the original recipe? Then please take the trouble to submit the change to the owners of the recipe.
This is correct. We should encourage everyone to report, and even better propose a fix, to the relevant layer, when the 'problem' is applicable. I didn't want to discourage that, for sure! When developing against master, it's a no brainer. When developing against a stable branch (like probably many users), it's not as obvious. In that case I think trying to avoid 'touching' somebody else layer remains a good advice, since it makes upgrades and maintenance trickier.
Similarly, if a bbappend is re-setting the component version to something else (yes, people do that despite my best efforts to prohibit the practice), then a much cleaner approach is to actually make a fully copy of the recipe, or go and fix the original.
Recipes version upgrades (or downgrade) should be done in a dedicated layer owned by the 'developer', and in that case, I agree that bbappend should be prohibited, and the entire recipe should be copied.
|
|
Re: What is the recommended method to patch a recipe?
A good rule of thumb is to never modify a metadata that is not yours. That applies to everything: * if you need to modify a bb file from a 3rd party library, create a bbappend file in your layer * if you need to modify a bbappend from a 3rd party, then create another bbappend in your layer
And by 3rd party i mean any layer/tree which is not yours (OE-core, or any other layer your are using).
I beg to differ! Bbappends are making it difficult to reason about what the recipe with all its appends is doing (because they destroy spatial locality and aren't easily visible), and I would actually discourage using them if the modification can go to the original recipe.
Is it fixing a problem? Is it adding a build option absent from the original recipe? Then please take the trouble to submit the change to the owners of the recipe.
Similarly, if a bbappend is re-setting the component version to something else (yes, people do that despite my best efforts to prohibit the practice), then a much cleaner approach is to actually make a fully copy of the recipe, or go and fix the original.
Alex
|
|
Re: What is the recommended method to patch a recipe?

Nicolas Dechesne
On Mon, Apr 13, 2020 at 10:20 AM nus1998 < nus1998@...> wrote: Hi All,
I googled some topics on how to patch a recipe, most of them recommend to generate a corresponding <foo>.bbappend to apply the patch, I wonder if there is already a bbappend file, shall I modify the bbappend file directly, or create another layer to overwrite the bbappend file (and including the patchs in original bbappend file)?
A good rule of thumb is to never modify a metadata that is not yours. That applies to everything: * if you need to modify a bb file from a 3rd party library, create a bbappend file in your layer * if you need to modify a bbappend from a 3rd party, then create another bbappend in your layer
And by 3rd party i mean any layer/tree which is not yours (OE-core, or any other layer your are using).
|
|
Re: What is the recommended method to patch a recipe?
As with a lot of things, I’m sure it all depends on the scope of the change. Personally, if I ‘own’ the original bbappend, then I consider if it’s worth establishing an override or some other similar mechanism within that bbappend, depending on what I’m developing (an image feature or something machine-specific). If it’s a one-off for a specific build that I can lump together with other changes, then I go with a new layer specific those changes.
One thing to keep in mind is that if you create your own layer with a bbappend ,then layer priority will impact which portions of your bbappend overwrite the others and the original recipe. You can use bitbake -e package-name to get a view of how bitbake is overlaying all changes for it.
Cheers,
Thomas
toggle quoted messageShow quoted text
On Apr 13, 2020, 4:20 AM -0400, nus1998 <nus1998@...>, wrote:
Hi All,
I googled some topics on how to patch a recipe, most of them recommend to generate a corresponding <foo>.bbappend to apply the patch, I wonder if there is already a bbappend file, shall I modify the bbappend file directly, or create another layer to overwrite the bbappend file (and including the patchs in original bbappend file)?
Thanks in advance
Nus
|
|
What is the recommended method to patch a recipe?
Hi All,
I googled some topics on how to patch a recipe, most of them recommend to generate a corresponding <foo>.bbappend to apply the patch, I wonder if there is already a bbappend file, shall I modify the bbappend file directly, or create another layer to overwrite the bbappend file (and including the patchs in original bbappend file)?
Thanks in advance Nus
|
|
Re: QA notification for completed autobuilder build (yocto-3.1.rc2)
toggle quoted messageShow quoted text
-----Original Message----- From: Richard Purdie <richard.purdie@...> Sent: Wednesday, 8 April, 2020 9:21 PM To: pokybuild@...; yocto@... Cc: otavio@...; yi.zhao@...; Sangal, Apoorv <apoorv.sangal@...>; Yeoh, Ee Peng <ee.peng.yeoh@...>; Chan, Aaron Chun Yew <aaron.chun.yew.chan@...>; akuster808@...; sjolley.yp.pm@...; Jain, Sangeeta <sangeeta.jain@...> Subject: Re: QA notification for completed autobuilder build (yocto-3.1.rc2)
On Wed, 2020-04-08 at 04:01 +0000, pokybuild@... wrote:
A build flagged for QA (yocto-3.1.rc2) was completed on the autobuilder and is available at:
https://autobuilder.yocto.io/pub/releases/yocto-3.1.rc2
Build hash information:
bitbake: 4618da2094189e4d814b7d65672cb65c86c0626a meta-gplv2: 60b251c25ba87e946a0ca4cdc8d17b1cb09292ac meta-intel: bd539ea962ee285eb71053583e3c17fa166fc610 meta-mingw: 524de686205b5d6736661d4532f5f98fee8589b7 oecore: 1795f30d8ab73d35710ca99064c51190dc84853e poky: 5d47cdf448b6cff5bb7cc5b0ba0426b8235ec478
There were two failures in this build due to collect-results failing. I fixed the missing dependency on that autobuilder worker (there was already an open bug but it wasn't fixed yet) and reran the collections scripts so the results were added and handled.
Cheers,
Richard
|
|
Re: meta-intel: Override SERIAL_CONSOLES variable
Could you send a patch please?
Thanks,
Anuj
toggle quoted messageShow quoted text
-----Original Message----- From: yocto@... <yocto@...> On Behalf Of Leon Woestenberg Sent: Saturday, April 11, 2020 04:48 AM To: Marek Belisko <marek.belisko@...> Cc: yocto <yocto@...> Subject: Re: [yocto] meta-intel: Override SERIAL_CONSOLES variable
Hi all,
On Fri, Apr 10, 2020 at 8:56 AM Marek Belisko <marek.belisko@...> wrote:
Hi,
in meta-intel in machine configuration SERIAL_CONSOLES are defined as : SERIAL_CONSOLES = "115200;ttyS0 115200;ttyS1 115200;ttyS2"
For a more generic solution, could this be made a weak assignment?
I am on a SMARC x86-64 module which only one serial is useful, so I would like to downtune this variable as well.
Regards,
Leon.
|
|
[PATCHv1][ptest-runner 2/2] Add support to specify multiple folder for ptest-runner
Enables multiple folders in -d option the current use case is to be able specify multilib folders in the same run.
The -d option allows directories without whitespaces inside, example to run after compile:
$ ./ptest-runner -d "test/data tests/data2/"
[YOCTO #12604]
Signed-off-by: Aníbal Limón <anibal.limon@...> --- main.c | 91 ++++++++++++++++++++++----------- ptest_list.c | 17 ++++++ ptest_list.h | 1 + tests/data2/go/ptest/run-ptest | 3 ++ tests/data2/lua/ptest/run-ptest | 3 ++ utils.h | 4 +- 6 files changed, 87 insertions(+), 32 deletions(-) create mode 100755 tests/data2/go/ptest/run-ptest create mode 100755 tests/data2/lua/ptest/run-ptest
diff --git a/main.c b/main.c index 01d60f7..e3a1b69 100644 --- a/main.c +++ b/main.c @@ -47,10 +47,43 @@ static inline void print_usage(FILE *stream, char *progname) { - fprintf(stream, "Usage: %s [-d directory] [-e exclude] [-l list] [-t timeout]" + fprintf(stream, "Usage: %s [-d directory directory2 ...] [-e exclude] [-l list] [-t timeout]" " [-x xml-filename] [-h] [ptest1 ptest2 ...]\n", progname); } +static char ** +str2array(char *str, const char *delim, int *num) +{ + char *c, *tok; + char **array; + int i; + + c = str; + *num = 1; + while (*c) { + if (isspace(*c)) + (*num)++; + c++; + } + + + array = malloc((size_t)*num * sizeof(char**)); + CHECK_ALLOCATION(array, 1, 1); + + i = 0; + tok = strtok_r(str, delim, &c); + array[i] = strdup(tok); + CHECK_ALLOCATION(array[i], 1, 1); + i++; + while ((tok = strtok_r(NULL, " ", &c)) != NULL) { + array[i] = strdup(tok); + CHECK_ALLOCATION(array[i], 1, 1); + i++; + } + + return array; +} + int main(int argc, char *argv[]) { @@ -59,7 +92,6 @@ main(int argc, char *argv[]) int i; int rc; int ptest_exclude_num = 0; - char *c, *tok; #ifdef MEMCHECK mtrace(); @@ -68,7 +100,11 @@ main(int argc, char *argv[]) struct ptest_list *head, *run; struct ptest_options opts; - opts.directory = strdup(DEFAULT_DIRECTORY); + opts.dirs = malloc(sizeof(char **) * 1); + CHECK_ALLOCATION(opts.dirs, 1, 1); + opts.dirs[0] = strdup(DEFAULT_DIRECTORY); + CHECK_ALLOCATION(opts.dirs[0], 1, 1); + opts.dirs_no = 1; opts.exclude = NULL; opts.list = 0; opts.timeout = DEFAULT_TIMEOUT; @@ -78,34 +114,12 @@ main(int argc, char *argv[]) while ((opt = getopt(argc, argv, "d:e:lt:x:h")) != -1) { switch (opt) { case 'd': - free(opts.directory); - opts.directory = realpath(optarg, NULL); - CHECK_ALLOCATION(opts.directory, 1, 1); + free(opts.dirs[0]); + free(opts.dirs); + opts.dirs = str2array(optarg, " ", &(opts.dirs_no)); break; case 'e': - c = optarg; - ptest_exclude_num = 1; - - while (*c) { - if (isspace(*c)) - ptest_exclude_num++; - c++; - } - - - opts.exclude = malloc((size_t)ptest_exclude_num * sizeof(char)); - CHECK_ALLOCATION(opts.exclude, 1, 1); - - i = 0; - tok = strtok_r(optarg, " ", &c); - opts.exclude[i] = strdup(tok); - CHECK_ALLOCATION(opts.exclude[i], 1, 1); - i++; - while ((tok = strtok_r(NULL, " ", &c)) != NULL) { - opts.exclude[i] = strdup(tok); - CHECK_ALLOCATION(opts.exclude[i], 1, 1); - i++; - } + opts.exclude = str2array(optarg, " ", &ptest_exclude_num); break; case 'l': opts.list = 1; @@ -140,10 +154,25 @@ main(int argc, char *argv[]) } } - head = get_available_ptests(opts.directory); + head = NULL; + for (i = 0; i < opts.dirs_no; i ++) { + struct ptest_list *tmp; + + tmp = get_available_ptests(opts.dirs[i]); + if (tmp == NULL) { + fprintf(stderr, PRINT_PTESTS_NOT_FOUND_DIR, opts.dirs[i]); + continue; + } + + + if (head == NULL) + head = tmp; + else + head = ptest_list_extend(head, tmp); + } if (head == NULL || ptest_list_length(head) == 0) { fprintf(stderr, PRINT_PTESTS_NOT_FOUND); - return 1; + return 1; } if (opts.list) { diff --git a/ptest_list.c b/ptest_list.c index a5632f8..917ef4f 100644 --- a/ptest_list.c +++ b/ptest_list.c @@ -216,3 +216,20 @@ ptest_list_remove(struct ptest_list *head, char *ptest, int free) return p; } + +struct ptest_list * +ptest_list_extend(struct ptest_list *head, struct ptest_list *extend) +{ + struct ptest_list *p, *q; + + VALIDATE_PTR_RNULL(head); + VALIDATE_PTR_RNULL(extend); + + for (p = head; p->next != NULL; p = p->next); + q = extend->next; + p->next = q; + + free(extend); + + return head; +} diff --git a/ptest_list.h b/ptest_list.h index e1caffc..02a64bb 100644 --- a/ptest_list.h +++ b/ptest_list.h @@ -64,5 +64,6 @@ extern struct ptest_list *ptest_list_search(struct ptest_list *, char *); extern struct ptest_list *ptest_list_search_by_file(struct ptest_list *, char *, struct stat); extern struct ptest_list *ptest_list_add(struct ptest_list *, char *, char *); extern struct ptest_list *ptest_list_remove(struct ptest_list *, char *, int); +extern struct ptest_list *ptest_list_extend(struct ptest_list *, struct ptest_list *); #endif // PTEST_RUNNER_LIST_H diff --git a/tests/data2/go/ptest/run-ptest b/tests/data2/go/ptest/run-ptest new file mode 100755 index 0000000..d8a9ca2 --- /dev/null +++ b/tests/data2/go/ptest/run-ptest @@ -0,0 +1,3 @@ +#!/bin/sh + +echo "go" diff --git a/tests/data2/lua/ptest/run-ptest b/tests/data2/lua/ptest/run-ptest new file mode 100755 index 0000000..07a7713 --- /dev/null +++ b/tests/data2/lua/ptest/run-ptest @@ -0,0 +1,3 @@ +#!/bin/sh + +echo "lua" diff --git a/utils.h b/utils.h index aa53707..39832e6 100644 --- a/utils.h +++ b/utils.h @@ -27,13 +27,15 @@ #include "ptest_list.h" #define PRINT_PTESTS_NOT_FOUND "No ptests found.\n" +#define PRINT_PTESTS_NOT_FOUND_DIR "Warning: ptests not found in, %s.\n" #define PRINT_PTESTS_AVAILABLE "Available ptests:\n" #define CHECK_ALLOCATION(p, size, exit_on_null) \ check_allocation1(p, size, __FILE__, __LINE__, exit_on_null) struct ptest_options { - char *directory; + char **dirs; + int dirs_no; char **exclude; int list; int timeout; -- 2.26.0
|
|