1. 09 12月, 2013 1 次提交
    • V
      net: Adding netmap network backend · 58952137
      Vincenzo Maffione 提交于
      This patch adds support for a network backend based on netmap.
      netmap is a framework for high speed packet I/O. You can use it
      to build extremely fast traffic generators, monitors, software
      switches or network middleboxes. Its companion software switch
      VALE lets you interconnect virtual machines.
      netmap and VALE are implemented as a non-intrusive kernel module,
      support NICs from multiple vendors, are part of standard FreeBSD
      distributions and available in source format for Linux too.
      
      To compile QEMU with netmap support, use the following configure
      options:
          ./configure [...] --enable-netmap --extra-cflags=-I/path/to/netmap/sys
      where "/path/to/netmap" contains the netmap source code, available at
          http://info.iet.unipi.it/~luigi/netmap/
      
      The same webpage contains more information about the netmap project
      (together with papers and presentations).
      Signed-off-by: NVincenzo Maffione <v.maffione@gmail.com>
      Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com>
      58952137
  2. 12 9月, 2013 2 次提交
  3. 30 8月, 2013 2 次提交
  4. 15 7月, 2013 1 次提交
    • S
      block: add drive_backup HMP command · de90930a
      Stefan Hajnoczi 提交于
      Make "drive_backup" available on the HMP monitor:
      
        drive_backup [-n] [-f] device target [format]
      
      The -n flag requests QEMU to reuse the image found in new-image-file,
      instead of recreating it from scratch.
      
      The -f flag requests QEMU to copy the whole disk, so that the result
      does not need a backing file.  Note that this flag *must* currently be
      passed since the other sync modes ('none' and 'top') have not been
      implemented yet.  Requiring it ensures that "drive_backup" behaves like
      "drive_mirror".
      Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com>
      Reviewed-by: NEric Blake <eblake@redhat.com>
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      de90930a
  5. 04 7月, 2013 1 次提交
    • D
      pci: Cleanup configuration for pci-hotplug.c · 79ca616f
      David Gibson 提交于
      pci-hotplug.c and the CONFIG_PCI_HOTPLUG variable which controls its
      compilation are misnamed.  They're not about PCI hotplug in general, but
      rather about the pci_add/pci_del interface which are now deprecated in
      favour of the more general device_add/device_del interface.  This patch
      therefore renames them to pci-hotplug-old.c and CONFIG_PCI_HOTPLUG_OLD.
      
      CONFIG_PCI_HOTPLUG=y was listed twice in {i386,x86_64}-softmmu.make for no
      particular reason, so we clean that up too.  In addition it was included in
      ppc64-softmmu.mak for which the old hotplug interface was never used and is
      unsuitable, so we remove that too.
      
      Most of pci-hotplug.c was additionaly protected by #ifdef TARGET_I386.  The
      small piece which wasn't is only called from the pci_add and pci_del hooks
      in hmp-commands.hx, which themselves were protected by #ifdef TARGET_I386.
      This patch therefore also removes the #ifdef from pci-hotplug-old.c,
      and changes the ifdefs in hmp-commands.hx to use CONFIG_PCI_HOTPLUG_OLD.
      Signed-off-by: NDavid Gibson <david@gibson.dropbear.id.au>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      79ca616f
  6. 12 6月, 2013 1 次提交
    • A
      dump: Drop qmp_dump_guest_memory() stub and build for all targets · 2a78636b
      Andreas Färber 提交于
      qmp_dump_guest_memory() calls dump_init() and returns an Error when
      cpu_get_dump_info() returns an error, as done by the stub.
      So there is no need to have a stub for qmp_dump_guest_memory().
      
      Enable the documentation of the always-present dump-guest-memory command.
      
      That way we can drop CONFIG_HAVE_CORE_DUMP and leave configure
      completely out of the picture for target CPU features.
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      2a78636b
  7. 06 6月, 2013 1 次提交
  8. 05 6月, 2013 1 次提交
    • S
      blockdev: reset werror/rerror on drive_del · 293c51a6
      Stefan Hajnoczi 提交于
      Paolo Bonzini <pbonzini@redhat.com> suggested the following test case:
      
      1. Launch a guest and wait at the GRUB boot menu:
      
        qemu-system-x86_64 -enable-kvm -m 1024 \
         -drive if=none,cache=none,file=test.img,id=foo,werror=stop,rerror=stop
         -device virtio-blk-pci,drive=foo,id=virtio0,addr=4
      
      2. Hot unplug the device:
      
        (qemu) drive_del foo
      
      3. Select the first boot menu entry
      
      Without this patch the guest pauses due to ENOMEDIUM.  The guest is
      stuck in a continuous pause loop since the I/O request is retried and
      fails immediately again when the guest is resumed.
      
      With this patch the error is reported to the guest.
      
      Note that this scenario actually happens sometimes during libvirt disk
      hot unplug, where device_del is followed by drive_del.  I/O may still be
      submitted to the drive after drive_del if the guest does not process the
      PCI hot unplug notification.
      Reported-by: NDafna Ron <dron@redhat.com>
      Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com>
      Reviewed-by: NKevin Wolf <kwolf@redhat.com>
      293c51a6
  9. 30 4月, 2013 1 次提交
  10. 12 4月, 2013 1 次提交
  11. 26 3月, 2013 1 次提交
  12. 13 3月, 2013 2 次提交
    • G
      Revert "hmp: Disable chardev-add and chardev-remove" · 46920825
      Gerd Hoffmann 提交于
      This reverts commit 8a14952c.
      46920825
    • S
      Support for TPM command line options · d1a0cf73
      Stefan Berger 提交于
      This patch adds support for TPM command line options.
      The command line options supported here are
      
      ./qemu-... -tpmdev passthrough,path=<path to TPM device>,id=<id>
                 -device tpm-tis,tpmdev=<id>,id=<other id>
      
      and
      
      ./qemu-... -tpmdev help
      
      where the latter works similar to -soundhw help and shows a list of
      available TPM backends (for example 'passthrough').
      
      Using the type parameter, the backend is chosen, i.e., 'passthrough' for the
      passthrough driver. The interpretation of the other parameters along
      with determining whether enough parameters were provided is pushed into
      the backend driver, which needs to implement the interface function
      'create' and return a TPMDriverOpts structure if the VM can be started or
      'NULL' if not enough or bad parameters were provided.
      
      Monitor support for 'info tpm' has been added. It for example prints the
      following:
      
      (qemu) info tpm
      TPM devices:
       tpm0: model=tpm-tis
        \ tpm0: type=passthrough,path=/dev/tpm0,cancel-path=/sys/devices/pnp0/00:09/cancel
      Signed-off-by: NStefan Berger <stefanb@linux.vnet.ibm.com>
      Reviewed-by: NCorey Bryant <coreyb@linux.vnet.ibm.com>
      Reviewed-by: NJoel Schopp <jschopp@linux.vnet.ibm.com>
      Message-id: 1361987275-26289-2-git-send-email-stefanb@linux.vnet.ibm.com
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      d1a0cf73
  13. 27 2月, 2013 2 次提交
  14. 07 2月, 2013 3 次提交
    • M
      hmp: Disable chardev-add and chardev-remove · 8a14952c
      Markus Armbruster 提交于
      As a general rule, HMP commands must be built on top of the QMP API.
      Luiz and others have worked long & hard to make HMP conform to this
      rule.
      
      Commit f1088908 added chardev-add, in violation of this rule.  QMP
      command chardev-add was added right before, with minimal features, and
      the idea to complete it step by step, then switch over the HMP command
      to use it.
      
      Unfortunately, we're not there, yet, and we don't want to release with
      chardev-add in a "HMP is more powerful than QMP" state.
      
      Disable the HMP command for now, along with its chardev-remove buddy.
      Signed-off-by: NMarkus Armbruster <armbru@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      8a14952c
    • M
    • M
      qemu-char: Saner naming of memchar stuff & doc fixes · 3949e594
      Markus Armbruster 提交于
      New device, has never been released, so we can still improve things
      without worrying about compatibility.
      
      Naming is a mess.  The code calls the device driver CirMemCharDriver,
      the public API calls it "memory", "memchardev", or "memchar", and the
      special commands are named like "memchar-FOO".  "memory" is a
      particularly unfortunate choice, because there's another character
      device driver called MemoryDriver.  Moreover, the device's distinctive
      property is that it's a ring buffer, not that's in memory.  Therefore:
      
      * Rename CirMemCharDriver to RingBufCharDriver, and call the thing a
        "ringbuf" in the API.
      
      * Rename QMP and HMP commands from memchar-FOO to ringbuf-FOO.
      
      * Rename device parameter from maxcapacity to size (simple words are
        good for you).
      
      * Clearly mark the parameter as optional in documentation.
      
      * Fix error reporting so that chardev-add reports to current monitor,
        not stderr.
      
      * Replace cirmem in C identifiers by ringbuf.
      
      * Rework documentation.  Document the impact of our crappy UTF-8
        handling on reading.
      
      * QMP examples that even work.
      
      I could split this up into multiple commits, but they'd change the
      same documentation lines multiple times.  Not worth it.
      Signed-off-by: NMarkus Armbruster <armbru@redhat.com>
      Reviewed-by: NEric Blake <eblake@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      3949e594
  15. 25 1月, 2013 2 次提交
  16. 17 1月, 2013 1 次提交
  17. 16 1月, 2013 1 次提交
  18. 16 11月, 2012 1 次提交
  19. 12 11月, 2012 1 次提交
  20. 24 10月, 2012 2 次提交
  21. 29 9月, 2012 1 次提交
  22. 27 9月, 2012 1 次提交
  23. 06 9月, 2012 4 次提交
  24. 08 8月, 2012 3 次提交
  25. 07 8月, 2012 1 次提交
  26. 14 7月, 2012 1 次提交
  27. 05 6月, 2012 1 次提交