qemuとlapicとSMP環境
qemuでxv6のSMP対応の処理を追いかけていたらsmpオプションをつけているのに、lapicで1コア分しかapicidが取得できない事象が発生。xv6側の問題かと思って試行錯誤したが解消できず。SDMを見直したが間違いないように見える。結局、偶然qemu起動オプションでsockets/cores指定を行うことで解消できた。qemuマニュアルでは見つけられずちょっと苦戦。
問題発生時のqemu起動オプション
問題解消したqemu起動オプション
$qemu-system-i386 (中略) -smp 2,sockets=2,cores=1
環境
$qemu-system-i386 --version
QEMU emulator version 7.0.0
Copyright (c) 2003-2022 Fabrice Bellard and the QEMU Project developers