All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/7] llvm: update 15.0.4 -> 15.0.6
@ 2022-12-24 16:59 Alexander Kanavin
  2022-12-24 16:59 ` [PATCH 2/7] tcmode-default.inc: set LLVMVERSION to a major version wildcard Alexander Kanavin
                   ` (5 more replies)
  0 siblings, 6 replies; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-24 16:59 UTC (permalink / raw)
  To: openembedded-core; +Cc: Alexander Kanavin

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
 meta/conf/distro/include/tcmode-default.inc | 2 +-
 meta/recipes-devtools/llvm/llvm_git.bb      | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/meta/conf/distro/include/tcmode-default.inc b/meta/conf/distro/include/tcmode-default.inc
index 6f9a68a900..dc1cac734f 100644
--- a/meta/conf/distro/include/tcmode-default.inc
+++ b/meta/conf/distro/include/tcmode-default.inc
@@ -26,7 +26,7 @@ QEMUVERSION ?= "7.1%"
 GOVERSION ?= "1.19%"
 # This can not use wildcards like 8.0.% since it is also used in mesa to denote
 # llvm version being used, so always bump it with llvm recipe version bump
-LLVMVERSION ?= "15.0.4"
+LLVMVERSION ?= "15.0.6"
 RUSTVERSION ?= "1.66%"
 
 PREFERRED_VERSION_gcc ?= "${GCCVERSION}"
diff --git a/meta/recipes-devtools/llvm/llvm_git.bb b/meta/recipes-devtools/llvm/llvm_git.bb
index 2d346b70cf..402460ee10 100644
--- a/meta/recipes-devtools/llvm/llvm_git.bb
+++ b/meta/recipes-devtools/llvm/llvm_git.bb
@@ -19,14 +19,14 @@ inherit cmake pkgconfig
 
 PROVIDES += "llvm${PV}"
 
-PV = "15.0.4"
+PV = "15.0.6"
 
 MAJOR_VERSION = "${@oe.utils.trim_version("${PV}", 1)}"
 
 LLVM_RELEASE = "${PV}"
 
 BRANCH = "release/${MAJOR_VERSION}.x"
-SRCREV = "5c68a1cb123161b54b72ce90e7975d95a8eaf2a4"
+SRCREV = "088f33605d8a61ff519c580a71b1dd57d16a03f8"
 SRC_URI = "git://github.com/llvm/llvm-project.git;branch=${BRANCH};protocol=https \
            file://0007-llvm-allow-env-override-of-exe-path.patch;striplevel=2 \
            file://0001-AsmMatcherEmitter-sort-ClassInfo-lists-by-name-as-we.patch;striplevel=2 \
-- 
2.30.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH 2/7] tcmode-default.inc: set LLVMVERSION to a major version wildcard
  2022-12-24 16:59 [PATCH 1/7] llvm: update 15.0.4 -> 15.0.6 Alexander Kanavin
@ 2022-12-24 16:59 ` Alexander Kanavin
  2022-12-24 16:59 ` [PATCH 3/7] cmake: update 3.24.2 -> 3.25.1 Alexander Kanavin
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-24 16:59 UTC (permalink / raw)
  To: openembedded-core; +Cc: Alexander Kanavin

There is no longer need to be specific: none of the recipes
using this variable in core need to know the particular version
of llvm exactly when using the default one set via PREFERRED_VERSION
from LLVMVERSION.

This as well enables automated version updates of llvm
for minor releases.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
 meta/classes-recipe/meson.bbclass           | 2 +-
 meta/conf/distro/include/tcmode-default.inc | 4 +---
 meta/recipes-graphics/mesa/mesa.inc         | 2 +-
 3 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/meta/classes-recipe/meson.bbclass b/meta/classes-recipe/meson.bbclass
index 3cc94c7584..48688bed75 100644
--- a/meta/classes-recipe/meson.bbclass
+++ b/meta/classes-recipe/meson.bbclass
@@ -72,7 +72,7 @@ strip = ${@meson_array('STRIP', d)}
 readelf = ${@meson_array('READELF', d)}
 objcopy = ${@meson_array('OBJCOPY', d)}
 pkgconfig = 'pkg-config'
-llvm-config = 'llvm-config${LLVMVERSION}'
+llvm-config = 'llvm-config'
 cups-config = 'cups-config'
 g-ir-scanner = '${STAGING_BINDIR}/g-ir-scanner-wrapper'
 g-ir-compiler = '${STAGING_BINDIR}/g-ir-compiler-wrapper'
diff --git a/meta/conf/distro/include/tcmode-default.inc b/meta/conf/distro/include/tcmode-default.inc
index dc1cac734f..c784221062 100644
--- a/meta/conf/distro/include/tcmode-default.inc
+++ b/meta/conf/distro/include/tcmode-default.inc
@@ -24,9 +24,7 @@ GLIBCVERSION ?= "2.36"
 LINUXLIBCVERSION ?= "5.19%"
 QEMUVERSION ?= "7.1%"
 GOVERSION ?= "1.19%"
-# This can not use wildcards like 8.0.% since it is also used in mesa to denote
-# llvm version being used, so always bump it with llvm recipe version bump
-LLVMVERSION ?= "15.0.6"
+LLVMVERSION ?= "15.%"
 RUSTVERSION ?= "1.66%"
 
 PREFERRED_VERSION_gcc ?= "${GCCVERSION}"
diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc
index 115621228a..93b3b59a91 100644
--- a/meta/recipes-graphics/mesa/mesa.inc
+++ b/meta/recipes-graphics/mesa/mesa.inc
@@ -58,7 +58,7 @@ ANY_OF_DISTRO_FEATURES:class-target = "opengl vulkan"
 
 PLATFORMS ??= "${@bb.utils.filter('PACKAGECONFIG', 'x11 wayland', d)}"
 
-MESA_LLVM_RELEASE ?= "${LLVMVERSION}"
+MESA_LLVM_RELEASE ?= ""
 
 # set the MESA_BUILD_TYPE to either 'release' (default) or 'debug'
 # by default the upstream mesa sources build a debug release
