Hi All,
  New to the list and project...hoping to make a meaningful contribution here 
someday :)

I am in the process of coming up to speed on the KVM project (very cool BTW).  
I found that it was extremely simple to get setup and running.  During the 
course of setting it up, I found an issue running a SUSE Linux Enterprise 
Desktop 10 (x86_64) guest.  Basically, if you try to run GRUB, the grub process 
dies immediately as it takes an illegal instruction (SIGILL) signal.  
Non-symbol stack traces indicate it was in the sync() call in libc.  I have 
worked around this temporarily by installing LILO under rescue mode...but I 
figured what better way to learn the code than to try to debug and fix this 
issue.

My assumption is that an illegal-opcode will cause either a vm-exit or an 
illegal-opcode exception down to the host.  This in turn would cause either the 
KVM_RUN ioctl to return (presumably with an EXCEPTION reason) or a signal to be 
delivered to QEMU.  Problem is, I am fairly stumped at this point trying to 
prove this is true.

So my questions are: 

1) Is this how illegal-op would be handled, or would that stay entirely in the 
domain of the guest?  

2) If they do cause a host exception/exit, what is that path that would handle 
this?

I put breakpoints in QEMU in all the obvious places (e.g. looking for VM-Exits 
in kvm_run(), host-2-guest exception generation points, and/or signal 
handlers).  I have also straced QEMU and it doesn't appear to be taking any 
signals other than SIGIO.  My next step will be to start sprinkling printfs in 
the QEMU/KVM code and/or debugging/LTT'ing the kernel, but I figured I would 
ping the group for suggestions first.  Any pointers out there?

Another possibility is that the guest is not generating a real illegal-op and 
the bug is that QEMU/KVM is accidentally injecting the exception condition (due 
to corruption, etc) and that explains why I cant seem to find it being 
explicitly handled.  Its too early to say right now, of course.

Thanks!
-Greg

PS: Other than the grub issue, I have been successfully  hosting a 64 bit SLED 
guest on KVM for days now, so we are pretty close to being able to add it to 
your list of working guests.


-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier.
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
kvm-devel mailing list
kvm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-devel

Reply via email to