1. 22 6月, 2009 1 次提交
    • G
      Handle init/sipi in a main cpu exec loop. (v2) · b09ea7d5
      Gleb Natapov 提交于
      This should fix compilation problem in case of CONFIG_USER_ONLY.
      
      Currently INIT/SIPI is handled in the context of CPU that sends IPI.
      This patch changes this to handle them like all other events in a main
      cpu exec loop. When KVM will gain thread per vcpu capability it will
      be much more clear to handle those event by cpu thread itself and not
      modify one cpu's state from the context of the other.
      Signed-off-by: NGleb Natapov <gleb@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      b09ea7d5
  2. 27 5月, 2009 1 次提交
  3. 26 4月, 2009 1 次提交
  4. 25 4月, 2009 1 次提交
  5. 19 4月, 2009 1 次提交
  6. 10 4月, 2009 2 次提交
  7. 04 4月, 2009 1 次提交
  8. 17 3月, 2009 1 次提交
  9. 07 3月, 2009 1 次提交
    • A
      Fix race condition on access to env->interrupt_request · be214e6c
      aurel32 提交于
      env->interrupt_request is accessed as the bit level from both main code
      and signal handler, making a race condition possible even on CISC CPU.
      This causes freeze of QEMU under high load when running the dyntick
      clock.
      
      The patch below move the bit corresponding to CPU_INTERRUPT_EXIT in a
      separate variable, declared as volatile sig_atomic_t, so it should be
      work even on RISC CPU.
      
      We may want to move the cpu_interrupt(env, CPU_INTERRUPT_EXIT) case in
      its own function and get rid of CPU_INTERRUPT_EXIT. That can be done
      later, I wanted to keep the patch short for easier review.
      Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
      
      git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6728 c046a42c-6fe2-441c-8c8c-71466251a162
      be214e6c
  10. 16 1月, 2009 2 次提交
  11. 15 1月, 2009 2 次提交
  12. 05 1月, 2009 1 次提交
  13. 21 12月, 2008 1 次提交
  14. 19 12月, 2008 1 次提交
  15. 13 12月, 2008 1 次提交
  16. 12 12月, 2008 1 次提交
  17. 06 12月, 2008 1 次提交
  18. 26 11月, 2008 1 次提交
  19. 22 11月, 2008 1 次提交
  20. 19 11月, 2008 4 次提交
  21. 17 11月, 2008 1 次提交
  22. 10 11月, 2008 1 次提交
  23. 07 11月, 2008 2 次提交
  24. 06 11月, 2008 1 次提交
    • A
      Add KVM support to QEMU · 7ba1e619
      aliguori 提交于
      This patch adds very basic KVM support.  KVM is a kernel module for Linux that
      allows userspace programs to make use of hardware virtualization support.  It
      current supports x86 hardware virtualization using Intel VT-x or AMD-V.  It
      also supports IA64 VT-i, PPC 440, and S390.
      
      This patch only implements the bare minimum support to get a guest booting.  It
      has very little impact the rest of QEMU and attempts to integrate nicely with
      the rest of QEMU.
      
      Even though this implementation is basic, it is significantly faster than TCG.
      Booting and shutting down a Linux guest:
      
      w/TCG:  1:32.36 elapsed  84% CPU
      
      w/KVM:  0:31.14 elapsed  59% CPU
      
      Right now, KVM is disabled by default and must be explicitly enabled with
       -enable-kvm.  We can enable it by default later when we have had better
      testing.
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      
      
      
      git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5627 c046a42c-6fe2-441c-8c8c-71466251a162
      7ba1e619
  25. 04 11月, 2008 1 次提交
    • M
      Add safety net against potential infinite loop · 55e8b85e
      malc 提交于
      cpu_interrupt might be called while translating the TB, but before it
      is linked into a potentially infinite loop and becomes env->current_tb.
      
      Currently this can (and does) cause huge problems only when using
      dyntick clock, with other (periodic) clocks host_alarm_handler will
      eventually be executed resulting in a call to cpu_interrupt which will
      reset the recursion of running TB and the damage is "only" latency.
      
      git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5620 c046a42c-6fe2-441c-8c8c-71466251a162
      55e8b85e
  26. 27 10月, 2008 1 次提交
  27. 08 10月, 2008 1 次提交
  28. 15 9月, 2008 1 次提交
  29. 17 7月, 2008 1 次提交
  30. 09 7月, 2008 1 次提交
  31. 04 7月, 2008 1 次提交
  32. 01 7月, 2008 1 次提交
  33. 29 6月, 2008 1 次提交