-- 
2.30.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH 3/7] cmake: update 3.24.2 -> 3.25.1
  2022-12-24 16:59 [PATCH 1/7] llvm: update 15.0.4 -> 15.0.6 Alexander Kanavin
  2022-12-24 16:59 ` [PATCH 2/7] tcmode-default.inc: set LLVMVERSION to a major version wildcard Alexander Kanavin
@ 2022-12-24 16:59 ` Alexander Kanavin
  2022-12-24 16:59 ` [PATCH 4/7] python3-native: further tweak to sysconfig.py to find python includes correctly Alexander Kanavin
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-24 16:59 UTC (permalink / raw)
  To: openembedded-core; +Cc: Alexander Kanavin

License-Update: additional contributors

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
 .../cmake/{cmake-native_3.24.2.bb => cmake-native_3.25.1.bb}  | 0
 meta/recipes-devtools/cmake/cmake.inc                         | 4 ++--
 ...CMakeDetermineSystem-use-oe-environment-vars-to-load.patch | 4 ++--
 .../cmake/{cmake_3.24.2.bb => cmake_3.25.1.bb}                | 0
 4 files changed, 4 insertions(+), 4 deletions(-)
 rename meta/recipes-devtools/cmake/{cmake-native_3.24.2.bb => cmake-native_3.25.1.bb} (100%)
 rename meta/recipes-devtools/cmake/{cmake_3.24.2.bb => cmake_3.25.1.bb} (100%)

diff --git a/meta/recipes-devtools/cmake/cmake-native_3.24.2.bb b/meta/recipes-devtools/cmake/cmake-native_3.25.1.bb
similarity index 100%
rename from meta/recipes-devtools/cmake/cmake-native_3.24.2.bb
rename to meta/recipes-devtools/cmake/cmake-native_3.25.1.bb
diff --git a/meta/recipes-devtools/cmake/cmake.inc b/meta/recipes-devtools/cmake/cmake.inc
index 7561e851c6..7da9a2fb55 100644
--- a/meta/recipes-devtools/cmake/cmake.inc
+++ b/meta/recipes-devtools/cmake/cmake.inc
@@ -10,7 +10,7 @@ HOMEPAGE = "http://www.cmake.org/"
 BUGTRACKER = "http://public.kitware.com/Bug/my_view_page.php"
 SECTION = "console/utils"
 LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://Copyright.txt;md5=45025187a129339459b6f1a24f7fac6e \
+LIC_FILES_CHKSUM = "file://Copyright.txt;md5=09069e0fffe4e5eaf6dde04c3b1932e5 \
                     file://Source/cmake.h;beginline=1;endline=2;md5=a5f70e1fef8614734eae0d62b4f5891b \
                     "
 
@@ -19,7 +19,7 @@ CMAKE_MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:2])}"
 SRC_URI = "https://cmake.org/files/v${CMAKE_MAJOR_VERSION}/cmake-${PV}.tar.gz \
 "
 
-SRC_URI[sha256sum] = "0d9020f06f3ddf17fb537dc228e1a56c927ee506b486f55fe2dc19f69bf0c8db"
+SRC_URI[sha256sum] = "1c511d09516af493694ed9baf13c55947a36389674d657a2d5e0ccedc6b291d8"
 
 UPSTREAM_CHECK_REGEX = "cmake-(?P<pver>\d+(\.\d+)+)\.tar"
 
diff --git a/meta/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch b/meta/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch
index 9a2287f517..451b6ebfad 100644
--- a/meta/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch
+++ b/meta/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch
@@ -1,4 +1,4 @@
-From 89f6c846f02ad6d30b9ebb7eaaaa4fb6f9cec054 Mon Sep 17 00:00:00 2001
+From 8e53dd7f6f534ad933e7e9c7fc20cc1a6cded3f4 Mon Sep 17 00:00:00 2001
 From: Cody P Schafer <dev@codyps.com>
 Date: Thu, 27 Apr 2017 11:35:05 -0400
 Subject: [PATCH] CMakeDetermineSystem: use oe environment vars to load default
@@ -25,7 +25,7 @@ Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
  1 file changed, 7 insertions(+)
 
 diff --git a/Modules/CMakeDetermineSystem.cmake b/Modules/CMakeDetermineSystem.cmake
-index 8c7af067..ade2b189 100644
+index 2c2c2ac3..fae4f97f 100644
 --- a/Modules/CMakeDetermineSystem.cmake
 +++ b/Modules/CMakeDetermineSystem.cmake
 @@ -112,6 +112,13 @@ else()
diff --git a/meta/recipes-devtools/cmake/cmake_3.24.2.bb b/meta/recipes-devtools/cmake/cmake_3.25.1.bb
similarity index 100%
rename from meta/recipes-devtools/cmake/cmake_3.24.2.bb
rename to meta/recipes-devtools/cmake/cmake_3.25.1.bb
-- 
2.30.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH 4/7] python3-native: further tweak to sysconfig.py to find python includes correctly
  2022-12-24 16:59 [PATCH 1/7] llvm: update 15.0.4 -> 15.0.6 Alexander Kanavin
  2022-12-24 16:59 ` [PATCH 2/7] tcmode-default.inc: set LLVMVERSION to a major version wildcard Alexander Kanavin
  2022-12-24 16:59 ` [PATCH 3/7] cmake: update 3.24.2 -> 3.25.1 Alexander Kanavin
@ 2022-12-24 16:59 ` Alexander Kanavin
  2022-12-27 18:41   ` [OE-core] " Khem Raj
  2022-12-24 16:59 ` [PATCH 5/7] devtool: process local files only for the main branch Alexander Kanavin
                   ` (2 subsequent siblings)
  5 siblings, 1 reply; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-24 16:59 UTC (permalink / raw)
  To: openembedded-core; +Cc: Alexander Kanavin

Without this, sysconfig would report the target location, which is not
what we want in cross-builds. This is used in particular by
latest autoconf-archive m4 macros, which have migrated from
(removed in py 3.12) distutils to setuptools.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
 ...py-use-prefix-value-from-build-configu.patch | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch b/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch
index 2f519e4917..5ca855e7ed 100644
--- a/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch
+++ b/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch
@@ -1,24 +1,23 @@
-From 05d676ddf675d9c8229b723e64717aa485d6809e Mon Sep 17 00:00:00 2001
+From 45548f40668d429adcb7532d35db1ac16fe74562 Mon Sep 17 00:00:00 2001
 From: Alexander Kanavin <alex@linutronix.de>
 Date: Fri, 10 Sep 2021 12:28:31 +0200
-Subject: [PATCH] Lib/sysconfig.py: use prefix value from build configuration
- file
+Subject: [PATCH] Lib/sysconfig.py: use values from build configuration file
 
-This allows correctly substituting them for target installs using
+This allows correctly substituting them for target builds using
 native python.
 
 Upstream-Status: Inappropriate [oe-core cross builds]
 Signed-off-by: Alexander Kanavin <alex@linutronix.de>
 
 ---
- Lib/sysconfig.py | 5 +++++
- 1 file changed, 5 insertions(+)
+ Lib/sysconfig.py | 7 +++++++
+ 1 file changed, 7 insertions(+)
 
 diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py
-index 93c6f73..ff399e2 100644
+index 93c6f73..a87870f 100644
 --- a/Lib/sysconfig.py
 +++ b/Lib/sysconfig.py
-@@ -668,6 +668,11 @@ def get_config_vars(*args):
+@@ -668,6 +668,13 @@ def get_config_vars(*args):
              _CONFIG_VARS['VPATH'] = sys._vpath
          if os.name == 'posix':
              _init_posix(_CONFIG_VARS)
@@ -27,6 +26,8 @@ index 93c6f73..ff399e2 100644
 +        _CONFIG_VARS['installed_platbase'] = _CONFIG_VARS['prefix']
 +        _CONFIG_VARS['platbase'] = _CONFIG_VARS['prefix']
 +        _CONFIG_VARS['platlibdir'] = _CONFIG_VARS['PLATLIBDIR']
++        _INSTALL_SCHEMES['posix_prefix']['include'] = _CONFIG_VARS['INCLUDEPY']
++        _INSTALL_SCHEMES['posix_prefix']['platinclude'] = _CONFIG_VARS['INCLUDEPY']
          if _HAS_USER_BASE:
              # Setting 'userbase' is done below the call to the
              # init function to enable using 'get_config_var' in
-- 
2.30.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH 5/7] devtool: process local files only for the main branch
  2022-12-24 16:59 [PATCH 1/7] llvm: update 15.0.4 -> 15.0.6 Alexander Kanavin
                   ` (2 preceding siblings ...)
  2022-12-24 16:59 ` [PATCH 4/7] python3-native: further tweak to sysconfig.py to find python includes correctly Alexander Kanavin
@ 2022-12-24 16:59 ` Alexander Kanavin
  2022-12-24 16:59 ` [PATCH 6/7] libslirp: add recipe to continue slirp support in qemu Alexander Kanavin
  2022-12-24 16:59 ` [PATCH 7/7] qemu: update 7.1.0 -> 7.2.0 Alexander Kanavin
  5 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-24 16:59 UTC (permalink / raw)
  To: openembedded-core; +Cc: Alexander Kanavin

devtool modify/upgrade are not currently equipped to handle conditional local files
in SRC_URI, and provide only the main no-override set in a workspace under
source/component/oe-local-files/ (this is done via meta/classes/devtool-source.bbclass).

On the other hand, updating the changes from workspace into a recipe
is run iteratively against all overrides; this works for patches (as they
all are directed into their own override branches in the workspace
git source tree), but breaks down when trying to match local files
in a workspace against local files in overridden SRC_URI lists, resulting in
bad recipe breakage.

Implementing multiple sets of local files is significant work; let's for now
simply not touch local files in recipes except when on the no-override variant.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
 scripts/lib/devtool/standard.py | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/scripts/lib/devtool/standard.py b/scripts/lib/devtool/standard.py
index f46ce34ad1..f3349f98e9 100644
--- a/scripts/lib/devtool/standard.py
+++ b/scripts/lib/devtool/standard.py
@@ -1409,6 +1409,18 @@ def _export_local_files(srctree, rd, destdir, srctreebase):
     updated = OrderedDict()
     added = OrderedDict()
     removed = OrderedDict()
