Current panic on boot on H11DSI motherboard with epyc cpu (nexus_add_irq: failed)
John Baldwin
jhb at freebsd.org
Wed Apr 18 18:42:52 UTC 2018
On Wednesday, April 18, 2018 01:56:49 PM Vitalij Satanivskij wrote:
> JB> > If you need any aditional information please tell me about.
> JB>
> JB> Can you perhaps turn off the stack trace on boot to not lose the panic messages
> JB> (remove KDB_TRACE from kernel config) and maybe modify the panic message to
> JB> include the IRQ number passed to nexus_add_irq?
>
>
> Hm looks like it's always irq with number 256
> eg hpet - 256
> igb - 256
>
> Chenged made for it was
>
> Index: sys/x86/x86/nexus.c
> ===================================================================
> --- sys/x86/x86/nexus.c (revision 332663)
> +++ sys/x86/x86/nexus.c (working copy)
> @@ -698,7 +698,7 @@
> {
>
> if (rman_manage_region(&irq_rman, irq, irq) != 0)
> - panic("%s: failed", __func__);
> + panic("%s: failed irq is: %lu", __func__, irq);
> }
Ohhhh, this is a different issue. Sorry. As a hack, try changing
'FIRST_MSI_INT' to 512 in sys/amd64/include/intr_machdep.h. The issue
is that some systems now include more than 256 interrupt pins on I/O
APICs, so IRQ 256 is already reserved for use by one of those
interrupt pins. The real fix is that I need to make FIRST_MSI_INT
dynamic instead of a constant and just define it as the first free IRQ
after the I/O APICs have probed.
--
John Baldwin
More information about the freebsd-hackers
mailing list