Source-Changes-D archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: CVS commit: src/sys/arch/i386/i386
On Mon, May 04, 2009 at 11:47:29AM +0000, Andrew Doran wrote:
> Module Name: src
> Committed By: ad
> Date: Mon May 4 11:47:29 UTC 2009
>
> Modified Files:
> src/sys/arch/i386/i386: locore.S
>
> 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!
I tried the following code instead:
IDTVEC(osyscall)
CLI(%eax) # must be first instruction
pushfl # set eflags in trap frame
popl 8(%esp)
orl $PSL_I,(%esp) # re-enable ints on return to user
pushl $7 # size of instruction for restart
jmp syscall1
but the test binary from the PR segfaults:
truc# kdump |less
34 0 ktrace EMUL "netbsd"
34 0 ktrace RET ktrace 0
34 0 ktrace CALL execve(0xbf7ffc02,0xbf7feb3c,0xbf7feb44)
34 0 ktrace NAMI "./architextIndex"
34 0 architextIndex EMUL "netbsd"
34 0 architextIndex RET syscall JUSTRETURN
34 0 architextIndex PSIG SIGSEGV SIG_DFL: code=SEGV_ACCERR, addr=0xacb
94, trap=4)
34 0 architextIndex NAMI "architextIndex.core"
On Xen CLI(%eax) expands to:
movl CPUVAR(VCPU),%eax ;
movb $1,EVTCHN_UPCALL_MASK(%eax)
I guess this is a problem. Is there a way to account for this somewhere ?
--
Manuel Bouyer, LIP6, Universite Paris VI.
Manuel.Bouyer%lip6.fr@localhost
NetBSD: 26 ans d'experience feront toujours la difference
--
Home |
Main Index |
Thread Index |
Old Index