Skip to content

Commit 0582803

Browse files
authored
Merge pull request #3227 from AkihiroSuda/fix-3226
qemu: revert "Restrict pessimization of M4 arch to macOS 15.2"; upgrade Cortex-A72 to Cortex-A76
2 parents b3c2590 + 8c48cb3 commit 0582803

File tree

3 files changed

+16
-13
lines changed

3 files changed

+16
-13
lines changed

Diff for: pkg/limayaml/defaults.go

+14-11
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ var (
5656

5757
func defaultCPUType() CPUType {
5858
cpuType := map[Arch]string{
59-
AARCH64: "cortex-a72",
59+
AARCH64: "cortex-a76", // available since QEMU 7.1 (Aug 2022)
6060
ARMV7L: "cortex-a7",
6161
// Since https://github.com/lima-vm/lima/pull/494, we use qemu64 cpu for better emulation of x86_64.
6262
X8664: "qemu64",
@@ -1203,16 +1203,19 @@ func HasHostCPU() bool {
12031203
switch runtime.GOOS {
12041204
case "darwin":
12051205
if hasSMEDarwin() {
1206-
macOSProductVersion, err := osutil.ProductVersion()
1207-
if err != nil || (macOSProductVersion.Major == 15 && macOSProductVersion.Minor == 2) {
1208-
// SME is available since Apple M4 running macOS 15.2, but it was broken on macOS 15.2.
1209-
// It has been fixed in 15.3.
1210-
//
1211-
// https://github.com/lima-vm/lima/issues/3032
1212-
// https://gitlab.com/qemu-project/qemu/-/issues/2665
1213-
// https://gitlab.com/qemu-project/qemu/-/issues/2721
1214-
return false
1215-
}
1206+
// [2025-02-05]
1207+
// SME is available since Apple M4 running macOS 15.2, but it was broken on macOS 15.2.
1208+
// It has been fixed in 15.3.
1209+
//
1210+
// https://github.com/lima-vm/lima/issues/3032
1211+
// https://gitlab.com/qemu-project/qemu/-/issues/2665
1212+
// https://gitlab.com/qemu-project/qemu/-/issues/2721
1213+
1214+
// [2025-02-12]
1215+
// SME got broken again after upgrading QEMU from 9.2.0 to 9.2.1 (Homebrew bottle).
1216+
// Possibly this regression happened in some build process rather than in QEMU itself?
1217+
// https://github.com/lima-vm/lima/issues/3226
1218+
return false
12161219
}
12171220
return true
12181221
case "linux":

Diff for: templates/default.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -314,7 +314,7 @@ os: null
314314
# Setting of instructions is supported like this: "qemu64,+ssse3".
315315
# 🟢 Builtin default: hard-coded arch map with type (see the output of `limactl info | jq .defaultTemplate.cpuType`)
316316
cpuType:
317-
# aarch64: "cortex-a72" # (or "host" when running on aarch64 host)
317+
# aarch64: "cortex-a76" # (or "host" when running on aarch64 host)
318318
# armv7l: "cortex-a7" # (or "host" when running on armv7l host)
319319
# riscv64: "rv64" # (or "host" when running on riscv64 host)
320320
# x86_64: "qemu64" # (or "host,-pdpe1gb" when running on x86_64 host)

Diff for: website/content/en/docs/installation/_index.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Supported host OS:
99
- Windows (untested)
1010

1111
Prerequisite:
12-
- QEMU 7.0 or later (Required, only if QEMU driver is used)
12+
- QEMU 7.1 or later (Required, only if QEMU driver is used)
1313

1414
{{< tabpane text=true >}}
1515

0 commit comments

Comments
 (0)