Subject: i386-current page fault trap in profiled code
To: None <port-i386@netbsd.org>
From: john heasley <heas@shrubbery.net>
List: port-i386
Date: 11/01/2002 13:27:30
i experienced the following 3 page faults (2nd one with single-processor
kernel, other are MP) with kernel source from this past thursday morning
(but userland from ~week ago).

all 3 occured, apparently, while my tac_plus daemon was running.  this
particular version was compiled with profiling.  this was not a problem
with the previous motherboard (asus PIII), but is an issue with this
tyan dual-athlon.

it hasnt occured since rebuilding tac_plus without profiling.

i dont know enough to fix this.  send-pr?  need more info?


login: kernel: page fault trap, code=0
Stopped in pid 766 (tac_plus) at        fuswintr+0x27:  movzwl           0(%edx)
,%eax
db{1}> trace
fuswintr(e3335d3c,804ee88,0,e3335d3c) at fuswintr+0x27
statclock(e33c4fa4,6,e3242cc8,1000) at statclock+0x82
hardclock(e33c4fa4,c03039d0,0,0,4811bd80) at hardclock+0xc9
lapic_clockintr(e33c4fa4) at lapic_clockintr+0x73
Xintrltimer() at Xintrltimer+0x4a
--- interrupt ---
gdt_desc+0x804cddc:
db{1}> show reg
ds                0x10
es                0x10
fs                0x30
gs                0x10
edi         0xe3335d3c
esi          0x806fb4e  gdt_desc+0x806daa2
ebp         0xe33c4f08
ebx         0xe33c13dc
edx          0x806fb4e  gdt_desc+0x806daa2
ecx         0xe33c1000
eax             0x26d2  gdt_desc+0x626
eip         0xc010065b  fuswintr+0x27
cs                 0x8
eflags         0x10207  gdt_desc+0xe15b
esp         0xe33c4edc
ss                0x10
fuswintr+0x27:  movzwl           0(%edx),%eax
db{1}> 
db{1}> show reg/u
ds                0x10
es                0x10
fs                0x30
gs                0x10
edi         0xe3335d3c
esi          0x806fb4e  gdt_desc+0x806daa2
ebp         0xe33c4f08
ebx         0xe33c13dc
edx          0x806fb4e  gdt_desc+0x806daa2
ecx         0xe33c1000
eax             0x26d2  gdt_desc+0x626
eip         0xc010065b  fuswintr+0x27
cs                 0x8
eflags         0x10207  gdt_desc+0xe15b
esp         0xe33c4edc
ss                0x10
fuswintr+0x27:  movzwl           0(%edx),%eax


login: kernel: pakernel: page fault trap, code=0
Stopped in pid 11043 (tac_plus) at      fuswintr+0x27:  movzwl           0(%edx)
,%eax

db{1}> trace
fuswintr(e33d097c,8057e34,0,5) at fuswintr+0x27
statclock(e3bb6c74,0,0,1) at statclock+0xf1
hardclock(e3bb6c74,c0138341,61,10,61) at hardclock+0xc9
lapic_clockintr(e3bb6c74) at lapic_clockintr+0x73
Xintrltimer() at Xintrltimer+0x4a
--- interrupt ---
db_putchar(61,c019f3b8,8074324,c01fc2ae,fffffff5) at db_putchar+0x38
putchar(61,10,0,8057e34) at putchar+0x128
kprintf(c02aa761,10,0,0,e3bb6dc0) at kprintf+0xa47
db_printf(c02aa761,c02add8e,10,10) at db_printf+0x1b
kdbprinttrap(6,0,e3bb6e20,c01e88bb) at kdbprinttrap+0x48
kdb_trap(6,0,e3bb6ec8,8065000) at kdb_trap+0x6c
trap() at trap+0x17f
--- trap (number 6) ---
i386_copyin(e33d097c,8057e34,1,2,0) at i386_copyin+0x43
trap() at trap+0x374
--- trap (number 3) ---
gdt_desc+0x8055d88:




login: kernel: page fault trap, code=0
Stopped in pid 4097 (tac_plus) at       fuswintr+0x27:  movzwl           0(%edx)
,%eax
db{1}> trace
fuswintr(e3389200,8053b02,0,e3389200) at fuswintr+0x27
statclock(e3464fa4,6,e33c1c98,1000) at statclock+0x82
hardclock(e3464fa4,c02ff910,0,0,0) at hardclock+0xc9
lapic_clockintr(e3464fa4) at lapic_clockintr+0x73
Xintrltimer() at Xintrltimer+0x4a
--- interrupt ---
gdt_desc+0x8051a56:
db{1}> show reg
ds                0x10
es                0x10
fs                0x30
gs                0x10
edi         0xe3389200
esi          0x807218a  gdt_desc+0x80700de
ebp         0xe3464b1c
ebx         0xe34613dc
edx          0x807218a  gdt_desc+0x80700de
ecx         0xe3461000
eax             0x4d0e  gdt_desc+0x2c62
eip         0xc010065b  fuswintr+0x27
cs                 0x8
eflags         0x10213  gdt_desc+0xe167
esp         0xe3464af0
ss                0x10
fuswintr+0x27:  movzwl           0(%edx),%eax
db{1}> show reg/u
ds                0x10
es                0x10
fs                0x30
gs                0x10
edi         0xe3389200
esi          0x807218a  gdt_desc+0x80700de
ebp         0xe3464b1c
ebx         0xe34613dc
edx          0x807218a  gdt_desc+0x80700de
ecx         0xe3461000
eax             0x4d0e  gdt_desc+0x2c62
eip         0xc010065b  fuswintr+0x27
cs                 0x8
eflags         0x10213  gdt_desc+0xe167
esp         0xe3464af0
ss                0x10
fuswintr+0x27:  movzwl           0(%edx),%eax
db{1}>