Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 28 Mar 2026 05:56:35 +0000
From:      Colin Percival <cperciva@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: 49b6254b3e09 - main - vmm: Move defines from x86.c to x86/bhyve.h
Message-ID:  <69c76d93.40309.5d34ce18@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch main has been updated by cperciva:

URL: https://cgit.FreeBSD.org/src/commit/?id=49b6254b3e09ee741f456617111ecb18803459fb

commit 49b6254b3e09ee741f456617111ecb18803459fb
Author:     Colin Percival <cperciva@FreeBSD.org>
AuthorDate: 2026-02-22 04:09:00 +0000
Commit:     Colin Percival <cperciva@FreeBSD.org>
CommitDate: 2026-03-28 05:54:49 +0000

    vmm: Move defines from x86.c to x86/bhyve.h
    
    The values CPUID_BHYVE_FEATURES and CPUID_BHYVE_FEAT_EXT_DEST_ID are
    useful for guests, not just hosts; so they belong in a header file in
    sys/x86/include rather than simply in the .c file implementing the
    bhyve host side.
    
    The original addition of these defines took place without adding a
    copyright statement, but since I'm moving them into a new file I've
    added the original author's standard copyright (Amazon).
    
    MFC after:      3 weeks
    Fixes:  313a68ea20b4 ("bhyve: Add CPUID_BHYVE_FEATURES leaf")
    Sponsored by:   Amazon
    Differential Revision:  https://reviews.freebsd.org/D55430
---
 sys/amd64/vmm/x86.c     |  5 +----
 sys/x86/include/bhyve.h | 35 +++++++++++++++++++++++++++++++++++
 2 files changed, 36 insertions(+), 4 deletions(-)

diff --git a/sys/amd64/vmm/x86.c b/sys/amd64/vmm/x86.c
index f32107124eb8..6794110f067a 100644
--- a/sys/amd64/vmm/x86.c
+++ b/sys/amd64/vmm/x86.c
@@ -37,6 +37,7 @@
 #include <machine/segments.h>
 #include <machine/specialreg.h>
 #include <machine/vmm.h>
+#include <x86/bhyve.h>
 
 #include <dev/vmm/vmm_ktr.h>
 #include <dev/vmm/vmm_vm.h>
@@ -50,12 +51,8 @@ static SYSCTL_NODE(_hw_vmm, OID_AUTO, topology, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
     NULL);
 
 #define CPUID_VM_SIGNATURE	0x40000000
-#define CPUID_BHYVE_FEATURES	0x40000001
 #define	CPUID_VM_HIGH		CPUID_BHYVE_FEATURES
 
-/* Features advertised in CPUID_BHYVE_FEATURES %eax */
-#define CPUID_BHYVE_FEAT_EXT_DEST_ID	(1UL << 0) /* MSI Extended Dest ID */
-
 static const char bhyve_id[12] = "bhyve bhyve ";
 
 static uint64_t bhyve_xcpuids;
diff --git a/sys/x86/include/bhyve.h b/sys/x86/include/bhyve.h
new file mode 100644
index 000000000000..215bee90bd1a
--- /dev/null
+++ b/sys/x86/include/bhyve.h
@@ -0,0 +1,35 @@
+/*-
+ * SPDX-License-Identifier: BSD-2-Clause
+ *
+ * Copyright © 2025 Amazon.com, Inc. or its affiliates.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#ifndef _X86_BHYVE_H_
+#define	_X86_BHYVE_H_
+
+/* Bhyve feature detection */
+#define CPUID_BHYVE_FEATURES		0x40000001
+#define CPUID_BHYVE_FEAT_EXT_DEST_ID	(1UL << 0) /* MSI Extended Dest ID */
+
+#endif


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?69c76d93.40309.5d34ce18>