Re: Intermittent Qemu boot hang/regression traced back to INT 0x80 changes

From: Dave Hansen
Date: Wed Apr 24 2024 - 16:04:05 EST


On 4/24/24 11:58, Paul Gortmaker wrote:
> pci 0000:00:1d.0: [8086:2934] type 00 class 0x0c0300 conventional PCI endpoint
> pci 0000:00:1d.0: BAR 4 [io 0xc080-0xc09f]
> pci 0000:00:1d.1: [8086:2935] type 00 class 0x0c0300 conventional PCI endpoint
> pci 0000:00:1d.1: BAR 4 [io 0xc0a0-0xc0bf]
> pci 0000:00:1d.2: [8086:2936] type 00 class 0x0c0300 conventional PCI endpoint
> <hang - not always exactly here, but always in this block of PCI printk>

Any chance you can figure out what the virtual CPU is doing while it's
hung? Maybe run these a couple of times on the qemu monitor?

info registers
info irqs
info lapic

to see if it's taking a bunch of interrupts and whether RIP is still
moving around. A couple of samples of RIP (matched back to the kernel
code via vmlinux) can go a long way to figuring out why it's hung.

I take it that this is before sysrq is working? If it isn't too early:

sendkey alt-sysrq-t

is always handy.

Otherwise, I'm a bit stumped. This code shouldn't even be called before
userspace starts up. Heck you don't even have CONFIG_IA32_EMULATION on
in your .config.