yuichi_xy への返信
Guest state of CPU0 ---------------------------- RAX 00000000 RCX 00000003 RDX 000003F9 RBX FFFFFFFF81551A5A RSP FFFFFFFF8142FDC8 RBP 00000000 RSI 000003F8 RDI FFFFFFFF81551A58 R8 0000002C R9 0000000A R10 00000004 R11 81551A60 R12 FFFFFFFF81551A54 R13 FFFFFFFF81551A60 R14 00000046 R15 FFFFFFFF813A1518 CR0 80050033 CR2 00000000 CR3 01001000 CR4 000000A0
RDXに000003f9という値が入っているので、シリアルポートが関連している可能性があります。 そこで、Guest Linuxのブートパラメータからconsole=ttyS0,115200とearlyprintk=ttyS0,115200を削除してみたところ、 Guest Linuxが「Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled」というメッセージを出力するまで、先に進みました。
シリアルエミュレータから I/O APIC エミュレータを経由してベクタ 0 の割り込みを vm0 に Inject してしまうことが原因でした。 r38 で修正しました。
本バグを修正したところ、Guest Linuxの起動が先に進みましたが、udevの起動中にストールしました。 #28662を発行しましたので、本チケットはcloseします。
QEMU上でTinyVisorを動かすと、Guest Linux の起動中にパニックしました。 VMMが割り込みを有効化した時に、ベクタ0の割り込みが発生してしまったようです。
障害発生リビジョン: trunk の r37
関連チケット: #28386