OpenSolaris

Printable Version Enter a New Search
Bug ID 6424124
Synopsis panic in intr_thread->av_dispatch_autovect->atomic_add_ptr
State 10-Fix Delivered (Fix available in build)
Category:Subcategory kernel:ddi
Keywords
Responsible Engineer Stuart Maybee
Reported Against snv_40 , snv_56 , snv_68 , snv_73
Duplicate Of
Introduced In solaris_nevada
Commit to Fix snv_75
Fixed In snv_75
Release Fixed solaris_nevada(snv_75)
Related Bugs 6272601 , 6503008 , 6557818 , 6577631 , 6604235
Submit Date 10-May-2006
Last Update Date 10-October-2007
Description
I got the following panic stress testing an amd64 machine (browneyes.central)

sched: 
#pf Page fault
Bad kernel fault at addr=0x0
pid=0, pc=0xfffffffffb8419e0, sp=0xfffffe8000323bf8, eflags=0x10246
cr0: 8005003b<pg,wp,ne,et,ts,mp,pe> cr4: 6f0<xmme,fxsr,pge,mce,pae,pse>
cr2: 0 cr3: e132000 cr8: c
        rdi:                0 rsi:             1855 rdx:                1
        rcx:                1  r8:        cfffd006b  r9:                1
        rax:                0 rbx:                0 rbp: fffffe8000323c60
        r10:         743e4f9c r11: fffffe8000323ac0 r12: ffffffff82dcd680
        r13: fffffffff3e520c9 r14: ffffffff83cd9680 r15: ffffffff82f24c00
        fsb: ffffffff80000000 gsb: ffffffff850af800  ds:               43
         es:               43  fs:                0  gs:              1c3
        trp:                e err:                2 rip: fffffffffb8419e0
         cs:               28 rfl:            10246 rsp: fffffe8000323bf8
         ss:               30

fffffe80003239c0 unix:die+f5 ()
fffffe8000323af0 unix:trap+16f1 ()
fffffe8000323b00 unix:_cmntrap+201 ()
fffffe8000323c60 unix:atomic_add_ptr+0 ()
fffffe8000323c70 unix:intr_thread+50 ()

syncing file systems...

The panic seems to be in the following av_dispatch_autovect code

                        if (av->av_ticksp && av->av_prilevel <= LOCK_LEVEL)
                                atomic_add_64(av->av_ticksp, intr_get_time());

It seems like av->av_ticksp became NULL after the 'if' reference guard.

The core file, currently located at
/net/haulass.central/export/workspaces/cth/cores/av_dispatch_autovect ,
is also attached.
This code seems to be added as part of 6272601 in common/io/avintr.c
Chris,

Could you turn off intrd(1m) and see if you can reproduce this?
Work Around
N/A
Comments
N/A