1. 23 3月, 2016 1 次提交
    • P
      qemu-log: Improve the "exec" TB execution logging · 1a830635
      Peter Maydell 提交于
      Improve the TB execution logging so that it is easier to identify
      what is happening from trace logs:
       * move the "Trace" logging of executed TBs into cpu_tb_exec()
         so that it is emitted if and only if we actually execute a TB,
         and for consistency for the CPU state logging
       * log when we link two TBs together via tb_add_jump()
       * log when cpu_tb_exec() returns early from a chain of TBs
      
      The new style logging looks like this:
      
      Trace 0x7fb7cc822ca0 [ffffffc0000dce00]
      Linking TBs 0x7fb7cc822ca0 [ffffffc0000dce00] index 0 -> 0x7fb7cc823110 [ffffffc0000dce10]
      Trace 0x7fb7cc823110 [ffffffc0000dce10]
      Trace 0x7fb7cc823420 [ffffffc000302688]
      Trace 0x7fb7cc8234a0 [ffffffc000302698]
      Trace 0x7fb7cc823520 [ffffffc0003026a4]
      Trace 0x7fb7cc823560 [ffffffc0000dce44]
      Linking TBs 0x7fb7cc823560 [ffffffc0000dce44] index 1 -> 0x7fb7cc8235d0 [ffffffc0000dce70]
      Trace 0x7fb7cc8235d0 [ffffffc0000dce70]
      Stopped execution of TB chain before 0x7fb7cc8235d0 [ffffffc0000dce70]
      Trace 0x7fb7cc8235d0 [ffffffc0000dce70]
      Trace 0x7fb7cc822fd0 [ffffffc0000dd52c]
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Signed-off-by: NAlex Bennée <alex.bennee@linaro.org>
      [AJB: reword patch title, Abandoned->Stopped]
      Reviewed-by: NAurelien Jarno <aurelien@aurel32.net>
      Reviewed-by: NRichard Henderson <rth@twiddle.net>
      Message-Id: <1458052224-9316-6-git-send-email-alex.bennee@linaro.org>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      1a830635
  2. 03 2月, 2016 1 次提交
  3. 29 1月, 2016 1 次提交
    • P
      exec: Clean up includes · 7b31bbc2
      Peter Maydell 提交于
      Clean up includes so that osdep.h is included first and headers
      which it implies are not included manually.
      
      This commit was created with scripts/clean-includes.
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Message-id: 1453832250-766-4-git-send-email-peter.maydell@linaro.org
      7b31bbc2
  4. 06 11月, 2015 1 次提交
  5. 05 11月, 2015 1 次提交
  6. 04 11月, 2015 1 次提交
    • S
      cpu-exec: Fix compiler warning (-Werror=clobbered) · 0448f5f8
      Stefan Weil 提交于
      Reloading of local variables after sigsetjmp is only needed for some
      buggy compilers.
      
      The code which should reload these variables causes compiler warnings
      with gcc 4.7 when compiler optimizations are enabled:
      
      cpu-exec.c:204:15: error:
       variable ‘cpu’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Werror=clobbered]
      cpu-exec.c:207:15: error:
       variable ‘cc’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Werror=clobbered]
      cpu-exec.c:202:28: error:
       argument ‘env’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Werror=clobbered]
      
      Now this code is only used for compilers which need it
      (and gcc 4.5.x, x > 0 which does not need it but won't give warnings).
      
      There were bug reports for clang and gcc 4.5.0, while gcc 4.5.1
      was reported to work fine without the reload code. For clang it
      is not clear which versions are affected, so simply keep the status quo
      for all clang compilations. This can be improved later.
      Signed-off-by: NStefan Weil <sw@weilnetz.de>
      Message-Id: <1443266606-21400-1-git-send-email-sw@weilnetz.de>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      0448f5f8
  7. 20 10月, 2015 1 次提交
  8. 25 9月, 2015 1 次提交
  9. 16 9月, 2015 1 次提交
  10. 11 9月, 2015 1 次提交
  11. 09 9月, 2015 7 次提交
  12. 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
  13. 06 8月, 2015 1 次提交
  14. 09 7月, 2015 1 次提交
  15. 26 6月, 2015 1 次提交
  16. 17 2月, 2015 3 次提交
  17. 10 2月, 2015 2 次提交
  18. 02 2月, 2015 2 次提交
    • P
      cpu-exec: simplify init_delay_params · 2e91cc62
      Paolo Bonzini 提交于
      With the introduction of QEMU_CLOCK_VIRTUAL_RT, the computation of
      sc->diff_clk can be simplified nicely:
      
              qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) -
              qemu_clock_get_ns(QEMU_CLOCK_REALTIME) +
              cpu_get_clock_offset()
      
           =  qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) -
              (qemu_clock_get_ns(QEMU_CLOCK_REALTIME) - cpu_get_clock_offset())
      
           =  qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) -
              (qemu_clock_get_ns(QEMU_CLOCK_REALTIME) + timers_state.cpu_clock_offset)
      
           =  qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) -
              qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL_RT)
      
      Cc: Sebastian Tanase <sebastian.tanase@openwide.fr>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      2e91cc62
    • P
      cpu-exec: simplify align_clocks · a498d0ef
      Paolo Bonzini 提交于
      sc->diff_clk is already equal to sleep_delay (split in a second and a
      nanosecond part).  If you subtract sleep_delay - rem_delay, the result
      is exactly rem_delay.
      
      Cc: Sebastian Tanase <sebastian.tanase@openwide.fr>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      a498d0ef
  19. 15 12月, 2014 4 次提交
  20. 26 9月, 2014 8 次提交