Date   

[meta-selinux][PATCH 02/16] selinux: upgrade inc files to 3.0 (20191204)

Yi Zhao
 

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

Anuj Mittal
 

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

Marek Belisko
 

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

Marek Belisko
 

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?

Philip Balister
 

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

Alexander Kanavin
 

Adding Michael (lack of confirmtation email from bugzilla).

Alex


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

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: Image size reduction

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



From: yocto@... <yocto@...> on behalf of Gmane Admin via lists.yoctoproject.org <gley-yocto=m.gmane-mx.org@...>
Sent: Saturday, April 4, 2020 9:36 PM
To: yocto@... <yocto@...>
Subject: Re: [yocto] Image size reduction
 
[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&amp;data=02%7C01%7Cajama%40hcl.com%7Cf719cb14fe674f86f02408d7d8b236b0%7C189de737c93a4f5a8b686f4ca9941912%7C0%7C0%7C637216132261322392&amp;sdata=8in2t%2B6mXtrsRwa7GmgGQDl69uRzL7g4smj%2Ba3QG9gU%3D&amp;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

Stephen Jolley
 

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!

Stephen Jolley
 

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

Stephen Jolley
 

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

Stephen Jolley
 

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
 



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.

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: What is the recommended method to patch a recipe?

Alexander Kanavin
 

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.

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).


Thanks in advance
Nus


Re: What is the recommended method to patch a recipe?

Thomas Goodwin
 

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

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?

nus1998 <nus1998@...>
 

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)

Sangeeta Jain
 

Hello all,

This is the full report for yocto-3.1.rc2:
https://git.yoctoproject.org/cgit/cgit.cgi/yocto-testresults-contrib/tree/?h=intel-yocto-testresults

======= Summary ========
No high milestone defects.
No new defects are found in this cycle.

Note: Few failures are observed. These are setup issue since running tests remotely, not real yocto issue.

Thanks,
Sangeeta

-----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

Anuj Mittal
 

Could you send a patch please?

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.


[PATCHv1][ptest-runner 2/2] Add support to specify multiple folder for ptest-runner

Anibal Limon
 

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

8261 - 8280 of 57387