1. 15 8月, 2012 1 次提交
  2. 09 8月, 2012 1 次提交
    • R
      iscsi: Pick default initiator-name based on the name of the VM · 31459f46
      Ronnie Sahlberg 提交于
      This patch updates the iscsi layer to automatically pick a 'unique'
      initiator-name based on the name of the vm in case the user has not set
      an explicit iqn-name to use.
      
      Create a new function qemu_get_vm_name() that returns the name of the VM,
      if specified.
      
      This way we can thus create default names to use as the initiator name
      based on the guest session.
      
      If the VM is not named via the '-name' command line argument, the iscsi
      initiator-name used wiull simply be
      
          iqn.2008-11.org.linux-kvm
      
      If a name for the VM was specified with the '-name' option, iscsi will
      use a default initiatorname of
      
          iqn.2008-11.org.linux-kvm:<name>
      
      These names are just the default iscsi initiator name that qemu will
      generate/use only when the user has not set an explicit initiator name
      via the commandlines or config files.
      Signed-off-by: NRonnie Sahlberg <ronniesahlberg@gmail.com>
      31459f46
  3. 22 6月, 2012 1 次提交
  4. 27 4月, 2012 1 次提交
  5. 19 4月, 2012 1 次提交
  6. 29 2月, 2012 1 次提交
  7. 02 2月, 2012 1 次提交
    • M
      main-loop: For tools, initialize timers as part of qemu_init_main_loop() · d34e8f6e
      Michael Roth 提交于
      In some cases initializing the alarm timers can lead to non-negligable
      overhead from programs that link against qemu-tool.o. At least,
      setting a max-resolution WinMM alarm timer via mm_start_timer() (the
      current default for Windows) can increase the "tick rate" on Windows
      OSs and affect frequency scaling, and in the case of tools that run
      in guest OSs such has qemu-ga, the impact can be fairly dramatic
      (+20%/20% user/sys time on a core 2 processor was observed from an idle
      Windows XP guest).
      
      This patch doesn't address the issue directly (not sure what a good
      solution would be for Windows, or what other situations it might be
      noticeable), but it at least limits the scope of the issue to programs
      that "opt-in" to using the main-loop.c functions by only enabling alarm
      timers when qemu_init_main_loop() is called, which is already required
      to make use of those facilities, so existing users shouldn't be
      affected.
      Reviewed-by: NPaolo Bonzini <pbonzini@redhat.com>
      Signed-off-by: NMichael Roth <mdroth@linux.vnet.ibm.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      d34e8f6e
  8. 19 1月, 2012 1 次提交
  9. 14 1月, 2012 1 次提交
  10. 22 12月, 2011 1 次提交
  11. 22 11月, 2011 1 次提交
  12. 23 9月, 2011 1 次提交
  13. 21 8月, 2011 1 次提交
  14. 18 5月, 2011 1 次提交
    • S
      qemu-tool: Stub out qemu-timer functions · 5fc09ca5
      Stefan Hajnoczi 提交于
      Block drivers may use timers for flushing metadata to disk or
      reconnecting to a network drive.  Stub out the following functions in
      qemu-tool.c:
      
      QEMUTimer *qemu_new_timer_ns(QEMUClock *clock, int scale,
                                   QEMUTimerCB *cb, void *opaque)
      void qemu_free_timer(QEMUTimer *ts)
      void qemu_del_timer(QEMUTimer *ts)
      void qemu_mod_timer(QEMUTimer *ts, int64_t expire_time)
      int64_t qemu_get_clock_ns(QEMUClock *clock)
      
      They will result in timers never firing when linked against qemu-tool.o.
      Signed-off-by: NStefan Hajnoczi <stefanha@linux.vnet.ibm.com>
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      5fc09ca5
  15. 16 4月, 2011 1 次提交
  16. 15 3月, 2011 1 次提交
    • K
      tools: Use real async.c instead of stubs · 4e59b545
      Kevin Wolf 提交于
      It's wrong to call BHs directly, even in tools. The only operations that
      schedule BHs are called in a loop that (indirectly) contains a call to
      qemu_bh_poll anyway, so we're not losing the scheduled BHs: Tools either use
      synchronous functions, which are guaranteed to have completed (including any
      BHs) when they return; or if they use asynchronous functions, they need to call
      qemu_aio_wait() or similar functions already today.
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      Reviewed-by: NStefan Hajnoczi <stefanha@linux.vnet.ibm.com>
      4e59b545
  17. 30 10月, 2010 1 次提交
  18. 23 10月, 2010 1 次提交
    • B
      qemu-timer: move commonly used timer code to qemu-timer-common · c57c846a
      Blue Swirl 提交于
      Move timer init functions to a new file, qemu-timer-common.c. Make other
      critical timer functions inlined to preserve performance in
      qemu-timer.c, also move muldiv64() (used by the inline functions)
      to qemu-timer.h.
      
      Adjust block/raw-posix.c and simpletrace.c to use get_clock() directly.
      Remove a similar/duplicate definition in qemu-tool.c.
      
      Adjust hw/omap_clk.c to include qemu-timer.h because muldiv64() is used
      there.
      
      After this change, tracing can be used also for user code and
      simpletrace on Win32.
      
      Cc: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
      Acked-by: NStefan Hajnoczi <stefanha@linux.vnet.ibm.com>
      Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
      c57c846a
  19. 27 3月, 2010 1 次提交
  20. 20 3月, 2010 1 次提交
  21. 16 3月, 2010 4 次提交
    • M
      error: Infrastructure to track locations for error reporting · 827b0813
      Markus Armbruster 提交于
      New struct Location holds a location.  So far, the only location is
      LOC_NONE, so this doesn't do anything useful yet.
      
      Passing the current location all over the place would be too
      cumbersome.  Hide it away in static cur_loc instead, and provide
      accessors.  Print it in error_report().
      
      Store it in QError, and print it in qerror_print().
      
      Store it in QemuOpt, for use by qemu_opts_foreach().  This makes
      error_report() do the right thing when it runs within
      qemu_opts_foreach().
      
      We may still have to store it in other data structures holding user
      input for better error messages.  Left for another day.
      827b0813
    • M
      error: Replace qemu_error() by error_report() · 1ecda02b
      Markus Armbruster 提交于
      error_report() terminates the message with a newline.  Strip it it
      from its arguments.
      
      This fixes a few error messages lacking a newline:
      net_handle_fd_param()'s "No file descriptor named %s found", and
      tap_open()'s "vnet_hdr=1 requested, but no kernel support for
      IFF_VNET_HDR available" (all three versions).
      
      There's one place that passes arguments without newlines
      intentionally: load_vmstate().  Fix it up.
      1ecda02b
    • M
      2f792016
    • M
      tools: Remove unused cur_mon from qemu-tool.c · 070a2f81
      Markus Armbruster 提交于
      070a2f81
  22. 03 12月, 2009 1 次提交
  23. 09 11月, 2009 1 次提交
  24. 28 10月, 2009 1 次提交
  25. 21 7月, 2009 1 次提交
  26. 06 3月, 2009 1 次提交
    • A
      monitor: Rework API (Jan Kiszka) · 376253ec
      aliguori 提交于
      Refactor the monitor API and prepare it for decoupled terminals:
      term_print functions are renamed to monitor_* and all monitor services
      gain a new parameter (mon) that will once refer to the monitor instance
      the output is supposed to appear on. However, the argument remains
      unused for now. All monitor command callbacks are also extended by a mon
      parameter so that command handlers are able to pass an appropriate
      reference to monitor output services.
      
      For the case that monitor outputs so far happen without clearly
      identifiable context, the global variable cur_mon is introduced that
      shall once provide a pointer either to the current active monitor (while
      processing commands) or to the default one. On the mid or long term,
      those use case will be obsoleted so that this variable can be removed
      again.
      
      Due to the broad usage of the monitor interface, this patch mostly deals
      with converting users of the monitor API. A few of them are already
      extended to pass 'mon' from the command handler further down to internal
      functions that invoke monitor_printf.
      
      At this chance, monitor-related prototypes are moved from console.h to
      a new monitor.h. The same is done for the readline API.
      Signed-off-by: NJan Kiszka <jan.kiszka@siemens.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      
      
      git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6711 c046a42c-6fe2-441c-8c8c-71466251a162
      376253ec
  27. 06 2月, 2009 1 次提交
  28. 01 12月, 2008 1 次提交
  29. 29 10月, 2008 1 次提交
  30. 09 10月, 2008 1 次提交
    • A
      Fix IO performance regression in sparc · 9e472e10
      aliguori 提交于
      Replace signalfd with signal handler/pipe.  There is no way to interrupt
      the CPU execution loop when a file descriptor becomes readable.  This
      results in a large performance regression in sparc emulation during
      bootup.
         
      This patch switches us to signal handler/pipe which was originally
      suggested by Ian Jackson.  The signal handler lets us interrupt the
      CPU emulation loop while the write to a pipe lets us avoid the
      select/signal race condition.
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      
      
      
      git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5451 c046a42c-6fe2-441c-8c8c-71466251a162
      9e472e10
  31. 15 9月, 2008 1 次提交
    • A
      Use common objects for qemu-img and qemu-nbd · 03ff3ca3
      aliguori 提交于
      Right now, we sprinkle #if defined(QEMU_IMG) && defined(QEMU_NBD) all over the
      code.  It's ugly and causes us to have to build multiple object files for
      linking against qemu and the tools.
      
      This patch introduces a new file, qemu-tool.c which contains enough for
      qemu-img, qemu-nbd, and QEMU to all share the same objects.
      
      This also required getting qemu-nbd to be a bit more Windows friendly.  I also
      changed the Windows block-raw to use normal IO instead of overlapping IO since
      we don't actually do AIO yet on Windows.  I changed the various #if 0's to
       #if WIN32_AIO to make it easier for someone to eventually fix AIO on Windows.
      
      After this patch, there are no longer any #ifdef's related to qemu-img and
      qemu-nbd.
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      
      
      
      git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5226 c046a42c-6fe2-441c-8c8c-71466251a162
      03ff3ca3