+
+    # Get current branch and return early with empty lists
+    # if on one of the override branches
+    # (local files are provided only for the main branch and processing
+    # them against lists from recipe overrides will result in mismatches
+    # and broken modifications to recipes).
+    stdout, _ = bb.process.run('git rev-parse --abbrev-ref HEAD',
+                               cwd=srctree)
+    branchname = stdout.rstrip()
+    if branchname.startswith(override_branch_prefix):
+        return (updated, added, removed)
+
     local_files_dir = os.path.join(srctreebase, 'oe-local-files')
     git_files = _git_ls_tree(srctree)
     if 'oe-local-files' in git_files:
-- 
2.30.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH 6/7] libslirp: add recipe to continue slirp support in qemu
  2022-12-24 16:59 [PATCH 1/7] llvm: update 15.0.4 -> 15.0.6 Alexander Kanavin
                   ` (3 preceding siblings ...)
  2022-12-24 16:59 ` [PATCH 5/7] devtool: process local files only for the main branch Alexander Kanavin
@ 2022-12-24 16:59 ` Alexander Kanavin
  2022-12-28 13:42   ` [OE-core] " Richard Purdie
  2022-12-24 16:59 ` [PATCH 7/7] qemu: update 7.1.0 -> 7.2.0 Alexander Kanavin
  5 siblings, 1 reply; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-24 16:59 UTC (permalink / raw)
  To: openembedded-core; +Cc: Alexander Kanavin

qemu 7.2 no longer carries libslirp in-tree, and so
it has to be provided externally.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
 meta/conf/distro/include/maintainers.inc       |  1 +
 .../recipes-connectivity/slirp/libslirp_git.bb | 18 ++++++++++++++++++
 2 files changed, 19 insertions(+)
 create mode 100644 meta/recipes-connectivity/slirp/libslirp_git.bb

diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc
index 66797db02c..be96123ce6 100644
--- a/meta/conf/distro/include/maintainers.inc
+++ b/meta/conf/distro/include/maintainers.inc
@@ -382,6 +382,7 @@ RECIPE_MAINTAINER:pn-libsamplerate0 = "Unassigned <unassigned@yoctoproject.org>"
 RECIPE_MAINTAINER:pn-libsdl2 = "Yi Zhao <yi.zhao@windriver.com>"
 RECIPE_MAINTAINER:pn-libseccomp = "Unassigned <unassigned@yoctoproject.org>"
 RECIPE_MAINTAINER:pn-libsecret = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libslirp = "Unassigned <unassigned@yoctoproject.org>"
 RECIPE_MAINTAINER:pn-libsm = "Unassigned <unassigned@yoctoproject.org>"
 RECIPE_MAINTAINER:pn-libsndfile1 = "Unassigned <unassigned@yoctoproject.org>"
 RECIPE_MAINTAINER:pn-libsolv = "Anuj Mittal <anuj.mittal@intel.com>"
diff --git a/meta/recipes-connectivity/slirp/libslirp_git.bb b/meta/recipes-connectivity/slirp/libslirp_git.bb
new file mode 100644
index 0000000000..334b786b9b
--- /dev/null
+++ b/meta/recipes-connectivity/slirp/libslirp_git.bb
@@ -0,0 +1,18 @@
+SUMMARY = "A general purpose TCP-IP emulator"
+DESCRIPTION = "A general purpose TCP-IP emulator used by virtual machine hypervisors to provide virtual networking services."
+HOMEPAGE = "https://gitlab.freedesktop.org/slirp/libslirp"
+LICENSE = "BSD-3-Clause & MIT"
+LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=bca0186b14e6b05e338e729f106db727"
+
+SRC_URI = "git://gitlab.freedesktop.org/slirp/libslirp.git;protocol=https;branch=master"
+SRCREV = "3ad1710a96678fe79066b1469cead4058713a1d9"
+PV = "4.7.0"
+S = "${WORKDIR}/git"
+
+DEPENDS = " \
+    glib-2.0 \
+"
+
+inherit meson pkgconfig
+
+BBCLASSEXTEND = "native nativesdk"
-- 
2.30.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH 7/7] qemu: update 7.1.0 -> 7.2.0
  2022-12-24 16:59 [PATCH 1/7] llvm: update 15.0.4 -> 15.0.6 Alexander Kanavin
                   ` (4 preceding siblings ...)
  2022-12-24 16:59 ` [PATCH 6/7] libslirp: add recipe to continue slirp support in qemu Alexander Kanavin
@ 2022-12-24 16:59 ` Alexander Kanavin
  2022-12-29 23:19   ` [OE-core] " Richard Purdie
  5 siblings, 1 reply; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-24 16:59 UTC (permalink / raw)
  To: openembedded-core; +Cc: Alexander Kanavin

qemu no longer carries libslirp in-tree,
so enabling slirp requires providing external libslirp.

Another noteworthy change is:

x86: TCG support for AVX, AVX2, F16C, FMA3 and VAES instructions

... which means both meta-intel and qemu x86 targets can
now fully utilize Haswell-and-later instruction set with benefits
for performance in emulation and on silicon.

Changelog:
https://wiki.qemu.org/ChangeLog/7.2

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
 meta/conf/distro/include/tcmode-default.inc   |  2 +-
 ...u-native_7.1.0.bb => qemu-native_7.2.0.bb} |  0
 ...e_7.1.0.bb => qemu-system-native_7.2.0.bb} |  0
 meta/recipes-devtools/qemu/qemu.inc           | 14 ++--
 ...ulip-Restrict-DMA-engine-to-memories.patch | 64 -------------------
 .../qemu/qemu/CVE-2022-3165.patch             | 59 -----------------
 .../qemu/qemu/arm-cpreg-fix.patch             | 27 --------
 .../qemu/{qemu_7.1.0.bb => qemu_7.2.0.bb}     |  0
 8 files changed, 7 insertions(+), 159 deletions(-)
 rename meta/recipes-devtools/qemu/{qemu-native_7.1.0.bb => qemu-native_7.2.0.bb} (100%)
 rename meta/recipes-devtools/qemu/{qemu-system-native_7.1.0.bb => qemu-system-native_7.2.0.bb} (100%)
 delete mode 100644 meta/recipes-devtools/qemu/qemu/0001-net-tulip-Restrict-DMA-engine-to-memories.patch
 delete mode 100644 meta/recipes-devtools/qemu/qemu/CVE-2022-3165.patch
 delete mode 100644 meta/recipes-devtools/qemu/qemu/arm-cpreg-fix.patch
 rename meta/recipes-devtools/qemu/{qemu_7.1.0.bb => qemu_7.2.0.bb} (100%)

diff --git a/meta/conf/distro/include/tcmode-default.inc b/meta/conf/distro/include/tcmode-default.inc
index c784221062..19485aae17 100644
--- a/meta/conf/distro/include/tcmode-default.inc
+++ b/meta/conf/distro/include/tcmode-default.inc
@@ -22,7 +22,7 @@ BINUVERSION ?= "2.39%"
 GDBVERSION ?= "12.%"
 GLIBCVERSION ?= "2.36"
 LINUXLIBCVERSION ?= "5.19%"
-QEMUVERSION ?= "7.1%"
+QEMUVERSION ?= "7.2%"
 GOVERSION ?= "1.19%"
 LLVMVERSION ?= "15.%"
 RUSTVERSION ?= "1.66%"
diff --git a/meta/recipes-devtools/qemu/qemu-native_7.1.0.bb b/meta/recipes-devtools/qemu/qemu-native_7.2.0.bb
similarity index 100%
rename from meta/recipes-devtools/qemu/qemu-native_7.1.0.bb
rename to meta/recipes-devtools/qemu/qemu-native_7.2.0.bb
diff --git a/meta/recipes-devtools/qemu/qemu-system-native_7.1.0.bb b/meta/recipes-devtools/qemu/qemu-system-native_7.2.0.bb
similarity index 100%
rename from meta/recipes-devtools/qemu/qemu-system-native_7.1.0.bb
rename to meta/recipes-devtools/qemu/qemu-system-native_7.2.0.bb
diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc
index 27e3a8e259..b63c643dd8 100644
--- a/meta/recipes-devtools/qemu/qemu.inc
+++ b/meta/recipes-devtools/qemu/qemu.inc
@@ -27,15 +27,12 @@ SRC_URI = "https://download.qemu.org/${BPN}-${PV}.tar.xz \
            file://0008-tests-meson.build-use-relative-path-to-refer-to-file.patch \
            file://0009-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch \
            file://0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch \
-           file://0001-net-tulip-Restrict-DMA-engine-to-memories.patch \
            file://0001-contrib-vhost-user-blk-Replace-lseek64-with-lseek.patch \
            file://0002-linux-user-Replace-use-of-lfs64-related-functions-an.patch \
-           file://arm-cpreg-fix.patch \
-           file://CVE-2022-3165.patch \
            "
 UPSTREAM_CHECK_REGEX = "qemu-(?P<pver>\d+(\.\d+)+)\.tar"
 
-SRC_URI[sha256sum] = "a0634e536bded57cf38ec8a751adb124b89c776fe0846f21ab6c6728f1cbbbe6"
+SRC_URI[sha256sum] = "5b49ce2687744dad494ae90a898c52204a3406e84d072482a1e1be854eeb2157"
 
 SRC_URI:append:class-target = " file://cross.patch"
 SRC_URI:append:class-nativesdk = " file://cross.patch"
@@ -72,15 +69,16 @@ do_install_ptest() {
 	sed -i -e "1s,#!/usr/bin/bash,#!${base_bindir}/bash," ${D}${PTEST_PATH}/tests/data/acpi/disassemle-aml.sh
 
 	# Strip the paths from the QEMU variable, we can use PATH
-	sed -i -e "s#^QEMU=.*/qemu-#QEMU=qemu-#g" ${D}${PTEST_PATH}/tests/tcg/*.mak
+	makfiles=$(find ${D}${PTEST_PATH} -name "*.mak")
+	sed -i -e "s#^QEMU=.*/qemu-#QEMU=qemu-#g" $makfiles
 
 	# Strip compiler flags as they break reproducibility
 	sed -i -e "s,^CC=.*,CC=gcc," \
 	       -e "s,^CCAS=.*,CCAS=gcc," \
-	       -e "s,^LD=.*,LD=ld," ${D}${PTEST_PATH}/tests/tcg/*.mak
+	       -e "s,^LD=.*,LD=ld," $makfiles
 
 	# Update SRC_PATH variable to the right place on target
-	sed -i -e "s#^SRC_PATH=.*#SRC_PATH=${PTEST_PATH}#g" ${D}${PTEST_PATH}/tests/tcg/*.mak
+	sed -i -e "s#^SRC_PATH=.*#SRC_PATH=${PTEST_PATH}#g" $makfiles
 
 }
 
@@ -200,7 +198,7 @@ PACKAGECONFIG[bpf] = "--enable-bpf,--disable-bpf,libbpf"
 PACKAGECONFIG[capstone] = "--enable-capstone,--disable-capstone"
 PACKAGECONFIG[rdma] = "--enable-rdma,--disable-rdma"
 PACKAGECONFIG[vde] = "--enable-vde,--disable-vde"
-PACKAGECONFIG[slirp] = "--enable-slirp=internal,--disable-slirp"
+PACKAGECONFIG[slirp] = "--enable-slirp,--disable-slirp,libslirp"
 PACKAGECONFIG[brlapi] = "--enable-brlapi,--disable-brlapi"
 PACKAGECONFIG[jack] = "--enable-jack,--disable-jack,jack,"
 
diff --git a/meta/recipes-devtools/qemu/qemu/0001-net-tulip-Restrict-DMA-engine-to-memories.patch b/meta/recipes-devtools/qemu/qemu/0001-net-tulip-Restrict-DMA-engine-to-memories.patch
deleted file mode 100644
index 6c85a77ba7..0000000000
--- a/meta/recipes-devtools/qemu/qemu/0001-net-tulip-Restrict-DMA-engine-to-memories.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-CVE: CVE-2022-2962
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-From 5c5c50b0a73d78ffe18336c9996fef5eae9bbbb0 Mon Sep 17 00:00:00 2001
-From: Zheyu Ma <zheyuma97@gmail.com>
-Date: Sun, 21 Aug 2022 20:43:43 +0800
-Subject: [PATCH] net: tulip: Restrict DMA engine to memories
-
-The DMA engine is started by I/O access and then itself accesses the
-I/O registers, triggering a reentrancy bug.
-
-The following log can reveal it:
-==5637==ERROR: AddressSanitizer: stack-overflow
-    #0 0x5595435f6078 in tulip_xmit_list_update qemu/hw/net/tulip.c:673
-    #1 0x5595435f204a in tulip_write qemu/hw/net/tulip.c:805:13
-    #2 0x559544637f86 in memory_region_write_accessor qemu/softmmu/memory.c:492:5
-    #3 0x5595446379fa in access_with_adjusted_size qemu/softmmu/memory.c:554:18
-    #4 0x5595446372fa in memory_region_dispatch_write qemu/softmmu/memory.c
-    #5 0x55954468b74c in flatview_write_continue qemu/softmmu/physmem.c:2825:23
-    #6 0x559544683662 in flatview_write qemu/softmmu/physmem.c:2867:12
-    #7 0x5595446833f3 in address_space_write qemu/softmmu/physmem.c:2963:18
-    #8 0x5595435fb082 in dma_memory_rw_relaxed qemu/include/sysemu/dma.h:87:12
-    #9 0x5595435fb082 in dma_memory_rw qemu/include/sysemu/dma.h:130:12
-    #10 0x5595435fb082 in dma_memory_write qemu/include/sysemu/dma.h:171:12
-    #11 0x5595435fb082 in stl_le_dma qemu/include/sysemu/dma.h:272:1
-    #12 0x5595435fb082 in stl_le_pci_dma qemu/include/hw/pci/pci.h:910:1
-    #13 0x5595435fb082 in tulip_desc_write qemu/hw/net/tulip.c:101:9
-    #14 0x5595435f7e3d in tulip_xmit_list_update qemu/hw/net/tulip.c:706:9
-    #15 0x5595435f204a in tulip_write qemu/hw/net/tulip.c:805:13
-
-Fix this bug by restricting the DMA engine to memories regions.
-
-Signed-off-by: Zheyu Ma <zheyuma97@gmail.com>
-Signed-off-by: Jason Wang <jasowang@redhat.com>
----
- hw/net/tulip.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/hw/net/tulip.c b/hw/net/tulip.c
-index 097e905bec..b9e42c322a 100644
---- a/hw/net/tulip.c
-+++ b/hw/net/tulip.c
-@@ -70,7 +70,7 @@ static const VMStateDescription vmstate_pci_tulip = {
- static void tulip_desc_read(TULIPState *s, hwaddr p,
-         struct tulip_descriptor *desc)
- {
--    const MemTxAttrs attrs = MEMTXATTRS_UNSPECIFIED;
-+    const MemTxAttrs attrs = { .memory = true };
- 
-     if (s->csr[0] & CSR0_DBO) {
-         ldl_be_pci_dma(&s->dev, p, &desc->status, attrs);
-@@ -88,7 +88,7 @@ static void tulip_desc_read(TULIPState *s, hwaddr p,
- static void tulip_desc_write(TULIPState *s, hwaddr p,
-         struct tulip_descriptor *desc)
- {
--    const MemTxAttrs attrs = MEMTXATTRS_UNSPECIFIED;
-+    const MemTxAttrs attrs = { .memory = true };
- 
-     if (s->csr[0] & CSR0_DBO) {
-         stl_be_pci_dma(&s->dev, p, desc->status, attrs);
--- 
-2.34.1
-
diff --git a/meta/recipes-devtools/qemu/qemu/CVE-2022-3165.patch b/meta/recipes-devtools/qemu/qemu/CVE-2022-3165.patch
deleted file mode 100644
index 3b4a6694c2..0000000000
--- a/meta/recipes-devtools/qemu/qemu/CVE-2022-3165.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-CVE: CVE-2022-3165
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-From d307040b18bfcb1393b910f1bae753d5c12a4dc7 Mon Sep 17 00:00:00 2001
-From: Mauro Matteo Cascella <mcascell@redhat.com>
-Date: Sun, 25 Sep 2022 22:45:11 +0200
-Subject: [PATCH] ui/vnc-clipboard: fix integer underflow in
- vnc_client_cut_text_ext
-
-Extended ClientCutText messages start with a 4-byte header. If len < 4,
-an integer underflow occurs in vnc_client_cut_text_ext. The result is
-used to decompress data in a while loop in inflate_buffer, leading to
-CPU consumption and denial of service. Prevent this by checking dlen in
-protocol_client_msg.
-
-Fixes: CVE-2022-3165
-Fixes: 0bf41cab93e5 ("ui/vnc: clipboard support")
-Reported-by: TangPeng <tangpeng@qianxin.com>
-Signed-off-by: Mauro Matteo Cascella <mcascell@redhat.com>
-Message-Id: <20220925204511.1103214-1-mcascell@redhat.com>
-Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
----
- ui/vnc.c | 11 ++++++++---
- 1 file changed, 8 insertions(+), 3 deletions(-)
-
-diff --git a/ui/vnc.c b/ui/vnc.c
-index 6a05d06147..acb3629cd8 100644
---- a/ui/vnc.c
-+++ b/ui/vnc.c
-@@ -2442,8 +2442,8 @@ static int protocol_client_msg(VncState *vs, uint8_t *data, size_t len)
-         if (len == 1) {
-             return 8;
-         }
-+        uint32_t dlen = abs(read_s32(data, 4));
-         if (len == 8) {
--            uint32_t dlen = abs(read_s32(data, 4));
-             if (dlen > (1 << 20)) {
-                 error_report("vnc: client_cut_text msg payload has %u bytes"
-                              " which exceeds our limit of 1MB.", dlen);
-@@ -2456,8 +2456,13 @@ static int protocol_client_msg(VncState *vs, uint8_t *data, size_t len)
-         }
- 
-         if (read_s32(data, 4) < 0) {
--            vnc_client_cut_text_ext(vs, abs(read_s32(data, 4)),
--                                    read_u32(data, 8), data + 12);
-+            if (dlen < 4) {
-+                error_report("vnc: malformed payload (header less than 4 bytes)"
-+                             " in extended clipboard pseudo-encoding.");
-+                vnc_client_error(vs);
-+                break;
-+            }
-+            vnc_client_cut_text_ext(vs, dlen, read_u32(data, 8), data + 12);
-             break;
-         }
-         vnc_client_cut_text(vs, read_u32(data, 4), data + 8);
--- 
-GitLab
-
diff --git a/meta/recipes-devtools/qemu/qemu/arm-cpreg-fix.patch b/meta/recipes-devtools/qemu/qemu/arm-cpreg-fix.patch
deleted file mode 100644
index 071691f8ca..0000000000
--- a/meta/recipes-devtools/qemu/qemu/arm-cpreg-fix.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-target/arm: mark SP_EL1 with ARM_CP_EL3_NO_EL2_KEEP
-
-SP_EL1 must be kept when EL3 is present but EL2 is not. Therefore mark
-it with ARM_CP_EL3_NO_EL2_KEEP.
-
-Fixes: 696ba3771894 ("target/arm: Handle cpreg registration for missing EL")
-Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
-
-Upstream-Status: Submitted [https://lists.gnu.org/archive/html/qemu-devel/2022-09/msg04515.html]
-
----
- target/arm/helper.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: qemu-7.1.0/target/arm/helper.c
-===================================================================
---- qemu-7.1.0.orig/target/arm/helper.c
-+++ qemu-7.1.0/target/arm/helper.c
-@@ -4971,7 +4971,7 @@ static const ARMCPRegInfo v8_cp_reginfo[
-       .fieldoffset = offsetof(CPUARMState, sp_el[0]) },
-     { .name = "SP_EL1", .state = ARM_CP_STATE_AA64,
-       .opc0 = 3, .opc1 = 4, .crn = 4, .crm = 1, .opc2 = 0,
--      .access = PL2_RW, .type = ARM_CP_ALIAS,
-+      .access = PL2_RW, .type = ARM_CP_ALIAS | ARM_CP_EL3_NO_EL2_KEEP,
-       .fieldoffset = offsetof(CPUARMState, sp_el[1]) },
-     { .name = "SPSel", .state = ARM_CP_STATE_AA64,
-       .opc0 = 3, .opc1 = 0, .crn = 4, .crm = 2, .opc2 = 0,
diff --git a/meta/recipes-devtools/qemu/qemu_7.1.0.bb b/meta/recipes-devtools/qemu/qemu_7.2.0.bb
similarity index 100%
rename from meta/recipes-devtools/qemu/qemu_7.1.0.bb
rename to meta/recipes-devtools/qemu/qemu_7.2.0.bb
-- 
2.30.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [OE-core] [PATCH 4/7] python3-native: further tweak to sysconfig.py to find python includes correctly
  2022-12-24 16:59 ` [PATCH 4/7] python3-native: further tweak to sysconfig.py to find python includes correctly Alexander Kanavin
