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



The following reply was made to PR kern/41342; it has been noted by GNATS.

From: Manuel Bouyer <bouyer%antioche.eu.org@localhost>
To: Brian Marcotte <marcotte%panix.com@localhost>
Cc: Andrew Doran <ad%NetBSD.org@localhost>, 
kern-bug-people%NetBSD.org@localhost,
        gnats-admin%NetBSD.org@localhost, netbsd-bugs%NetBSD.org@localhost, 
gnats-bugs%NetBSD.org@localhost
Subject: Re: PR/41342 CVS commit: src/sys/arch/i386/i386
Date: Sun, 17 May 2009 19:12:35 +0200

 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