NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: port-i386/37982: i486DX system panics while probing for NPX on isa bus



On Feb 8,  4:30pm, jarle%uninett.no@localhost (jarle%uninett.no@localhost) 
wrote:
-- Subject: port-i386/37982: i486DX system panics while probing for NPX on is

| >Number:         37982
| >Category:       port-i386
| >Synopsis:       i486DX system panics while probing for NPX on isa bus
| >Confidential:   no
| >Severity:       serious
| >Priority:       high
| >Responsible:    port-i386-maintainer
| >State:          open
| >Class:          sw-bug
| >Submitter-Id:   net
| >Arrival-Date:   Fri Feb 08 16:30:00 +0000 2008
| >Originator:     Jarle Greipsland
| >Release:        NetBSD -current
| >Organization:
|       
| >Environment:
|       
|       
| System: NetBSD 4.99.53
| Architecture: i386
| Machine: i386
| >Description:
| I just compiled a custom -current kernel for my i486DX2-based system, and
| when I tried to boot it it panicked during the autoconfigure stage.  The
| ten finger console log is:
| 
| panic: idt_vec_reserve: failed to reserve vec 45
| Stopped in pid 0.1 (system) at netbsd:breakpoint+0x4: popl  %ebp
| db> trace
| breakpoint(...)
| panic(...)
| idt_vec_reserve(2d,f0,0,0,0) at netbsd:idt_vec_reserve+0x39
| npxprobe1(0,f0,d,0,c043a9ec) at netbsd:npxprobe1+0x1aa
| npx_isa_probe(...) at netbsd:npx_isa_probe+0x7e
| isasearch(...)
| mapply(...)
| config_search(...)
| isarescan(...)
| isaattach(...)
| config_attach_loc(...)
| config_found_ia(...)
| mainbus_attach(...)
| config_attach_loc(...)
| config_attach(...)
| config_rootfound(...)
| cpu_configure(...)
| configure(...)
| main(...)

Try this:
Index: npx.c
===================================================================
RCS file: /cvsroot/src/sys/arch/i386/isa/npx.c,v
retrieving revision 1.125
diff -u -u -r1.125 npx.c
--- npx.c       20 Jan 2008 21:49:57 -0000      1.125
+++ npx.c       8 Feb 2008 17:44:14 -0000
@@ -273,7 +273,6 @@
 
        irqmask = i8259_setmask(irqmask);
 
-       idt_vec_reserve(NRSVIDT + irq);
        idt[NRSVIDT + irq] = save_idt_npxintr;
 
        idt[16] = save_idt_npxtrap;

We should not reserve the vector since we are not using it after the probe.

christos



Home | Main Index | Thread Index | Old Index