1. 09 9月, 2015 5 次提交
  2. 25 8月, 2015 1 次提交
  3. 15 8月, 2015 1 次提交
    • P
      exec: drop cpu_can_do_io, just read cpu->can_do_io · 414b15c9
      Paolo Bonzini 提交于
      After commit 626cf8f4 (icount: set can_do_io outside TB execution,
      2014-12-08), can_do_io is set to 1 if not executing code.  It is
      no longer necessary to make this assumption in cpu_can_do_io.
      
      It is also possible to remove the use_icount test, simply by
      never setting cpu->can_do_io to 0 unless use_icount is true.
      
      With these changes cpu_can_do_io boils down to a read of
      cpu->can_do_io.
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      414b15c9
  4. 06 8月, 2015 1 次提交
  5. 09 7月, 2015 1 次提交
  6. 07 7月, 2015 1 次提交
  7. 26 6月, 2015 1 次提交
  8. 17 6月, 2015 1 次提交
    • A
      translate-all: fix watchpoints if retranslation not possible · 8d302e76
      Aurelien Jarno 提交于
      The tb_check_watchpoint function currently assumes that all memory
      access is done either directly through the TCG code or through an
      helper which knows its return address. This is obviously wrong as the
      helpers use cpu_ldxx/stxx_data functions to access the memory.
      
      Instead of aborting in that case, don't try to retranslate the code, but
      assume that the CPU state (and especially the program counter) has been
      saved before calling the helper. Then invalidate the TB based on this
      address.
      Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
      Signed-off-by: NAlexander Graf <agraf@suse.de>
      8d302e76
  9. 05 6月, 2015 3 次提交
  10. 30 4月, 2015 1 次提交
  11. 29 4月, 2015 1 次提交
  12. 28 4月, 2015 1 次提交
  13. 04 4月, 2015 1 次提交
  14. 10 2月, 2015 1 次提交
  15. 20 1月, 2015 1 次提交
    • P
      exec.c: Drop TARGET_HAS_ICE define and checks · ec53b45b
      Peter Maydell 提交于
      The TARGET_HAS_ICE #define is intended to indicate whether a target-*
      guest CPU implementation supports the breakpoint handling. However,
      all our guest CPUs have that support (the only two which do not
      define TARGET_HAS_ICE are unicore32 and openrisc, and in both those
      cases the bp support is present and the lack of the #define is just
      a bug). So remove the #define entirely: all new guest CPU support
      should include breakpoint handling as part of the basic implementation.
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Reviewed-by: NRichard Henderson <rth@twiddle.net>
      Message-id: 1420484960-32365-1-git-send-email-peter.maydell@linaro.org
      ec53b45b
  16. 15 1月, 2015 1 次提交
  17. 03 1月, 2015 1 次提交
  18. 23 12月, 2014 1 次提交
  19. 17 12月, 2014 1 次提交
  20. 16 12月, 2014 1 次提交
  21. 15 12月, 2014 1 次提交
  22. 07 10月, 2014 1 次提交
  23. 12 8月, 2014 1 次提交
    • A
      trace: add some tcg tracing support · 6db8b538
      Alex Bennée 提交于
      This adds a couple of tcg specific trace-events which are useful for
      tracing execution though tcg generated blocks. It's been tested with
      lttng user space tracing but is generic enough for all systems. The tcg
      events are:
      
        * translate_block - when a subject block is translated
        * exec_tb - when a translated block is entered
        * exec_tb_exit - when we exit the translated code
        * exec_tb_nocache - special case translations
      
      Of course we can only trace the entrance to the first block of a chain
      as each block will jump directly to the next when it can. See the -d
      nochain patch to allow more complete tracing at the expense of
      performance.
      Signed-off-by: NAlex Bennée <alex.bennee@linaro.org>
      Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com>
      6db8b538
  24. 25 6月, 2014 1 次提交
  25. 19 6月, 2014 1 次提交
  26. 24 5月, 2014 2 次提交
  27. 13 5月, 2014 1 次提交
  28. 05 4月, 2014 1 次提交
    • A
      page_check_range: don't bail out early after unprotecting page · cd7ccc83
      Andrei Warkentin 提交于
      When checking a page range, if we found that a page was
      made read-only by QEMU because it contained translated code,
      we were incorrectly returning immediately after unprotecting
      that page, rather than continuing to check the entire range,
      so we might fail to unprotect pages later in the range, or
      might incorrectly return a "success" result even if later
      pages were not writable.
      
      In particular, this could cause segfaults in a case where
      signals are delivered back to back on a target architecture
      which uses trampoline code in the stack frame (as AArch64
      currently does). The second signal causes a segfault because
      the frame cannot be written to (it was protected because
      we translated and executed the restorer trampoline, and the
      unprotect logic did not unprotect the whole range).
      
      Signed-off-by: Andrei Warkentin <andrey.warkentin@gmail.com
      [PMM: expanded commit message a bit]
      Reviewed-by: NRichard Henderson <rth@twiddle.net>
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      cd7ccc83
  29. 14 3月, 2014 5 次提交