general protection fault panic

John Baldwin jhb at freebsd.org
Mon Mar 26 17:55:42 UTC 2012


On Monday, March 26, 2012 1:41:55 pm Steve Kargl wrote:
> On Mon, Mar 26, 2012 at 01:18:37PM -0400, John Baldwin wrote:
> > On Monday, March 26, 2012 12:21:29 pm Steve Kargl wrote:
> > 
> > You know your APIC ID is 0, so you should be able to find the IRQ for vector 
> > 51 from here in apic_idt_to_irq():
> > 
> > 	irq = lapics[apic_id].la_ioint_irqs[vector - APIC_IO_INTS];
> > 
> > Your apic_id is 0, and APIC_IO_INTS is 48, so you should be able to do this
> > in kgdb:
> > 
> > p lapics[0].la_ioint_irqs[3]
> > 
> > That should give you an index, and intr_lookup_source() just does an array
> > lookup.  However, I'd be curious to see what the assembly looks like
> > (x/10i $rip at this frame).
> > 
> 
> 
> (kgdb) p lapics[0].la_ioint_irqs[3]
> $1 = 16
> (kgdb) frame 27
> #27 0xffffffff806dc186 in acpi_cpu_c1 ()
>     at /usr/src/sys/amd64/acpica/acpi_machdep.c:97

Sorry, I meant down at the frame that faulted (frame 7 in this case).

-- 
John Baldwin


More information about the freebsd-current mailing list