git: 872fc1b8de1a - main - arm64/vmm: Don't load on Ampere eMAG
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 27 Mar 2025 13:47:48 UTC
The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=872fc1b8de1ac2a10465a315457cd69b4268cbe9 commit 872fc1b8de1ac2a10465a315457cd69b4268cbe9 Author: Andrew Turner <andrew@FreeBSD.org> AuthorDate: 2025-03-27 13:17:30 +0000 Commit: Andrew Turner <andrew@FreeBSD.org> CommitDate: 2025-03-27 13:47:37 +0000 arm64/vmm: Don't load on Ampere eMAG Loading vmm.ko on Ampere eMAG locks up the system. Block loading for now until it can be fixed. PR: 285051 Reviewed by: tuexen Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D49155 --- sys/arm64/vmm/vmm.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/sys/arm64/vmm/vmm.c b/sys/arm64/vmm/vmm.c index ad82e6dbd432..f28643db99d2 100644 --- a/sys/arm64/vmm/vmm.c +++ b/sys/arm64/vmm/vmm.c @@ -310,6 +310,20 @@ vm_exitinfo(struct vcpu *vcpu) return (&vcpu->exitinfo); } +static int +vmm_unsupported_quirk(void) +{ + /* + * Known to not load on Ampere eMAG + * https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=285051 + */ + if (CPU_MATCH(CPU_IMPL_MASK | CPU_PART_MASK, CPU_IMPL_APM, + CPU_PART_EMAG8180, 0, 0)) + return (ENXIO); + + return (0); +} + static int vmm_init(void) { @@ -339,6 +353,9 @@ vmm_handler(module_t mod, int what, void *arg) switch (what) { case MOD_LOAD: + error = vmm_unsupported_quirk(); + if (error != 0) + break; error = vmmdev_init(); if (error != 0) break;