Here is the trace, and after is the print that led to the trace:



Locating the top of the address space ... 0xffffd000
Core dump limits :
        soft - 1024000000
        hard - NONE
Checking that ptrace can change system call numbers...OK
Checking syscall emulation patch for ptrace...OK
Checking advanced syscall emulation patch for ptrace...OK
Checking for tmpfs mount on /dev/shm...OK
Checking PROT_EXEC mmap in /root/tmp/...OK
Checking for SKAS4 support in the host:
        /proc/self/mm ... OK
        new_mm ... OK
        switching over ... switched back ... OK
        PTRACE_SWITCH_MM ... OK
        Full CPU fault information in siginfo_t ... OK
        Full CPU fault information in PTRACE_GETSIGINFO ... OK
        vcpu ... Host TLS support detected
Detected host type: i386
 (GDT indexes 6 to 9)
clownix: vcpu returned with signal
19, 0, 0
8497 0 8497
0 136958120 8
136958120 -153633628 8
8 8 8497
0 8 8497
0Failed
Checking for the skas3 patch in the host:
  - /proc/mm...not found: No such file or directory
  - PTRACE_FAULTINFO...
[1]+  Stopped                 ./linux

       if (vcpu_data.event == VCPU_SIGNAL) {
               non_fatal("clownix: vcpu returned with signal\n"
                         "%d, %d, %d \n"
                         "%d %d %d \n"
                         "%d %d %d \n"
                         "%d %d %d \n"
                         "%d %d %d \n"
                         "%d %d %d \n%d",
                         vcpu_data.siginfo.si_signo,
                         vcpu_data.siginfo.si_errno,
                         vcpu_data.siginfo.si_code,

vcpu_data.siginfo._sifields._kill._pid,
vcpu_data.siginfo._sifields._kill._uid,
vcpu_data.siginfo._sifields._timer._tid,

vcpu_data.siginfo._sifields._timer._overrun,
vcpu_data.siginfo._sifields._timer._sys_private,
vcpu_data.siginfo._sifields._sigchld._status,

vcpu_data.siginfo._sifields._sigchld._utime,
vcpu_data.siginfo._sifields._sigchld._stime,
vcpu_data.siginfo._sifields._rt._sigval,

vcpu_data.siginfo._sifields._rt._sigval.sival_int,
vcpu_data.siginfo._sifields._rt._sigval.sival_ptr,
vcpu_data.siginfo._sifields._sigfault._addr,

vcpu_data.siginfo._sifields._sigfault._trapno,
vcpu_data.siginfo._sifields._sigfault._error,
vcpu_data.siginfo._sifields._sigpoll._band,

vcpu_data.siginfo._sifields._sigpoll._fd);




On Fri, 2008-05-23 at 14:56 -0400, Jeff Dike wrote:
> On Fri, May 23, 2008 at 06:37:58PM +0200, vincent-perrier wrote:
> > Here is strace (attached file)
> 
> This time, it actually sorta worked...
> 
> > write(1, "\tvcpu ... ", 10  vcpu ... )             = 10
> > msgsnd(4294967295, {4, ptrace: umoven: Input/output error
> > 0x4}, 136966304, 0) = -1 ENOSYS (Function not implemented)
> > write(1, "OK\n", 3OK
> 
> I have no idea why strace thought that was msgsnd - it should have
> said SYS_329 or something.  The ENOSYS caused by vcpu and ptrace
> interacting badly.
> 
> It might be that the behavior difference is caused by a context switch
> (to strace and back) before vcpu returns to userspace.  I saw this
> when I was debugging it.
> 
> Can you get the full contents of the siginfo that vcpu is returning?
> 
>               Jeff
> 


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
User-mode-linux-user mailing list
User-mode-linux-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-user

Reply via email to