pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/emulators/qemu
Module Name: pkgsrc
Committed By: riastradh
Date: Fri Jan 2 05:16:24 UTC 2026
Modified Files:
pkgsrc/emulators/qemu: Makefile distinfo
Added Files:
pkgsrc/emulators/qemu/patches: patch-hw_pci-host_q35.c
Log Message:
emulators/qemu: Allow VGA register access with smm=off.
PR kern/59721: qemu VM's blackscreen over VNC wth -machine q35
https://gnats.NetBSD.org/59721
https://gitlab.com/qemu-project/qemu/-/issues/2608
To generate a diff of this commit:
cvs rdiff -u -r1.391 -r1.392 pkgsrc/emulators/qemu/Makefile
cvs rdiff -u -r1.243 -r1.244 pkgsrc/emulators/qemu/distinfo
cvs rdiff -u -r0 -r1.1 pkgsrc/emulators/qemu/patches/patch-hw_pci-host_q35.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/emulators/qemu/Makefile
diff -u pkgsrc/emulators/qemu/Makefile:1.391 pkgsrc/emulators/qemu/Makefile:1.392
--- pkgsrc/emulators/qemu/Makefile:1.391 Fri Dec 12 09:42:00 2025
+++ pkgsrc/emulators/qemu/Makefile Fri Jan 2 05:16:24 2026
@@ -1,8 +1,9 @@
-# $NetBSD: Makefile,v 1.391 2025/12/12 09:42:00 adam Exp $
+# $NetBSD: Makefile,v 1.392 2026/01/02 05:16:24 riastradh Exp $
.include "../../emulators/qemu/version.mk"
DISTNAME= qemu-${QEMU_VERSION}
+PKGREVISION= 1
CATEGORIES= emulators
MASTER_SITES= https://download.qemu.org/
EXTRACT_SUFX= .tar.xz
Index: pkgsrc/emulators/qemu/distinfo
diff -u pkgsrc/emulators/qemu/distinfo:1.243 pkgsrc/emulators/qemu/distinfo:1.244
--- pkgsrc/emulators/qemu/distinfo:1.243 Fri Dec 12 09:42:00 2025
+++ pkgsrc/emulators/qemu/distinfo Fri Jan 2 05:16:24 2026
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.243 2025/12/12 09:42:00 adam Exp $
+$NetBSD: distinfo,v 1.244 2026/01/02 05:16:24 riastradh Exp $
BLAKE2s (palcode-clipper-qemu-5.2.0nb8) = d388c896a80c1cc3d4785c8434d6688bbcfd54c28f7252ce550ab162a0bba321
SHA512 (palcode-clipper-qemu-5.2.0nb8) = 33695d6001d86a19793a92d5e31775607c4dfc9ab9eea019ea6c4d543a2e11e8c07f83cca4934811a13ef829b528737ea37d9d2aaf66cba6f2746d44d2aa0b43
@@ -19,6 +19,7 @@ SHA1 (patch-hw_9pfs_codir.c) = c065762ee
SHA1 (patch-hw_9pfs_meson.build) = d6d754fb38b4b0f95bdb8bebbe18e8adad035e26
SHA1 (patch-hw_mips_meson.build) = 06cc199b3b15add9f5d5ddcd84bf2791f96bd5d3
SHA1 (patch-hw_net_xilinx__axienet.c) = ebcd2676d64ce6f31e4a8c976d4fdf530ad5e8b7
+SHA1 (patch-hw_pci-host_q35.c) = 363877618de78b422e53098808add0d7d653a612
SHA1 (patch-hw_rtc_mc146818rtc.c) = cc7a3b28010966b65b7a16db756226ac2669f310
SHA1 (patch-hw_scsi_scsi-disk.c) = fdbf2f962a6dcb1a115a7f8a5b8790ff9295fb33
SHA1 (patch-hw_usb_dev-mtp.c) = f148a3ad6d72eb29f85684316af5fb219ddaeb71
Added files:
Index: pkgsrc/emulators/qemu/patches/patch-hw_pci-host_q35.c
diff -u /dev/null pkgsrc/emulators/qemu/patches/patch-hw_pci-host_q35.c:1.1
--- /dev/null Fri Jan 2 05:16:24 2026
+++ pkgsrc/emulators/qemu/patches/patch-hw_pci-host_q35.c Fri Jan 2 05:16:24 2026
@@ -0,0 +1,72 @@
+$NetBSD: patch-hw_pci-host_q35.c,v 1.1 2026/01/02 05:16:24 riastradh Exp $
+
+Work around black screen in VGA mode with SMM disabled, as required by,
+e.g., NVMM:
+
+https://gnats.NetBSD.org/59721
+https://gitlab.com/qemu-project/qemu/-/issues/2608
+
+--- hw/pci-host/q35.c.orig 2025-10-08 20:50:34.000000000 +0000
++++ hw/pci-host/q35.c
+@@ -373,6 +373,10 @@ static void mch_update_smram(MCHPCIState
+ memory_region_set_enabled(&mch->high_smram, false);
+ }
+
++ if (!mch->has_smm_ranges) {
++ goto out;
++ }
++
+ if ((pd->config[MCH_HOST_BRIDGE_ESMRAMC] & MCH_HOST_BRIDGE_ESMRAMC_T_EN) &&
+ (pd->config[MCH_HOST_BRIDGE_SMRAM] & SMRAM_G_SMRAME)) {
+ switch (pd->config[MCH_HOST_BRIDGE_ESMRAMC] &
+@@ -406,7 +410,7 @@ static void mch_update_smram(MCHPCIState
+ mch->below_4g_mem_size - tseg_size);
+ memory_region_set_alias_offset(&mch->tseg_window,
+ mch->below_4g_mem_size - tseg_size);
+-
++out:
+ memory_region_transaction_commit();
+ }
+
+@@ -478,15 +482,15 @@ static void mch_write_config(PCIDevice *
+ mch_update_pciexbar(mch);
+ }
+
+- if (!mch->has_smm_ranges) {
+- return;
+- }
+-
+ if (ranges_overlap(address, len, MCH_HOST_BRIDGE_SMRAM,
+ MCH_HOST_BRIDGE_SMRAM_SIZE)) {
+ mch_update_smram(mch);
+ }
+
++ if (!mch->has_smm_ranges) {
++ return;
++ }
++
+ if (ranges_overlap(address, len, MCH_HOST_BRIDGE_EXT_TSEG_MBYTES,
+ MCH_HOST_BRIDGE_EXT_TSEG_MBYTES_SIZE)) {
+ mch_update_ext_tseg_mbytes(mch);
+@@ -589,10 +593,6 @@ static void mch_realize(PCIDevice *d, Er
+ PAM_EXPAN_BASE + i * PAM_EXPAN_SIZE, PAM_EXPAN_SIZE);
+ }
+
+- if (!mch->has_smm_ranges) {
+- return;
+- }
+-
+ /* if *disabled* show SMRAM to all CPUs */
+ memory_region_init_alias(&mch->smram_region, OBJECT(mch), "smram-region",
+ mch->pci_address_space, MCH_HOST_BRIDGE_SMRAM_C_BASE,
+@@ -608,6 +608,10 @@ static void mch_realize(PCIDevice *d, Er
+ &mch->open_high_smram, 1);
+ memory_region_set_enabled(&mch->open_high_smram, false);
+
++ if (!mch->has_smm_ranges) {
++ return;
++ }
++
+ /* smram, as seen by SMM CPUs */
+ memory_region_init(&mch->smram, OBJECT(mch), "smram", 4 * GiB);
+ memory_region_set_enabled(&mch->smram, true);
Home |
Main Index |
Thread Index |
Old Index