@ 2022-12-27 18:41   ` Khem Raj
  2022-12-27 22:00     ` Alexander Kanavin
       [not found]     ` <1734C56F2C623C3D.12545@lists.openembedded.org>
  0 siblings, 2 replies; 16+ messages in thread
From: Khem Raj @ 2022-12-27 18:41 UTC (permalink / raw)
  To: Alexander Kanavin; +Cc: openembedded-core, Alexander Kanavin

This is regressing following recipes from meta-openembedded

python3-uefi-firmware
https://errors.yoctoproject.org/Errors/Details/685605/

python3-greenlet
https://errors.yoctoproject.org/Errors/Details/685600/

its installing the headers in wrong place

On Sat, Dec 24, 2022 at 9:00 AM Alexander Kanavin
<alex.kanavin@gmail.com> wrote:
>
> Without this, sysconfig would report the target location, which is not
> what we want in cross-builds. This is used in particular by
> latest autoconf-archive m4 macros, which have migrated from
> (removed in py 3.12) distutils to setuptools.
>
> Signed-off-by: Alexander Kanavin <alex@linutronix.de>
> ---
>  ...py-use-prefix-value-from-build-configu.patch | 17 +++++++++--------
>  1 file changed, 9 insertions(+), 8 deletions(-)
>
> diff --git a/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch b/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch
> index 2f519e4917..5ca855e7ed 100644
> --- a/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch
> +++ b/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch
> @@ -1,24 +1,23 @@
> -From 05d676ddf675d9c8229b723e64717aa485d6809e Mon Sep 17 00:00:00 2001
> +From 45548f40668d429adcb7532d35db1ac16fe74562 Mon Sep 17 00:00:00 2001
>  From: Alexander Kanavin <alex@linutronix.de>
>  Date: Fri, 10 Sep 2021 12:28:31 +0200
> -Subject: [PATCH] Lib/sysconfig.py: use prefix value from build configuration
> - file
> +Subject: [PATCH] Lib/sysconfig.py: use values from build configuration file
>
> -This allows correctly substituting them for target installs using
> +This allows correctly substituting them for target builds using
>  native python.
>
>  Upstream-Status: Inappropriate [oe-core cross builds]
>  Signed-off-by: Alexander Kanavin <alex@linutronix.de>
>
>  ---
> - Lib/sysconfig.py | 5 +++++
> - 1 file changed, 5 insertions(+)
> + Lib/sysconfig.py | 7 +++++++
> + 1 file changed, 7 insertions(+)
>
>  diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py
> -index 93c6f73..ff399e2 100644
> +index 93c6f73..a87870f 100644
>  --- a/Lib/sysconfig.py
>  +++ b/Lib/sysconfig.py
> -@@ -668,6 +668,11 @@ def get_config_vars(*args):
> +@@ -668,6 +668,13 @@ def get_config_vars(*args):
>               _CONFIG_VARS['VPATH'] = sys._vpath
>           if os.name == 'posix':
>               _init_posix(_CONFIG_VARS)
> @@ -27,6 +26,8 @@ index 93c6f73..ff399e2 100644
>  +        _CONFIG_VARS['installed_platbase'] = _CONFIG_VARS['prefix']
>  +        _CONFIG_VARS['platbase'] = _CONFIG_VARS['prefix']
>  +        _CONFIG_VARS['platlibdir'] = _CONFIG_VARS['PLATLIBDIR']
> ++        _INSTALL_SCHEMES['posix_prefix']['include'] = _CONFIG_VARS['INCLUDEPY']
> ++        _INSTALL_SCHEMES['posix_prefix']['platinclude'] = _CONFIG_VARS['INCLUDEPY']
>           if _HAS_USER_BASE:
>               # Setting 'userbase' is done below the call to the
>               # init function to enable using 'get_config_var' in
> --
> 2.30.2
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#174986): https://lists.openembedded.org/g/openembedded-core/message/174986
> Mute This Topic: https://lists.openembedded.org/mt/95864507/1997914
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [OE-core] [PATCH 4/7] python3-native: further tweak to sysconfig.py to find python includes correctly
  2022-12-27 18:41   ` [OE-core] " Khem Raj
