pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/emulators/qemu qemu: Fix build on NetBSD/x86 9.0



details:   https://anonhg.NetBSD.org/pkgsrc/rev/27415c698353
branches:  trunk
changeset: 453691:27415c698353
user:      nia <nia%pkgsrc.org@localhost>
date:      Tue Jun 01 16:28:05 2021 +0000

description:
qemu: Fix build on NetBSD/x86 9.0

Based on an earlier NVMM patch reinoud sent to qemu-devel.

diffstat:

 emulators/qemu/distinfo                                  |   4 ++--
 emulators/qemu/patches/patch-target_i386_nvmm_nvmm-all.c |  16 +++++++++++++---
 2 files changed, 15 insertions(+), 5 deletions(-)

diffs (72 lines):

diff -r 02a0ddabfe7b -r 27415c698353 emulators/qemu/distinfo
--- a/emulators/qemu/distinfo   Tue Jun 01 15:41:12 2021 +0000
+++ b/emulators/qemu/distinfo   Tue Jun 01 16:28:05 2021 +0000
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.178 2021/05/24 14:22:08 ryoon Exp $
+$NetBSD: distinfo,v 1.179 2021/06/01 16:28:05 nia Exp $
 
 SHA1 (palcode-clipper-qemu-5.2.0nb8) = ddbf1dffb7c2b2157e0bbe9fb7db7e57105130b1
 RMD160 (palcode-clipper-qemu-5.2.0nb8) = 3f9fe19a40f7ca72ecfe047d1449e55b63cba3ee
@@ -51,5 +51,5 @@
 SHA1 (patch-target_i386_nvmm_meson.build) = c773fbed28a87f53263ab5299a63ca77423d164f
 SHA1 (patch-target_i386_nvmm_nvmm-accel-ops.c) = fdc29ccd0fcd47b72e7802655fe92b08f7d22bb9
 SHA1 (patch-target_i386_nvmm_nvmm-accel-ops.h) = 74d6442e1ac1cdf187996f3dd82bb3efddc002ec
-SHA1 (patch-target_i386_nvmm_nvmm-all.c) = cd75f6a584920093407ec254b9276b056f83132e
+SHA1 (patch-target_i386_nvmm_nvmm-all.c) = 6370f1f6336546b24d9c3493cd0b27ca6843f35d
 SHA1 (patch-target_sparc_translate.c) = 7ec2add2fd808facb48b9a66ccc345599251bf76
diff -r 02a0ddabfe7b -r 27415c698353 emulators/qemu/patches/patch-target_i386_nvmm_nvmm-all.c
--- a/emulators/qemu/patches/patch-target_i386_nvmm_nvmm-all.c  Tue Jun 01 15:41:12 2021 +0000
+++ b/emulators/qemu/patches/patch-target_i386_nvmm_nvmm-all.c  Tue Jun 01 16:28:05 2021 +0000
@@ -1,8 +1,8 @@
-$NetBSD: patch-target_i386_nvmm_nvmm-all.c,v 1.1 2021/05/24 14:22:08 ryoon Exp $
+$NetBSD: patch-target_i386_nvmm_nvmm-all.c,v 1.2 2021/06/01 16:28:05 nia Exp $
 
---- target/i386/nvmm/nvmm-all.c.orig   2021-05-06 05:09:24.911125954 +0000
+--- target/i386/nvmm/nvmm-all.c.orig   2021-06-01 15:07:31.572325819 +0000
 +++ target/i386/nvmm/nvmm-all.c
-@@ -0,0 +1,1226 @@
+@@ -0,0 +1,1236 @@
 +/*
 + * Copyright (c) 2018-2019 Maxime Villard, All rights reserved.
 + *
@@ -755,7 +755,11 @@
 +        nvmm_vcpu_pre_run(cpu);
 +
 +        if (qatomic_read(&cpu->exit_request)) {
++#if NVMM_USER_VERSION >= 2
 +            nvmm_vcpu_stop(vcpu);
++#else
++            qemu_cpu_kick_self();
++#endif
 +        }
 +
 +        /* Read exit_request before the kernel reads the immediate exit flag */
@@ -772,6 +776,7 @@
 +        switch (exit->reason) {
 +        case NVMM_VCPU_EXIT_NONE:
 +            break;
++#if NVMM_USER_VERSION >= 2
 +        case NVMM_VCPU_EXIT_STOPPED:
 +            /*
 +             * The kernel cleared the immediate exit flag; cpu->exit_request
@@ -780,6 +785,7 @@
 +            smp_wmb();
 +            qcpu->stop = true;
 +            break;
++#endif
 +        case NVMM_VCPU_EXIT_MEMORY:
 +            ret = nvmm_handle_mem(mach, vcpu);
 +            break;
@@ -893,8 +899,12 @@
 +{
 +    if (current_cpu) {
 +        struct qemu_vcpu *qcpu = get_qemu_vcpu(current_cpu);
++#if NVMM_USER_VERSION >= 2
 +        struct nvmm_vcpu *vcpu = &qcpu->vcpu;
 +        nvmm_vcpu_stop(vcpu);
++#else
++        qcpu->stop = true;
++#endif
 +    }
 +}
 +



Home | Main Index | Thread Index | Old Index