NetBSD-Bugs archive

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

Re: PR/41342 CVS commit: src/sys/arch/i386/i386



On Thu, May 07, 2009 at 02:54:47PM -0400, Brian Marcotte wrote:
> >  Log Message:
> >  PR kern/41342: BSDi binaries cause panic
> >  
> >  XXX Manuel, please have a look as I am not sure what to do for XEN here!
> 
> Thanks for looking at this.
> 
> Any luck on getting BSDi binaries to work at all? On hardware it's better
> since it doesn't panic the machine, but the binaries segfault.

I looked a bit at this: I added instrumentation to i386 trap.c, and found
that if gets:
trap 4 code 8 eip ad6fe cs 17 eflags 10293 cr2 acb94 cpl 0
urlwp 0xca293cc0 pid 6 lid
db> x/x acb94
ccb94:        57e58955
db> 
0xacb98:        7d8b5356
db> 
0xacb9c:        a43d8308

so it has no problems reading what cr2 points to.
0xad6ed:        addb    %al,0(%eax)
db> 
0xad6ef:        addb    %ch,%cl
db> 
0xad6f1:        decl    %esi
db> 
0xad6f2:        addb    %al,0(%eax)
db> 
0xad6f4:        addb    %al,0(%eax)
db> 
0xad6f6:        addb    %al,0(%eax)
db> 
0xad6f8:        leal    0xca,%eax
db> 
0xad6fe:        lcall   $0,0x7
db> 
0xad705:        jb      0xad6f0
db> 
0xad707:        ret

but:
0xad6f0:        jmp     0xad743
db> 
0xad6f5:        addb    %al,0(%eax)
db> 
0xad6f7:        addb    %cl,0xca05(%ebp)
db> 
0xad6fd:        addb    %bl,0(%edx)
db> 
0xad703:        pop     %es
db> 
0xad704:        addb    %dh,0xffffffe9(%edx)
db> 
0xad707:        ret

So the faulting instruction would be a 'lcall   $0,0x7' but I don't
understand how this binary is constructed.

Any idea what to look at next ?

-- 
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
     NetBSD: 26 ans d'experience feront toujours la difference
--


Home | Main Index | Thread Index | Old Index