1. 01 Jan, 2014 1 commit
  2. 09 Dec, 2013 2 commits
    • Paolo Bonzini's avatar
      help: add id suboption to -iscsi · 2fe3798c
      Paolo Bonzini authored
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      2fe3798c
    • Vincenzo Maffione's avatar
      net: Adding netmap network backend · 58952137
      Vincenzo Maffione authored
      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: default avatarVincenzo Maffione <v.maffione@gmail.com>
      Signed-off-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      58952137
  3. 25 Nov, 2013 1 commit
  4. 18 Nov, 2013 1 commit
  5. 06 Sep, 2013 2 commits
  6. 29 Jul, 2013 1 commit
    • Markus Armbruster's avatar
      Revert "chardev: Make the name of memory device consistent" · 4f57378f
      Markus Armbruster authored
      This reverts commit 6a85e60c.
      
      Commit 51767e7c "qemu-char: Add new char backend CirMemCharDriver"
      introduced a memory ring buffer character device driver named
      "memory".  Commit 3949e594 "qemu-char: Saner naming of memchar stuff &
      doc fixes" changed the driver name to "ringbuf", along with a whole
      bunch of other names, with the following rationale:
      
          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.
      
      This is what we released in 1.4.0.
      
      Unfortunately, the rename missed a critical instance of "memory": the
      actual driver name.  Thus, the new device could be used only by an
      entirely undocumented name.  The documented name did not work.
      Bummer.
      
      Commit 6a85e60c fixes this by changing the documentation to match the
      code.  It also changes some, but not all related occurences of
      "ringbuf" to "memory".  Left alone are identifiers in C code, HMP and
      QMP commands.  The latter are external interface, so they can't be
      changed.
      
      The result is an inconsistent mess.  Moreover, "memory" is a rotten
      name.  The device's distinctive property is that it's a ring buffer,
      not that's in memory.  User's don't care whether it's in RAM, flash,
      or carved into chocolate tablets by Oompa Loompas.
      
      Revert the commit.  Next commit will fix just the bug.
      
      Cc: qemu-stable@nongnu.org
      Signed-off-by: default avatarMarkus Armbruster <armbru@redhat.com>
      Reviewed-by: default avatarEric Blake <eblake@redhat.com>
      Message-id: 1374849874-25531-2-git-send-email-armbru@redhat.com
      Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
      4f57378f
  7. 27 Jul, 2013 1 commit
  8. 19 Jul, 2013 1 commit
  9. 10 Jul, 2013 1 commit
    • Seiji Aguchi's avatar
      add timestamp to error_report() · 5e2ac519
      Seiji Aguchi authored
      [Issue]
      When we offer a customer support service and a problem happens
      in a customer's system, we try to understand the problem by
      comparing what the customer reports with message logs of the
      customer's system.
      
      In this case, we often need to know when the problem happens.
      
      But, currently, there is no timestamp in qemu's error messages.
      Therefore, we may not be able to understand the problem based on
      error messages.
      
      [Solution]
      Add a timestamp to qemu's error message logged by
      error_report() with g_time_val_to_iso8601().
      Signed-off-by: default avatarSeiji Aguchi <seiji.aguchi@hds.com>
      Reviewed-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarLuiz Capitulino <lcapitulino@redhat.com>
      5e2ac519
  10. 09 Jul, 2013 1 commit
  11. 28 Jun, 2013 1 commit
    • Michael Tokarev's avatar
      vl: convert -smp to qemu_opts_parse() · 12b7f57e
      Michael Tokarev authored
      This also introduces a new suboption, "cpus=",
      which is the default.  So after this patch,
      
       -smp n,sockets=y
      
      is the same as
      
        -smp cpus=n,sockets=y
      
      (with "cpu" being some generic thing, referring to
      either cores, or threads, or sockets, as before).
      
      We still don't validate relations between different
      numbers, for example it is still possible to say
      
        -smp 1,sockets=10
      
      and it will be accepted to mean sockets=1.
      Signed-off-by: default avatarMichael Tokarev <mjt@tls.msk.ru>
      Message-id: 1372072012-30305-1-git-send-email-mjt@msgid.tls.msk.ru
      Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
      12b7f57e
  12. 24 Jun, 2013 1 commit
  13. 21 Jun, 2013 1 commit
  14. 19 Jun, 2013 1 commit
  15. 23 May, 2013 1 commit
  16. 22 May, 2013 1 commit
  17. 03 May, 2013 1 commit
    • Tim Hardeck's avatar
      TLS support for VNC Websockets · 0057a0d5
      Tim Hardeck authored
      Added TLS support to the VNC QEMU Websockets implementation.
      VNC-TLS needs to be enabled for this feature to be used.
      
      The required certificates are specified as in case of VNC-TLS
      with the VNC parameter "x509=<path>".
      
      If the server certificate isn't signed by a rooth authority it needs to
      be manually imported in the browser because at least in case of Firefox
      and Chrome there is no user dialog, the connection just gets canceled.
      
      As a side note VEncrypt over Websocket doesn't work atm because TLS can't
      be stacked in the current implementation. (It also didn't work before)
      Nevertheless to my knowledge there is no HTML 5 VNC client which supports
      it and the Websocket connection can be encrypted with regular TLS now so
      it should be fine for most use cases.
      Signed-off-by: default avatarTim Hardeck <thardeck@suse.de>
      Reviewed-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
      Message-id: 1366727581-5772-1-git-send-email-thardeck@suse.de
      Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
      0057a0d5
  18. 22 Apr, 2013 1 commit
  19. 15 Apr, 2013 1 commit
    • Richard W.M. Jones's avatar
      block: Add support for Secure Shell (ssh) block device. · 0a12ec87
      Richard W.M. Jones authored
        qemu-system-x86_64 -drive file=ssh://hostname/some/image
      
      QEMU will ssh into 'hostname' and open '/some/image' which is made
      available as a standard block device.
      
      You can specify a username (ssh://user@host/...) and/or a port number
      (ssh://host:port/...).  You can also use an alternate syntax using
      properties (file.user, file.host, file.port, file.path).
      
      Current limitations:
      
      - Authentication must be done without passwords or passphrases, using
        ssh-agent.  Other authentication methods are not supported.
      
      - Uses a single connection, instead of concurrent AIO with multiple
        SSH connections.
      
      This is implemented using libssh2 on the client side.  The server just
      requires a regular ssh daemon with sftp-server support.  Most ssh
      daemons on Unix/Linux systems will work out of the box.
      Signed-off-by: default avatarRichard W.M. Jones <rjones@redhat.com>
      Cc: Stefan Hajnoczi <stefanha@gmail.com>
      Cc: Kevin Wolf <kwolf@redhat.com>
      Signed-off-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      0a12ec87
  20. 03 Apr, 2013 1 commit
  21. 25 Mar, 2013 1 commit
  22. 22 Mar, 2013 1 commit
  23. 19 Mar, 2013 1 commit
    • Amos Kong's avatar
      add a boot option to do strict boot · c8a6ae8b
      Amos Kong authored
      Seabios already added a new device type to halt booting.
      Qemu can add "HALT" at the end of bootindex string, then
      seabios will halt booting after trying to boot from all
      selected devices.
      
      This patch added a new boot option to configure if boot
      from un-selected devices.
      
      This option only effects when boot priority is changed by
      bootindex options, the old style(-boot order=..) will still
      try to boot from un-selected devices.
      
      v2: add HALT entry in get_boot_devices_list()
      v3: rebase to latest qemu upstream
      Signed-off-by: default avatarAmos Kong <akong@redhat.com>
      Message-id: 1363674207-31496-1-git-send-email-akong@redhat.com
      Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
      c8a6ae8b
  24. 12 Mar, 2013 3 commits
    • Stefan Berger's avatar
      Add support for cancelling of a TPM command · 92dcc234
      Stefan Berger authored
      This patch adds support for cancelling an executing TPM command.
      In Linux for example a user can cancel a command through the TPM's
      sysfs 'cancel' entry using
      
      echo "1" > /sysfs/class/misc/tpm0/device/cancel
      
      This patch propagates the cancellation of a command inside a VM
      to the host TPM's sysfs entry.
      It also uses the possibility to cancel the command before QEMU VM
      shutdown or reboot, which helps in preventing QEMU from hanging while
      waiting for the completion of the command.
      To relieve higher layers or users from having to determine the TPM's
      cancel sysfs entry, the driver searches for the entry in well known
      locations.
      Signed-off-by: default avatarStefan Berger <stefanb@linux.vnet.ibm.com>
      Reviewed-by: default avatarCorey Bryant <coreyb@linux.vnet.ibm.com>
      Reviewed-by: default avatarJoel Schopp <jschopp@linux.vnet.ibm.com>
      Message-id: 1361987275-26289-7-git-send-email-stefanb@linux.vnet.ibm.com
      Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
      92dcc234
    • Stefan Berger's avatar
      Add a TPM Passthrough backend driver implementation · 4549a8b7
      Stefan Berger authored
      This patch is based of off version 9 of Stefan Berger's patch series
        "QEMU Trusted Platform Module (TPM) integration"
      and adds a new backend driver for it.
      
      This patch adds a passthrough backend driver for passing commands sent to the
      emulated TPM device directly to a TPM device opened on the host machine.
      Thus it is possible to use a hardware TPM device in a system running on QEMU,
      providing the ability to access a TPM in a special state (e.g. after a Trusted
      Boot).
      
      This functionality is being used in the acTvSM Trusted Virtualization Platform
      which is available on [1].
      
      Usage example:
        qemu-system-x86_64 -tpmdev passthrough,id=tpm0,path=/dev/tpm0 \
                           -device tpm-tis,tpmdev=tpm0 \
                           -cdrom test.iso -boot d
      
      Some notes about the host TPM:
      The TPM needs to be enabled and activated. If that's not the case one
      has to go through the BIOS/UEFI and enable and activate that TPM for TPM
      commands to work as expected.
      It may be necessary to boot the kernel using tpm_tis.force=1 in the boot
      command line or 'modprobe tpm_tis force=1' in case of using it as a module.
      
      Regards,
      Andreas Niederl, Stefan Berger
      
      [1] http://trustedjava.sourceforge.net/Signed-off-by: default avatarAndreas Niederl <andreas.niederl@iaik.tugraz.at>
      Signed-off-by: default avatarStefan Berger <stefanb@linux.vnet.ibm.com>
      Reviewed-by: default avatarCorey Bryant <coreyb@linux.vnet.ibm.com>
      Reviewed-by: default avatarJoel Schopp <jschopp@linux.vnet.ibm.com>
      Message-id: 1361987275-26289-6-git-send-email-stefanb@linux.vnet.ibm.com
      Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
      4549a8b7
    • Stefan Berger's avatar
      Support for TPM command line options · d1a0cf73
      Stefan Berger authored
      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: default avatarStefan Berger <stefanb@linux.vnet.ibm.com>
      Reviewed-by: default avatarCorey Bryant <coreyb@linux.vnet.ibm.com>
      Reviewed-by: default avatarJoel Schopp <jschopp@linux.vnet.ibm.com>
      Message-id: 1361987275-26289-2-git-send-email-stefanb@linux.vnet.ibm.com
      Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
      d1a0cf73
  25. 08 Mar, 2013 1 commit
  26. 04 Mar, 2013 2 commits
  27. 27 Feb, 2013 1 commit
  28. 26 Feb, 2013 1 commit
    • Peter Maydell's avatar
      qemu-log: default to stderr for logging output · 989b697d
      Peter Maydell authored
      Switch the default for qemu_log logging output from "/tmp/qemu.log"
      to stderr. This is an incompatible change in some sense, but logging
      is mostly used for debugging purposes so it shouldn't affect production
      use. The previous behaviour can be obtained by adding "-D /tmp/qemu.log"
      to the command line.
      
      This change requires us to:
       * update all the documentation/help text (we take the opportunity
         to smooth out minor inconsistencies between the phrasing in
         linux-user/bsd-user/system help messages)
       * make linux-user and bsd-user defer to qemu-log for the default
         logging destination rather than overriding it themselves
       * ensure that all logfile closing is done via qemu_log_close()
         and that that function doesn't close stderr
      as well as the obvious change to the behaviour of do_qemu_set_log()
      when no logfile name has been specified.
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      Reviewed-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Reviewed-by: default avatarMarkus Armbruster <armbru@redhat.com>
      Message-id: 1361901160-28729-1-git-send-email-peter.maydell@linaro.org
      Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
      989b697d
  29. 22 Feb, 2013 1 commit
  30. 21 Feb, 2013 1 commit
  31. 18 Feb, 2013 5 commits