1. 19 3月, 2013 1 次提交
    • A
      add a boot option to do strict boot · c8a6ae8b
      Amos Kong 提交于
      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: NAmos Kong <akong@redhat.com>
      Message-id: 1363674207-31496-1-git-send-email-akong@redhat.com
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      c8a6ae8b
  2. 13 3月, 2013 3 次提交
    • S
      Add support for cancelling of a TPM command · 92dcc234
      Stefan Berger 提交于
      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: 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-7-git-send-email-stefanb@linux.vnet.ibm.com
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      92dcc234
    • S
      Add a TPM Passthrough backend driver implementation · 4549a8b7
      Stefan Berger 提交于
      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: NAndreas Niederl <andreas.niederl@iaik.tugraz.at>
      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-6-git-send-email-stefanb@linux.vnet.ibm.com
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      4549a8b7
    • 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
  3. 08 3月, 2013 1 次提交
  4. 04 3月, 2013 2 次提交
  5. 27 2月, 2013 2 次提交
  6. 23 2月, 2013 1 次提交
  7. 22 2月, 2013 1 次提交
  8. 18 2月, 2013 7 次提交
  9. 14 2月, 2013 1 次提交
  10. 07 2月, 2013 1 次提交
    • 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
  11. 25 1月, 2013 1 次提交
  12. 22 1月, 2013 1 次提交
    • T
      vnc: added initial websocket protocol support · 7536ee4b
      Tim Hardeck 提交于
      This patch adds basic Websocket Protocol version 13 - RFC 6455 - support
      to QEMU VNC. Binary encoding support on the client side is mandatory.
      
      Because of the GnuTLS requirement the Websockets implementation is
      optional (--enable-vnc-ws).
      
      To activate Websocket support the VNC option "websocket"is used, for
      example "-vnc :0,websocket".
      The listen port for Websocket connections is (5700 + display) so if
      QEMU VNC is started with :0 the Websocket port would be 5700.
      As an alternative the Websocket port could be manually specified by
      using ",websocket=<port>" instead.
      
      Parts of the implementation base on Anthony Liguori's QEMU Websocket
      patch from 2010 and on Joel Martin's LibVNC Websocket implementation.
      Signed-off-by: NTim Hardeck <thardeck@suse.de>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      7536ee4b
  13. 16 1月, 2013 2 次提交
  14. 17 12月, 2012 1 次提交
    • M
      spice-qemu-char: add spiceport chardev · 5a49d3e9
      Marc-André Lureau 提交于
      Add a new spice chardev to allow arbitrary communication between the
      host and the Spice client via the spice server.
      
      Examples:
      
      This allows the Spice client to have a special port for the qemu
      monitor:
      
      ... -chardev spiceport,name=org.qemu.monitor,id=monitorport
          -mon chardev=monitorport
      
      v2:
      - remove support for chardev to chardev linking
      - conditionnaly compile with SPICE_SERVER_VERSION
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      5a49d3e9
  15. 07 12月, 2012 1 次提交
  16. 30 11月, 2012 1 次提交
  17. 23 11月, 2012 1 次提交
  18. 16 11月, 2012 1 次提交
  19. 15 11月, 2012 2 次提交
  20. 31 10月, 2012 5 次提交
  21. 24 10月, 2012 1 次提交
    • C
      qemu-config: Add new -add-fd command line option · 587ed6be
      Corey Bryant 提交于
      This option can be used for passing file descriptors on the
      command line.  It mirrors the existing add-fd QMP command which
      allows an fd to be passed to QEMU via SCM_RIGHTS and added to an
      fd set.
      
      This can be combined with commands such as -drive to link file
      descriptors in an fd set to a drive:
      
          qemu-kvm -add-fd fd=3,set=2,opaque="rdwr:/path/to/file"
                   -add-fd fd=4,set=2,opaque="rdonly:/path/to/file"
                   -drive file=/dev/fdset/2,index=0,media=disk
      
      This example adds dups of fds 3 and 4, and the accompanying opaque
      strings to the fd set with ID=2.  qemu_open() already knows how
      to handle a filename of this format.  qemu_open() searches the
      corresponding fd set for an fd and when it finds a match, QEMU
      goes on to use a dup of that fd just like it would have used an
      fd that it opened itself.
      Signed-off-by: NCorey Bryant <coreyb@linux.vnet.ibm.com>
      Reviewed-by: NEric Blake <eblake@redhat.com>
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      587ed6be
  22. 20 10月, 2012 1 次提交
  23. 26 9月, 2012 1 次提交
    • A
      add a boot parameter to set reboot timeout · ac05f349
      Amos Kong 提交于
      Added an option to let qemu transfer a configuration file to bios,
      "etc/boot-fail-wait", which could be specified by command
          -boot reboot-timeout=T
      T have a max value of 0xffff, unit is ms.
      
      With this option, guest will wait for a given time if not find
      bootabled device, then reboot. If reboot-timeout is '-1', guest
      will not reboot, qemu passes '-1' to bios by default.
      
      This feature need the new seabios's support.
      
      Seabios pulls the value from the fwcfg "file" interface, this
      interface is used because SeaBIOS needs a reliable way of
      obtaining a name, value size, and value. It in no way requires
      that there be a real file on the user's host machine.
      Signed-off-by: NAmos Kong <akong@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      ac05f349
  24. 17 9月, 2012 1 次提交