Thanks, applied as 866ee957c87a83fb99d16c52b8d80a3b6b5e7631.

Michael

[sent from post-receive hook]

On Tue, 16 Sep 2025 21:44:45 +0200, Christian Melki 
<[email protected]> wrote:
> https://wiki.qemu.org/ChangeLog/10.1
> passt is interesting, but I had some trivial build errors.
> 
> * Fix some build options.
> 
> * Slight adjustment to patchset. Applies cleanly.
> 
> Signed-off-by: Christian Melki <[email protected]>
> Message-Id: <[email protected]>
> Signed-off-by: Michael Olbrich <[email protected]>
> 
> diff --git a/patches/qemu-10.0.3/0001-mkvenv-Support-pip-25.2.patch 
> b/patches/qemu-10.0.3/0001-mkvenv-Support-pip-25.2.patch
> deleted file mode 100644
> index 99bb782bccd0..000000000000
> --- a/patches/qemu-10.0.3/0001-mkvenv-Support-pip-25.2.patch
> +++ /dev/null
> @@ -1,129 +0,0 @@
> -From: "Sv. Lockal" <[email protected]>
> -Date: Mon, 11 Aug 2025 15:01:59 -0400
> -Subject: [PATCH] mkvenv: Support pip 25.2
> -
> -Fix compilation with pip-25.2 due to missing distlib.version
> -
> -Bug: https://gitlab.com/qemu-project/qemu/-/issues/3062
> -
> -Signed-off-by: Sv. Lockal <[email protected]>
> -[Edits: Type "safety" whackamole --js]
> -Signed-off-by: John Snow <[email protected]>
> -Message-ID: <[email protected]>
> -Signed-off-by: Stefan Hajnoczi <[email protected]>
> ----
> - python/scripts/mkvenv.py | 64 
> +++++++++++++++++++++++++++++++++++++++++++++---
> - 1 file changed, 60 insertions(+), 4 deletions(-)
> -
> -diff --git a/python/scripts/mkvenv.py b/python/scripts/mkvenv.py
> -index 8ac5b0b2a05c..f102527c4de4 100644
> ---- a/python/scripts/mkvenv.py
> -+++ b/python/scripts/mkvenv.py
> -@@ -84,6 +84,7 @@
> -     Sequence,
> -     Tuple,
> -     Union,
> -+    cast,
> - )
> - import venv
> - 
> -@@ -94,17 +95,39 @@
> - HAVE_DISTLIB = True
> - try:
> -     import distlib.scripts
> --    import distlib.version
> - except ImportError:
> -     try:
> -         # Reach into pip's cookie jar.  pylint and flake8 don't understand
> -         # that these imports will be used via distlib.xxx.
> -         from pip._vendor import distlib
> -         import pip._vendor.distlib.scripts  # noqa, pylint: 
> disable=unused-import
> --        import pip._vendor.distlib.version  # noqa, pylint: 
> disable=unused-import
> -     except ImportError:
> -         HAVE_DISTLIB = False
> - 
> -+# pip 25.2 does not vendor distlib.version, but it uses vendored
> -+# packaging.version
> -+HAVE_DISTLIB_VERSION = True
> -+try:
> -+    import distlib.version  # pylint: disable=ungrouped-imports
> -+except ImportError:
> -+    try:
> -+        # pylint: disable=unused-import,ungrouped-imports
> -+        import pip._vendor.distlib.version  # noqa
> -+    except ImportError:
> -+        HAVE_DISTLIB_VERSION = False
> -+
> -+HAVE_PACKAGING_VERSION = True
> -+try:
> -+    # Do not bother importing non-vendored packaging, because it is not
> -+    # in stdlib.
> -+    from pip._vendor import packaging
> -+    # pylint: disable=unused-import
> -+    import pip._vendor.packaging.requirements  # noqa
> -+    import pip._vendor.packaging.version  # noqa
> -+except ImportError:
> -+    HAVE_PACKAGING_VERSION = False
> -+
> -+
> - # Try to load tomllib, with a fallback to tomli.
> - # HAVE_TOMLLIB is checked below, just-in-time, so that mkvenv does not fail
> - # outside the venv or before a potential call to ensurepip in checkpip().
> -@@ -133,6 +156,39 @@ class Ouch(RuntimeError):
> -     """An Exception class we can't confuse with a builtin."""
> - 
> - 
> -+class Matcher:
> -+    """Compatibility appliance for version/requirement string parsing."""
> -+    def __init__(self, name_and_constraint: str):
> -+        """Create a matcher from a requirement-like string."""
> -+        if HAVE_DISTLIB_VERSION:
> -+            self._m = distlib.version.LegacyMatcher(name_and_constraint)
> -+        elif HAVE_PACKAGING_VERSION:
> -+            self._m = 
> packaging.requirements.Requirement(name_and_constraint)
> -+        else:
> -+            raise Ouch("found neither distlib.version nor 
> packaging.version")
> -+        self.name = self._m.name
> -+
> -+    def match(self, version_str: str) -> bool:
> -+        """Return True if `version` satisfies the stored constraint."""
> -+        if HAVE_DISTLIB_VERSION:
> -+            return cast(
> -+                bool,
> -+                self._m.match(distlib.version.LegacyVersion(version_str))
> -+            )
> -+
> -+        assert HAVE_PACKAGING_VERSION
> -+        return cast(
> -+            bool,
> -+            self._m.specifier.contains(
> -+                packaging.version.Version(version_str), prereleases=True
> -+            )
> -+        )
> -+
> -+    def __repr__(self) -> str:
> -+        """Stable debug representation delegated to the backend."""
> -+        return repr(self._m)
> -+
> -+
> - class QemuEnvBuilder(venv.EnvBuilder):
> -     """
> -     An extension of venv.EnvBuilder for building QEMU's configure-time venv.
> -@@ -669,7 +725,7 @@ def _do_ensure(
> -     canary = None
> -     for name, info in group.items():
> -         constraint = _make_version_constraint(info, False)
> --        matcher = distlib.version.LegacyMatcher(name + constraint)
> -+        matcher = Matcher(name + constraint)
> -         print(f"mkvenv: checking for {matcher}", file=sys.stderr)
> - 
> -         dist: Optional[Distribution] = None
> -@@ -683,7 +739,7 @@ def _do_ensure(
> -             # Always pass installed package to pip, so that they can be
> -             # updated if the requested version changes
> -             or not _is_system_package(dist)
> --            or not 
> matcher.match(distlib.version.LegacyVersion(dist.version))
> -+            or not matcher.match(dist.version)
> -         ):
> -             absent.append(name + _make_version_constraint(info, True))
> -             if len(absent) == 1:
> diff --git 
> a/patches/qemu-10.0.3/0100-9pfs-allow-real-symlinks-for-security_model-mapped-f.patch
>  
> b/patches/qemu-10.1.0/0100-9pfs-allow-real-symlinks-for-security_model-mapped-f.patch
> similarity index 96%
> rename from 
> patches/qemu-10.0.3/0100-9pfs-allow-real-symlinks-for-security_model-mapped-f.patch
> rename to 
> patches/qemu-10.1.0/0100-9pfs-allow-real-symlinks-for-security_model-mapped-f.patch
> index 23fd20fa66c7..edd4e9d10bca 100644
> --- 
> a/patches/qemu-10.0.3/0100-9pfs-allow-real-symlinks-for-security_model-mapped-f.patch
> +++ 
> b/patches/qemu-10.1.0/0100-9pfs-allow-real-symlinks-for-security_model-mapped-f.patch
> @@ -11,7 +11,7 @@ Signed-off-by: Michael Olbrich <[email protected]>
>   1 file changed, 27 insertions(+), 13 deletions(-)
>  
>  diff --git a/hw/9pfs/9p-local.c b/hw/9pfs/9p-local.c
> -index 928523afcc6c..898b54b71dc3 100644
> +index 31e216227cb9..1815a99c9da4 100644
>  --- a/hw/9pfs/9p-local.c
>  +++ b/hw/9pfs/9p-local.c
>  @@ -462,8 +462,7 @@ static ssize_t local_readlink(FsContext *fs_ctx, 
> V9fsPath *fs_path,
> @@ -50,7 +50,7 @@ index 928523afcc6c..898b54b71dc3 100644
>           close_preserve_errno(dirfd);
>       out:
>           g_free(name);
> -@@ -899,18 +910,21 @@ static int local_symlink(FsContext *fs_ctx, const char 
> *oldpath,
> +@@ -902,18 +913,21 @@ static int local_symlink(FsContext *fs_ctx, const char 
> *oldpath,
>           int fd;
>           ssize_t oldpath_size, write_size;
>   
> diff --git a/patches/qemu-10.0.3/series b/patches/qemu-10.1.0/series
> similarity index 66%
> rename from patches/qemu-10.0.3/series
> rename to patches/qemu-10.1.0/series
> index d3850e1476ea..a55ede383bcd 100644
> --- a/patches/qemu-10.0.3/series
> +++ b/patches/qemu-10.1.0/series
> @@ -1,7 +1,6 @@
>  # generated by git-ptx-patches
>  #tag:base --start-number 1
>  #tag:upstream --start-number 1
> -0001-mkvenv-Support-pip-25.2.patch
>  #tag:ptxdist --start-number 100
>  0100-9pfs-allow-real-symlinks-for-security_model-mapped-f.patch
> -# 90df50896012ad0765d46dd687353664  - git-ptx-patches magic
> +# 7c1abd8b5f5ef26378050b669cba203a  - git-ptx-patches magic
> diff --git a/rules/qemu.make b/rules/qemu.make
> index 9d15caa543b7..b168bc203a47 100644
> --- a/rules/qemu.make
> +++ b/rules/qemu.make
> @@ -14,8 +14,8 @@ PACKAGES-$(PTXCONF_QEMU) += qemu
>  #
>  # Paths and names
>  #
> -QEMU_VERSION := 10.0.3
> -QEMU_MD5     := 4a244f485c9d7ac3d40f958f13eae298
> +QEMU_VERSION := 10.1.0
> +QEMU_MD5     := 3bde2d1b18d38d44331a6d9cb0cc3962
>  QEMU         := qemu-$(QEMU_VERSION)
>  QEMU_SUFFIX  := tar.xz
>  QEMU_URL     := https://download.qemu.org/$(QEMU).$(QEMU_SUFFIX)
> @@ -123,6 +123,7 @@ QEMU_CONF_OPT     := \
>       --disable-hv-balloon \
>       --disable-hvf \
>       --enable-iconv \
> +     --disable-igvm \
>       --disable-jack \
>       --disable-keyring \
>       --enable-kvm \
> @@ -155,6 +156,7 @@ QEMU_CONF_OPT     := \
>       --disable-oss \
>       --$(call ptx/endis, PTXCONF_QEMU_PULSEAUDIO)-pa \
>       --disable-parallels \
> +     --disable-passt \
>       --$(call ptx/endis, PTXCONF_QEMU_PIPEWIRE)-pipewire \
>       --$(call ptx/endis, PTXCONF_QEMU_PIXMAN)-pixman \
>       --disable-plugins \
> @@ -189,6 +191,7 @@ QEMU_CONF_OPT     := \
>       --disable-u2f \
>       --disable-uadk \
>       --disable-usb-redir \
> +     --disable-valgrind \
>       --disable-vde \
>       --disable-vdi \
>       --disable-vduse-blk-export \

Reply via email to