Current-Users archive

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

Re: OSX virtualbox 3 beta still dumps core on NetBSD 5.0 release .iso



On Sun, Jun 21, 2009 at 02:04:58PM +0100, Chavdar Ivanov wrote:
> 2009/6/20 David Young <dyoung%pobox.com@localhost>:
> > On Sat, Jun 20, 2009 at 02:59:06PM +0100, Chavdar Ivanov wrote:
> >> On my (32-bit) laptop, I always get:
> >>
> >> ...
> >> attimer0: attached to pcppi0
> >> uvm_fault(0xc09e6a40, 0, 2) -> 0xe
> >> fatal page fault in supervisor mode
> >> trap type 6 code 2 eip c0100d69 cs 8 eflags 10246 cr2 0 ilevel 0
> >> kernel: supervisor trap page fault, code=0
> >> Stopped in pid 0.12 (system) at netbsd:spllower+0x29: addl ?%eax,0(%eax)
> >> db{0} bt
> >> spllower(0,0,0,0,ca51c000,0,0,0,0,0) at netbsd:spllower+0x29
> >> wdc_drvprobe(ca51c0f0,ca51ed28,c0445437,ca1112a0,ca1112a0,0,ca51c000,ca50564c,c01ab230,ca1112a0)
> >> at netbsd:wdc_drvprobe+0x27
> >> atabus_thread)ca50564c,0,c01002cd,0,0,0,0,0) at netbsd:atabus_thread+0x65
> >> db{1}
> >
> > What are the registers? ?(Type 'show registers'.) ?On which line does
> > the exception occur? ?(If you have a netbsd.gdb, run gdb on it and type
> > 'l *(wdc_drvprobe+0x27)'.)
> >
> > (FWIW, I don't see any such instruction as 'addl %eax,0(%eax)' in
> > spllower or cx8_spllower, but I am looking in -current, and IIRC you
> > are running 5.0. ?Significantly, spllower is one of those routines
> > that is "patched" at boot, and sometimes emulations have broken binary
> > patching.)
> 
> That's what it looks like; the first thing I did was t find the 'addl
> %eax,0(%eax) instruction, but it wasn't there, so the two entries
> pointed to later in the VBox gripes suggest correctly the patching.
> 
> The interesting bit is I seem not to be able to get it to execute
> twice the same thing - a few traces follow:
> 
> ...
> acpiacad0: AC adapter online.
> uvm_fault(0xc09e6a40, 0, 2) -> 0xe
> fatal page fault in supervisor mode
> trap type 6 code 2 eip c0100d69 cs 8 eflags 10246 cr2 0 ilevel 0
> kernel: supervisor trap page fault, code=0
> Stopped in pid 0.15 (system) at netbsd:spllower+0x29:   addl    %eax,0(%eax)
> db{0}> bt
> spllower(0,0,0,0,ca523774,0,0,0,0,0) at netbsd:spllower+0x29
> wdc_drvprobe(ca523864,ca52cd28,c0445437,ca119a40,0,ca523774,ca50564c,c01ab230,ca119a40)
> at netbsd:wdc_drvprobe+0x27
> atabus_thread(ca50564c,0,c01002cd,0,c01002cd,0,0,0,0,0) at
> netbsd:atabus_thread+0x65
> db{0} show registers
> ds                    0x10
> es                    0x10
> fs                    0x30
> gs                    0x10
> edi                   0
> esi                   0xc0ee1600
> ebp                   0xca52cbac
> ebx                   0x1
> edx                   0x8
> ecx                   0xca52cda0
> eax                   0
> eip                   0xc0100d69  spllower+0x29
> cs                    0x8
> eflags                0x10246
> esp                   0xca52cb70
> ss                    0x11
> netbsd:spllower+0x29:    addl     %eax,0(%eax)
> db{0}>
> -----------------------------------------------------
> acpiacad0: AC adapter online.
> fd0 at fdc0 drive 0: 1.44MB, 80 cyl, 2 head, 18 sec
> wd0 at atabus0 drive0
> fatal page in supervisor mode
> (* next two lines same *)
> Stopped in pid 0.1 (system) at netbsd:spllower+0x29:     addl      
> %eax,0(%eax)
> db{0}> bt
> spllower(c0981640,c09816b0,c08c4728,0,c0afc010,afc000,c0afed38,c03d87b6,0,0)
> at netbsd:spllower+0x29
> yield(0,0,0,0,0,0,c0afc010,afc000,b03000) at netbsd:yield+0x3f
> main(0,c01002cd,0,0,0,0,0,0,0,0) at netbsd:main:0x196
> db{0}> show registers
> ds                    0x10
> es                    0x10
> fs                    0x30
> gs                    0x10
> edi                   0
> esi                   0xca11dd00
> ebp                   0xc0afece8  _prop_dictionary_keysym32_pool+0xee008
> ebx                   0xc09403c0  cpu_info_primary
> edx                   0x7
> ecx                   0
> eax                   0
> eip                   0xc0100d69  spllower+0x29
> cs                    0x8
> eflags                0x10246
> esp                   0xc0afec9c  _prop_dictionary_keysym32_pool+0xedfbc
> ss                    0x11
> netbsd:spllower+0x29:    addl     %eax,0(%eax)
> db{0}>
> --------------------------------------------------------
> ...
> makphy31 at wm0 phy 31: Marvell 88E1000 Gigabit PHY, rev. 0
> makphy31: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
> vendor 0x80ee product 0xcafe (miscellaneous system) at pci0 dev 4
> function 0 net configured
> piixpm0 at pci0 dev 7 function 0
> ...
> 
> (* same stopped message *)
> db{0}> bt
> spllower(c09cab40,2,0,1208,c0afea58,c0c69b38,1,1,19ce744,ca52074c) at
> netbsd:spllower+0x29
> pmap_enter(c09ca860,ca673000,12a0000,7,37,ca673000,c0afeb70,c09ce320,a673000,0)
> at netbsd:pmap_enter+0xb4
> uvm_fault_internal(c09ce740,ca673000,7,1,ca10fbe0,0,c0981640,ca673000,ca1040fc,ca104000)
> at netbsd:uvm_fault_internal+0x8d1
> uvm_fault_wire(c09ce740,ca673000,ca675000,3,0,0,c0e9364c,0,ca1040fc,ca104000)
> at netbsd:uvm_fault_wire+0x42
> uarea_swapin(0,ca673000,1,ca673000,ca11cc24,2,c0afec68,0,0,ca6584bb)
> at netbsd:uarea_swapin+0x1d
> pool_cache_get_slow(0,1,0,ca11ca60,0,ffffffff,c0afec98,c045050d,ca11ca60,8)
> at netbsd:pool_cache_get_slow+0x134
> pool_cache_get_paddr(ca104000,1,0,ca10dd00,ca10dd00,ca11ca60,c0afecd8,c0441c65,c0afecc4,2)
> at netbsd:pool_cache_get_paddr+0x97
> uvm_uarea_alloc(c0afecc4,2,c08c4728,c08c4728,c0afecfc,0,0,0,c0222c49,c0afecfc,ca671000)
> at netbsd:uvn_uarea_alloc+0x15
> kthread_create(ffffffff,0,0,c0579690,0,0,c08c4728,0,c0afc010,c0afc010)
> at netbsd:kthread_create+0x15
> configure2(0,0,0,0,0,0,c0afed48,c0afc010,afc000,b03000) at
> netbsd:configure2+0xba
> main(0,c01002cd,0,0,0,0,0,0,0,0) at netbsd:main:0x196
> db{0}> show registers
> ds                    0x10
> es                    0x10
> fs                    0x30
> gs                    0x10
> edi                   0
> esi                   0
> ebp                   0xc0afe028  _prop_dictionary_keysym32_pool+0xedd48
> ebx                   0xc09cacc0  pmap_pv_cache+0x180
> edx                   0x8
> ecx                   0xc0afeda0  _prop_dictionary_keysym32_pool+0xee0c0
> eax                   0
> eip                   0xc0100d69  spllower+0x29
> cs                    0x8
> eflags                0x10246
> esp                   0xc0afe9ec  _prop_dictionary_keysym32_pool+0xedd0c
> ss                    0x11
> netbsd:spllower+0x29:    addl     %eax,0(%eax)
> -------------------------------------------------------------------------------
> (all that is manually entered, so there may be some errors. I got
> tired of ipying the hex values, so now a few entry point traces
> follow)
> -----------------------
> spllower

At the db{0}> prompt, what does 'x/i spllower,16' say?

Dave

-- 
David Young             OJC Technologies
dyoung%ojctech.com@localhost      Urbana, IL * (217) 278-3933


Home | Main Index | Thread Index | Old Index