@ 2022-12-27 22:00     ` Alexander Kanavin
       [not found]     ` <1734C56F2C623C3D.12545@lists.openembedded.org>
  1 sibling, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-27 22:00 UTC (permalink / raw)
  To: Khem Raj; +Cc: openembedded-core, Alexander Kanavin

That's annoying. The case I was fixing was for *finding* headers in a
sysroot, but if installing them needs to work too, then there's no
option that works. I'll take a look a bit later.

Alex

On Tue, 27 Dec 2022 at 19:41, Khem Raj <raj.khem@gmail.com> wrote:
>
> This is regressing following recipes from meta-openembedded
>
> python3-uefi-firmware
> https://errors.yoctoproject.org/Errors/Details/685605/
>
> python3-greenlet
> https://errors.yoctoproject.org/Errors/Details/685600/
>
> its installing the headers in wrong place
>
> On Sat, Dec 24, 2022 at 9:00 AM Alexander Kanavin
> <alex.kanavin@gmail.com> wrote:
> >
> > Without this, sysconfig would report the target location, which is not
> > what we want in cross-builds. This is used in particular by
> > latest autoconf-archive m4 macros, which have migrated from
> > (removed in py 3.12) distutils to setuptools.
> >
> > Signed-off-by: Alexander Kanavin <alex@linutronix.de>
> > ---
> >  ...py-use-prefix-value-from-build-configu.patch | 17 +++++++++--------
> >  1 file changed, 9 insertions(+), 8 deletions(-)
> >
> > diff --git a/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch b/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch
> > index 2f519e4917..5ca855e7ed 100644
> > --- a/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch
> > +++ b/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch
> > @@ -1,24 +1,23 @@
> > -From 05d676ddf675d9c8229b723e64717aa485d6809e Mon Sep 17 00:00:00 2001
> > +From 45548f40668d429adcb7532d35db1ac16fe74562 Mon Sep 17 00:00:00 2001
> >  From: Alexander Kanavin <alex@linutronix.de>
> >  Date: Fri, 10 Sep 2021 12:28:31 +0200
> > -Subject: [PATCH] Lib/sysconfig.py: use prefix value from build configuration
> > - file
> > +Subject: [PATCH] Lib/sysconfig.py: use values from build configuration file
> >
> > -This allows correctly substituting them for target installs using
> > +This allows correctly substituting them for target builds using
> >  native python.
> >
> >  Upstream-Status: Inappropriate [oe-core cross builds]
> >  Signed-off-by: Alexander Kanavin <alex@linutronix.de>
> >
> >  ---
> > - Lib/sysconfig.py | 5 +++++
> > - 1 file changed, 5 insertions(+)
> > + Lib/sysconfig.py | 7 +++++++
> > + 1 file changed, 7 insertions(+)
> >
> >  diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py
> > -index 93c6f73..ff399e2 100644
> > +index 93c6f73..a87870f 100644
> >  --- a/Lib/sysconfig.py
> >  +++ b/Lib/sysconfig.py
> > -@@ -668,6 +668,11 @@ def get_config_vars(*args):
> > +@@ -668,6 +668,13 @@ def get_config_vars(*args):
> >               _CONFIG_VARS['VPATH'] = sys._vpath
> >           if os.name == 'posix':
> >               _init_posix(_CONFIG_VARS)
> > @@ -27,6 +26,8 @@ index 93c6f73..ff399e2 100644
> >  +        _CONFIG_VARS['installed_platbase'] = _CONFIG_VARS['prefix']
> >  +        _CONFIG_VARS['platbase'] = _CONFIG_VARS['prefix']
> >  +        _CONFIG_VARS['platlibdir'] = _CONFIG_VARS['PLATLIBDIR']
> > ++        _INSTALL_SCHEMES['posix_prefix']['include'] = _CONFIG_VARS['INCLUDEPY']
> > ++        _INSTALL_SCHEMES['posix_prefix']['platinclude'] = _CONFIG_VARS['INCLUDEPY']
> >           if _HAS_USER_BASE:
> >               # Setting 'userbase' is done below the call to the
> >               # init function to enable using 'get_config_var' in
> > --
> > 2.30.2
> >
> >
> > -=-=-=-=-=-=-=-=-=-=-=-
> > Links: You receive all messages sent to this group.
> > View/Reply Online (#174986): https://lists.openembedded.org/g/openembedded-core/message/174986
> > Mute This Topic: https://lists.openembedded.org/mt/95864507/1997914
> > Group Owner: openembedded-core+owner@lists.openembedded.org
> > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [raj.khem@gmail.com]
> > -=-=-=-=-=-=-=-=-=-=-=-
> >


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [OE-core] [PATCH 4/7] python3-native: further tweak to sysconfig.py to find python includes correctly
       [not found]     ` <1734C56F2C623C3D.12545@lists.openembedded.org>
@ 2022-12-27 22:48       ` Alexander Kanavin
  0 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-27 22:48 UTC (permalink / raw)
  To: alex.kanavin; +Cc: Khem Raj, openembedded-core, Alexander Kanavin

I'll be submitting a revert, for now. There's no case of using latest
autoconf-archive in the wild yet (where the problem is), so let's
stick to default behavior which does not break setuptools.

Alex

On Tue, 27 Dec 2022 at 23:00, Alexander Kanavin via
lists.openembedded.org <alex.kanavin=gmail.com@lists.openembedded.org>
wrote:
>
> That's annoying. The case I was fixing was for *finding* headers in a
> sysroot, but if installing them needs to work too, then there's no
> option that works. I'll take a look a bit later.
>
> Alex
>
> On Tue, 27 Dec 2022 at 19:41, Khem Raj <raj.khem@gmail.com> wrote:
> >
> > This is regressing following recipes from meta-openembedded
> >
> > python3-uefi-firmware
> > https://errors.yoctoproject.org/Errors/Details/685605/
> >
> > python3-greenlet
> > https://errors.yoctoproject.org/Errors/Details/685600/
> >
> > its installing the headers in wrong place
> >
> > On Sat, Dec 24, 2022 at 9:00 AM Alexander Kanavin
> > <alex.kanavin@gmail.com> wrote:
> > >
> > > Without this, sysconfig would report the target location, which is not
> > > what we want in cross-builds. This is used in particular by
> > > latest autoconf-archive m4 macros, which have migrated from
> > > (removed in py 3.12) distutils to setuptools.
> > >
> > > Signed-off-by: Alexander Kanavin <alex@linutronix.de>
> > > ---
> > >  ...py-use-prefix-value-from-build-configu.patch | 17 +++++++++--------
> > >  1 file changed, 9 insertions(+), 8 deletions(-)
> > >
> > > diff --git a/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch b/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch
> > > index 2f519e4917..5ca855e7ed 100644
> > > --- a/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch
> > > +++ b/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch
> > > @@ -1,24 +1,23 @@
> > > -From 05d676ddf675d9c8229b723e64717aa485d6809e Mon Sep 17 00:00:00 2001
> > > +From 45548f40668d429adcb7532d35db1ac16fe74562 Mon Sep 17 00:00:00 2001
> > >  From: Alexander Kanavin <alex@linutronix.de>
> > >  Date: Fri, 10 Sep 2021 12:28:31 +0200
> > > -Subject: [PATCH] Lib/sysconfig.py: use prefix value from build configuration
> > > - file
> > > +Subject: [PATCH] Lib/sysconfig.py: use values from build configuration file
> > >
> > > -This allows correctly substituting them for target installs using
> > > +This allows correctly substituting them for target builds using
> > >  native python.
> > >
> > >  Upstream-Status: Inappropriate [oe-core cross builds]
> > >  Signed-off-by: Alexander Kanavin <alex@linutronix.de>
> > >
> > >  ---
> > > - Lib/sysconfig.py | 5 +++++
> > > - 1 file changed, 5 insertions(+)
> > > + Lib/sysconfig.py | 7 +++++++
> > > + 1 file changed, 7 insertions(+)
> > >
> > >  diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py
> > > -index 93c6f73..ff399e2 100644
> > > +index 93c6f73..a87870f 100644
> > >  --- a/Lib/sysconfig.py
> > >  +++ b/Lib/sysconfig.py
> > > -@@ -668,6 +668,11 @@ def get_config_vars(*args):
> > > +@@ -668,6 +668,13 @@ def get_config_vars(*args):
> > >               _CONFIG_VARS['VPATH'] = sys._vpath
> > >           if os.name == 'posix':
> > >               _init_posix(_CONFIG_VARS)
> > > @@ -27,6 +26,8 @@ index 93c6f73..ff399e2 100644
> > >  +        _CONFIG_VARS['installed_platbase'] = _CONFIG_VARS['prefix']
> > >  +        _CONFIG_VARS['platbase'] = _CONFIG_VARS['prefix']
> > >  +        _CONFIG_VARS['platlibdir'] = _CONFIG_VARS['PLATLIBDIR']
> > > ++        _INSTALL_SCHEMES['posix_prefix']['include'] = _CONFIG_VARS['INCLUDEPY']
> > > ++        _INSTALL_SCHEMES['posix_prefix']['platinclude'] = _CONFIG_VARS['INCLUDEPY']
> > >           if _HAS_USER_BASE:
> > >               # Setting 'userbase' is done below the call to the
> > >               # init function to enable using 'get_config_var' in
> > > --
> > > 2.30.2
> > >
> > >
> > >
> > >
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#175035): https://lists.openembedded.org/g/openembedded-core/message/175035
> Mute This Topic: https://lists.openembedded.org/mt/95864507/1686489
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alex.kanavin@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [OE-core] [PATCH 6/7] libslirp: add recipe to continue slirp support in qemu
  2022-12-24 16:59 ` [PATCH 6/7] libslirp: add recipe to continue slirp support in qemu Alexander Kanavin
@ 2022-12-28 13:42   ` Richard Purdie
  2022-12-28 17:19     ` Alexander Kanavin
  0 siblings, 1 reply; 16+ messages in thread
From: Richard Purdie @ 2022-12-28 13:42 UTC (permalink / raw)
  To: Alexander Kanavin, openembedded-core; +Cc: Alexander Kanavin, Bruce Ashfield

On Sat, 2022-12-24 at 17:59 +0100, Alexander Kanavin wrote:
> qemu 7.2 no longer carries libslirp in-tree, and so
> it has to be provided externally.
> 
> Signed-off-by: Alexander Kanavin <alex@linutronix.de>
> ---
>  meta/conf/distro/include/maintainers.inc       |  1 +
>  .../recipes-connectivity/slirp/libslirp_git.bb | 18 ++++++++++++++++++
>  2 files changed, 19 insertions(+)
>  create mode 100644 meta/recipes-connectivity/slirp/libslirp_git.bb
> 
> diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc
> index 66797db02c..be96123ce6 100644
> --- a/meta/conf/distro/include/maintainers.inc
> +++ b/meta/conf/distro/include/maintainers.inc
> @@ -382,6 +382,7 @@ RECIPE_MAINTAINER:pn-libsamplerate0 = "Unassigned <unassigned@yoctoproject.org>"
>  RECIPE_MAINTAINER:pn-libsdl2 = "Yi Zhao <yi.zhao@windriver.com>"
>  RECIPE_MAINTAINER:pn-libseccomp = "Unassigned <unassigned@yoctoproject.org>"
>  RECIPE_MAINTAINER:pn-libsecret = "Alexander Kanavin <alex.kanavin@gmail.com>"
> +RECIPE_MAINTAINER:pn-libslirp = "Unassigned <unassigned@yoctoproject.org>"
>  RECIPE_MAINTAINER:pn-libsm = "Unassigned <unassigned@yoctoproject.org>"
>  RECIPE_MAINTAINER:pn-libsndfile1 = "Unassigned <unassigned@yoctoproject.org>"
>  RECIPE_MAINTAINER:pn-libsolv = "Anuj Mittal <anuj.mittal@intel.com>"
> diff --git a/meta/recipes-connectivity/slirp/libslirp_git.bb b/meta/recipes-connectivity/slirp/libslirp_git.bb
> new file mode 100644
> index 0000000000..334b786b9b
> --- /dev/null
> +++ b/meta/recipes-connectivity/slirp/libslirp_git.bb
> @@ -0,0 +1,18 @@
> +SUMMARY = "A general purpose TCP-IP emulator"
> +DESCRIPTION = "A general purpose TCP-IP emulator used by virtual machine hypervisors to provide virtual networking services."
> +HOMEPAGE = "https://gitlab.freedesktop.org/slirp/libslirp"
> +LICENSE = "BSD-3-Clause & MIT"
> +LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=bca0186b14e6b05e338e729f106db727"
> +
> +SRC_URI = "git://gitlab.freedesktop.org/slirp/libslirp.git;protocol=https;branch=master"
> +SRCREV = "3ad1710a96678fe79066b1469cead4058713a1d9"
> +PV = "4.7.0"
> +S = "${WORKDIR}/git"
> +
> +DEPENDS = " \
> +    glib-2.0 \
> +"
> +
> +inherit meson pkgconfig
> +
> +BBCLASSEXTEND = "native nativesdk"

I did merge this to core since the qemu upgrade has some potential wins
for us and is fairly important to get in. I probably shouldn't have
done as people are now upset, we're now seeing autobuilder failures,
people are on vacation and the issues won't be fixed until mid January.

I've had some feedback about the way this was handled. In future things
might be smoother if we:

a) make sure the maintainers of other layers containing such recipes 
   are cc'd on the changes.
b) mention in the commit which layer a recipe came from and who worked 
   on the underlying code
c) mention any changes made to merge to core
d) time things outside of holidays

Yes, it is a pain to do some of these things and sightly more work, but
leaving the issues to me isn't much fun either. I don't think anything
was intended by anything, it was mainly a desire to keep core up to
take and be able to take advantaged of new features in qemu.

I am very much aware that during holidays, people have different time
availability and this sometimes works in favour of productivity,
sometimes against it. I need to balance getting patch movement and
feedback back to contributors with some people taking a proper break
and it is hard to get right.

For the record, looking at a diff, the changes in this submission
appear to be:

* Upgrade from 4.6.1+git -> 4.7.0
* Addition of BBCLASSEXTEND for native/nativesdk
* Add DESCRIPTION and HOMEPAGE

Cheers,

Richard



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [OE-core] [PATCH 6/7] libslirp: add recipe to continue slirp support in qemu
  2022-12-28 13:42   ` [OE-core] " Richard Purdie
@ 2022-12-28 17:19     ` Alexander Kanavin
  0 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-28 17:19 UTC (permalink / raw)
  To: Richard Purdie; +Cc: openembedded-core, Alexander Kanavin, Bruce Ashfield

On Wed, 28 Dec 2022 at 14:42, Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
> I've had some feedback about the way this was handled. In future things
> might be smoother if we:
>
> a) make sure the maintainers of other layers containing such recipes
>    are cc'd on the changes.
> b) mention in the commit which layer a recipe came from and who worked
>    on the underlying code
> c) mention any changes made to merge to core
> d) time things outside of holidays

I agree with documenting origin, giving credit and making
changes-on-top clear; I did copy the recipe (however simple) from
meta-virtualization and should've done that at that point.

Otherwise, there's no 'evil intent' with the timing. It's just that
recent AUH reports (and associated weekly CVE reports for master)
bother me more and more, Christmas season is a great time to get
actual work done :) and I handle hardest updates first - and qemu is
certainly in that category. I wouldn't do these large, disruptive,
inconveniently timed (for some) update batches if we had a healthy
maintainer ecosystem.

By the way, at Linutronix there is a requirement to clearly document
code that's been copied from elsewhere, one is not allowed to change
it in the same commit, and there's associated nomenclature for commit
messages. For example, recently I wrote this into a commit:

    (copy from external source:
    git: git://git.yoctoproject.org/poky
    archive: c615d00a361510b0425a57ea6afdda5a39069692
    copy: meta/recipes-core/initrdscripts/files/init-install-efi.sh
--> recipes-core/images/initramfs-module-someproduct-install/someproduct-partition-install.sh
    copy: meta/recipes-core/initrdscripts/files/init-install-efi.sh
--> recipes-core/images/initramfs-module-someproduct-install/someproduct-reinstall.sh
    )


Alex


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [OE-core] [PATCH 7/7] qemu: update 7.1.0 -> 7.2.0
  2022-12-24 16:59 ` [PATCH 7/7] qemu: update 7.1.0 -> 7.2.0 Alexander Kanavin
@ 2022-12-29 23:19   ` Richard Purdie
  2022-12-30  7:30     ` Alexander Kanavin
       [not found]     ` <173581B798B2479E.21302@lists.openembedded.org>
  0 siblings, 2 replies; 16+ messages in thread
From: Richard Purdie @ 2022-12-29 23:19 UTC (permalink / raw)
  To: Alexander Kanavin, openembedded-core; +Cc: Alexander Kanavin

On Sat, 2022-12-24 at 17:59 +0100, Alexander Kanavin wrote:
> qemu no longer carries libslirp in-tree,
> so enabling slirp requires providing external libslirp.
> 
> Another noteworthy change is:
> 
> x86: TCG support for AVX, AVX2, F16C, FMA3 and VAES instructions
> 
> ... which means both meta-intel and qemu x86 targets can
> now fully utilize Haswell-and-later instruction set with benefits
> for performance in emulation and on silicon.
> 
> Changelog:
> https://wiki.qemu.org/ChangeLog/7.2
> 
> Signed-off-by: Alexander Kanavin <alex@linutronix.de>

Since I merged this we've been seeing an intermittent qemu ptest
failure on both arm and x86:

https://autobuilder.yoctoproject.org/typhoon/#/builders/81/builds/4479/steps/12/logs/stdio
https://autobuilder.yoctoproject.org/typhoon/#/builders/82/builds/4273/steps/12/logs/stdio

Not sure what the pattern to trigger it is, not looked into it.

Cheers,

Richard


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [OE-core] [PATCH 7/7] qemu: update 7.1.0 -> 7.2.0
  2022-12-29 23:19   ` [OE-core] " Richard Purdie
@ 2022-12-30  7:30     ` Alexander Kanavin
       [not found]     ` <173581B798B2479E.21302@lists.openembedded.org>
  1 sibling, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-30  7:30 UTC (permalink / raw)
  To: Richard Purdie; +Cc: openembedded-core, Alexander Kanavin

On Fri, 30 Dec 2022 at 00:19, Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
> Since I merged this we've been seeing an intermittent qemu ptest
> failure on both arm and x86:
>
> https://autobuilder.yoctoproject.org/typhoon/#/builders/81/builds/4479/steps/12/logs/stdio
> https://autobuilder.yoctoproject.org/typhoon/#/builders/82/builds/4273/steps/12/logs/stdio
>
> Not sure what the pattern to trigger it is, not looked into it.

I had filed a bug for this:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=14996

The immediate trigger might be the non-deterministic running order of
tests, I'll see if I can reproduce the failing order.

Alex


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [OE-core] [PATCH 7/7] qemu: update 7.1.0 -> 7.2.0
       [not found]     ` <173581B798B2479E.21302@lists.openembedded.org>
@ 2022-12-30  8:06       ` Alexander Kanavin
  2022-12-30 10:36         ` Richard Purdie
  0 siblings, 1 reply; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-30  8:06 UTC (permalink / raw)
  To: alex.kanavin
  Cc: Richard Purdie, openembedded-core, Alexander Kanavin,
	alex.bennee, berrange

On Fri, 30 Dec 2022 at 08:31, Alexander Kanavin via
lists.openembedded.org <alex.kanavin=gmail.com@lists.openembedded.org>
wrote:
> > Since I merged this we've been seeing an intermittent qemu ptest
> > failure on both arm and x86:
> >
> > https://autobuilder.yoctoproject.org/typhoon/#/builders/81/builds/4479/steps/12/logs/stdio
> > https://autobuilder.yoctoproject.org/typhoon/#/builders/82/builds/4273/steps/12/logs/stdio
> >
> > Not sure what the pattern to trigger it is, not looked into it.
>
> I had filed a bug for this:
> https://bugzilla.yoctoproject.org/show_bug.cgi?id=14996

The culprit is here:
https://git.qemu.org/?p=qemu.git;a=commitdiff;h=68406d10859385c88da73d0106254a7f47e6652e

Particularly the
    /* try to avoid a race to create the socket */
    g_usleep(1000);

bit is not reliable enough, there has to be hard synchronization.

I guess we have to disable the test altogether for now.

Alex


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [OE-core] [PATCH 7/7] qemu: update 7.1.0 -> 7.2.0
  2022-12-30  8:06       ` Alexander Kanavin
@ 2022-12-30 10:36         ` Richard Purdie
  0 siblings, 0 replies; 16+ messages in thread
From: Richard Purdie @ 2022-12-30 10:36 UTC (permalink / raw)
  To: Alexander Kanavin
  Cc: openembedded-core, Alexander Kanavin, alex.bennee, berrange

On Fri, 2022-12-30 at 09:06 +0100, Alexander Kanavin wrote:
> On Fri, 30 Dec 2022 at 08:31, Alexander Kanavin via
> lists.openembedded.org <alex.kanavin=gmail.com@lists.openembedded.org>
> wrote:
> > > Since I merged this we've been seeing an intermittent qemu ptest
> > > failure on both arm and x86:
> > > 
> > > https://autobuilder.yoctoproject.org/typhoon/#/builders/81/builds/4479/steps/12/logs/stdio
> > > https://autobuilder.yoctoproject.org/typhoon/#/builders/82/builds/4273/steps/12/logs/stdio
> > > 
> > > Not sure what the pattern to trigger it is, not looked into it.
> > 
> > I had filed a bug for this:
> > https://bugzilla.yoctoproject.org/show_bug.cgi?id=14996
> 
> The culprit is here:
> https://git.qemu.org/?p=qemu.git;a=commitdiff;h=68406d10859385c88da73d0106254a7f47e6652e
> 
> Particularly the
>     /* try to avoid a race to create the socket */
>     g_usleep(1000);
> 
> bit is not reliable enough, there has to be hard synchronization.
> 
> I guess we have to disable the test altogether for now.

Disabling sounds reasonable, thanks for looking into it.

Cheers,

Richard


^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2022-12-30 10:37 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-12-24 16:59 [PATCH 1/7] llvm: update 15.0.4 -> 15.0.6 Alexander Kanavin
2022-12-24 16:59 ` [PATCH 2/7] tcmode-default.inc: set LLVMVERSION to a major version wildcard Alexander Kanavin
2022-12-24 16:59 ` [PATCH 3/7] cmake: update 3.24.2 -> 3.25.1 Alexander Kanavin
2022-12-24 16:59 ` [PATCH 4/7] python3-native: further tweak to sysconfig.py to find python includes correctly Alexander Kanavin
2022-12-27 18:41   ` [OE-core] " Khem Raj
2022-12-27 22:00     ` Alexander Kanavin
     [not found]     ` <1734C56F2C623C3D.12545@lists.openembedded.org>
2022-12-27 22:48       ` Alexander Kanavin
2022-12-24 16:59 ` [PATCH 5/7] devtool: process local files only for the main branch Alexander Kanavin
2022-12-24 16:59 ` [PATCH 6/7] libslirp: add recipe to continue slirp support in qemu Alexander Kanavin
2022-12-28 13:42   ` [OE-core] " Richard Purdie
2022-12-28 17:19     ` Alexander Kanavin
2022-12-24 16:59 ` [PATCH 7/7] qemu: update 7.1.0 -> 7.2.0 Alexander Kanavin
2022-12-29 23:19   ` [OE-core] " Richard Purdie
2022-12-30  7:30     ` Alexander Kanavin
     [not found]     ` <173581B798B2479E.21302@lists.openembedded.org>
2022-12-30  8:06       ` Alexander Kanavin
2022-12-30 10:36         ` Richard Purdie

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.