Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package xen for openSUSE:Factory checked in at 2023-07-09 20:40:46 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/xen (Old) and /work/SRC/openSUSE:Factory/.xen.new.23466 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xen" Sun Jul 9 20:40:46 2023 rev:333 rq:1097441 version:4.17.1_06 Changes: -------- --- /work/SRC/openSUSE:Factory/xen/xen.changes 2023-05-26 20:15:37.788318570 +0200 +++ /work/SRC/openSUSE:Factory/.xen.new.23466/xen.changes 2023-07-09 20:42:51.694040301 +0200 @@ -1,0 +2,9 @@ +Thu Jul 6 13:41:00 CET 2023 - jbeul...@suse.com + +- Upstream bug fixes (bsc#1027519) + 645dec48-AMD-IOMMU-assert-boolean-enum.patch + 646b782b-PCI-pci_get_pdev-respect-segment.patch + 647dfb0e-x86-missing-unlock-in-microcode_update_helper.patch + 648863fc-AMD-IOMMU-Invalidate-All-check.patch + +------------------------------------------------------------------- New: ---- 645dec48-AMD-IOMMU-assert-boolean-enum.patch 646b782b-PCI-pci_get_pdev-respect-segment.patch 647dfb0e-x86-missing-unlock-in-microcode_update_helper.patch 648863fc-AMD-IOMMU-Invalidate-All-check.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xen.spec ++++++ --- /var/tmp/diff_new_pack.1m0yOy/_old 2023-07-09 20:42:53.314050047 +0200 +++ /var/tmp/diff_new_pack.1m0yOy/_new 2023-07-09 20:42:53.318050071 +0200 @@ -119,7 +119,7 @@ %endif Provides: installhint(reboot-needed) -Version: 4.17.1_04 +Version: 4.17.1_06 Release: 0 Summary: Xen Virtualization: Hypervisor (aka VMM aka Microkernel) License: GPL-2.0-only @@ -160,7 +160,11 @@ Patch3: 643e387f-xen-update-CONFIG_DEBUG_INFO-help-text.patch Patch4: 6447a8fd-x86-EFI-permit-crash-dump-analysis.patch Patch5: 64525c61-tools-libs-guest-assist-gcc13s-realloc-analyzer.patch -Patch6: 64639e84-amd-fix-legacy-setting-of-SSBD-on-AMD-Family-17h.patch +Patch6: 645dec48-AMD-IOMMU-assert-boolean-enum.patch +Patch7: 64639e84-amd-fix-legacy-setting-of-SSBD-on-AMD-Family-17h.patch +Patch8: 646b782b-PCI-pci_get_pdev-respect-segment.patch +Patch9: 647dfb0e-x86-missing-unlock-in-microcode_update_helper.patch +Patch10: 648863fc-AMD-IOMMU-Invalidate-All-check.patch # EMBARGOED security fixes # libxc Patch301: libxc-bitmap-long.patch ++++++ 645dec48-AMD-IOMMU-assert-boolean-enum.patch ++++++ # Commit 4c507d8a6b6e8be90881a335b0a66eb28e0f7737 # Date 2023-05-12 09:35:36 +0200 # Author Roger Pau Monné <roger....@citrix.com> # Committer Jan Beulich <jbeul...@suse.com> iommu/amd-vi: fix assert comparing boolean to enum Or else when iommu_intremap is set to iommu_intremap_full the assert triggers. Fixes: 1ba66a870eba ('AMD/IOMMU: without XT, x2APIC needs to be forced into physical mode') Signed-off-by: Roger Pau Monné <roger....@citrix.com> Reviewed-by: Jan Beulich <jbeul...@suse.com> --- a/xen/drivers/passthrough/amd/pci_amd_iommu.c +++ b/xen/drivers/passthrough/amd/pci_amd_iommu.c @@ -240,7 +240,7 @@ static int __must_check amd_iommu_setup_ */ if ( dte->it_root ) ASSERT(dte->int_ctl == IOMMU_DEV_TABLE_INT_CONTROL_TRANSLATED); - ASSERT(dte->iv == iommu_intremap); + ASSERT(dte->iv == !!iommu_intremap); ASSERT(dte->ex == ivrs_dev->dte_allow_exclusion); ASSERT(dte->sys_mgt == MASK_EXTR(ivrs_dev->device_flags, ACPI_IVHD_SYSTEM_MGMT)); ++++++ 646b782b-PCI-pci_get_pdev-respect-segment.patch ++++++ # Commit c7908869ac26961a3919491705e521179ad3fc0e # Date 2023-05-22 16:11:55 +0200 # Author Roger Pau Monné <roger....@citrix.com> # Committer Jan Beulich <jbeul...@suse.com> pci: fix pci_get_pdev() to always account for the segment When a domain parameter is provided to pci_get_pdev() the search function would match against the bdf, without taking the segment into account. Fix this and also account for the passed segment. Fixes: 8cf6e0738906 ('PCI: simplify (and thus correct) pci_get_pdev{,_by_domain}()') Signed-off-by: Roger Pau Monné <roger....@citrix.com> Reviewed-by: Andrew Cooper <andrew.coop...@citrix.com> Reviewed-by: Jan Beulich <jbeul...@suse.com> --- a/xen/drivers/passthrough/pci.c +++ b/xen/drivers/passthrough/pci.c @@ -552,7 +552,7 @@ struct pci_dev *pci_get_pdev(const struc } else list_for_each_entry ( pdev, &d->pdev_list, domain_list ) - if ( pdev->sbdf.bdf == sbdf.bdf ) + if ( pdev->sbdf.sbdf == sbdf.sbdf ) return pdev; return NULL; ++++++ 647dfb0e-x86-missing-unlock-in-microcode_update_helper.patch ++++++ # Commit b35b22acb887f682efe8385b3df165220bc84c86 # Date 2023-06-05 16:11:10 +0100 # Author Alejandro Vallejo <alejandro.vall...@cloud.com> # Committer Andrew Cooper <andrew.coop...@citrix.com> x86/microcode: Add missing unlock in microcode_update_helper() microcode_update_helper() may return early while holding cpu_add_remove_lock, hence preventing any writers from taking it again. Leave through the `put` label instead so it's properly released. Fixes: 5ed12565aa32 ("microcode: rendezvous CPUs in NMI handler and load ucode") Signed-off-by: Alejandro Vallejo <alejandro.vall...@cloud.com> Reviewed-by: Andrew Cooper <andrew.coop...@citrix.com> --- a/xen/arch/x86/cpu/microcode/core.c +++ b/xen/arch/x86/cpu/microcode/core.c @@ -596,7 +596,8 @@ static long cf_check microcode_update_he printk(XENLOG_WARNING "CPU%u is expected to lead ucode loading (but got CPU%u)\n", nmi_cpu, cpumask_first(&cpu_online_map)); - return -EPERM; + ret = -EPERM; + goto put; } patch = parse_blob(buffer->buffer, buffer->len); ++++++ 648863fc-AMD-IOMMU-Invalidate-All-check.patch ++++++ # Commit 5ecbb779748a56495f2c892f0610d57dd623c7cd # Date 2023-06-13 14:41:32 +0200 # Author Roger Pau Monné <roger....@citrix.com> # Committer Jan Beulich <jbeul...@suse.com> iommu/amd-vi: fix checking for Invalidate All support in amd_iommu_resume() The iommu local variable does not point to to a valid amd_iommu element after the call to for_each_amd_iommu(). Instead check whether any IOMMU on the system doesn't support Invalidate All in order to perform the per-domain and per-device flushes. Fixes: 9c46139de889 ('amd iommu: Support INVALIDATE_IOMMU_ALL command.') Signed-off-by: Roger Pau Monné <roger....@citrix.com> Reviewed-by: Jan Beulich <jbeul...@suse.com> --- a/xen/drivers/passthrough/amd/iommu_init.c +++ b/xen/drivers/passthrough/amd/iommu_init.c @@ -1578,6 +1578,7 @@ void cf_check amd_iommu_crash_shutdown(v void cf_check amd_iommu_resume(void) { struct amd_iommu *iommu; + bool invalidate_all = true; for_each_amd_iommu ( iommu ) { @@ -1587,10 +1588,12 @@ void cf_check amd_iommu_resume(void) */ disable_iommu(iommu); enable_iommu(iommu); + if ( !iommu->features.flds.ia_sup ) + invalidate_all = false; } /* flush all cache entries after iommu re-enabled */ - if ( !iommu->features.flds.ia_sup ) + if ( !invalidate_all ) { invalidate_all_devices(); invalidate_all_domain_pages();