mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 16:23:55 -06:00
* fix --enable-fuzzing linker failures (Alexander)
* target/i386: Add bus lock debug exception support (Chenyi) * update documentation for preferred boolean option syntax (Daniel) * make SCSI io_timeout configurable (Hannes) * fix handling of guest recoverable SCSI errors (myself) * misc fixes (Pavel, Zheng Zhan Liang, Zihao) * fix installation of binaries with entitlements (Akihiko) -----BEGIN PGP SIGNATURE----- iQFIBAABCAAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAmA3tzQUHHBib256aW5p QHJlZGhhdC5jb20ACgkQv/vSX3jHroMsngf+OkbgTDouxq3qnn1K89n6j2wKlAj0 qPP+57o1sv5u5MjX0BkawXCMJfvTKJaOt/Cs8S0FaPTehfR5H0T2tL76KZBEdlEP /+V3EC0Qmd1S47LKIOuDkV15szvnccyjpgwaL7Osjb0Eh0SxeXd4pBTc3yYtkacu zb/srZ63U2iJZr93QwGmEJjuW57WNym6QWXF3Mrg9PFXybkXFTGumB2vZMlQc+MN RWPTUKZKAiIr/HfdvpIETXY+HzJhylvIQ8OVWtM3XDorl48OWcOat/jyeNEVYgG3 o+gxIRnfvIL+42GkmUFbOKLzT5SV6p9EYYGLTuE1kU7nc6HWoD0CdPxA3A== =UBVO -----END PGP SIGNATURE----- Merge remote-tracking branch 'remotes/bonzini-gitlab/tags/for-upstream' into staging * fix --enable-fuzzing linker failures (Alexander) * target/i386: Add bus lock debug exception support (Chenyi) * update documentation for preferred boolean option syntax (Daniel) * make SCSI io_timeout configurable (Hannes) * fix handling of guest recoverable SCSI errors (myself) * misc fixes (Pavel, Zheng Zhan Liang, Zihao) * fix installation of binaries with entitlements (Akihiko) # gpg: Signature made Thu 25 Feb 2021 14:41:56 GMT # gpg: using RSA key F13338574B662389866C7682BFFBD25F78C7AE83 # gpg: issuer "pbonzini@redhat.com" # gpg: Good signature from "Paolo Bonzini <bonzini@gnu.org>" [full] # gpg: aka "Paolo Bonzini <pbonzini@redhat.com>" [full] # Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4 E2F7 7E15 100C CD36 69B1 # Subkey fingerprint: F133 3857 4B66 2389 866C 7682 BFFB D25F 78C7 AE83 * remotes/bonzini-gitlab/tags/for-upstream: (29 commits) tcg/i386: rdpmc: fix the the condtions chardev: do not use short form boolean options in non-QemuOpts character device descriptions vl: deprecate -writeconfig target/i386: Add bus lock debug exception support qom/object.c: Fix typo target/i386: update to show preferred boolean syntax for -cpu docs: update to show preferred boolean syntax for -cpu docs: update to show preferred boolean syntax for -vnc docs: update to show preferred boolean syntax for -chardev qemu-options: update to show preferred boolean syntax for -vnc qemu-options: update to show preferred boolean syntax for -incoming qemu-options: update to show preferred boolean syntax for -netdev qemu-options: update to show preferred boolean syntax for -spice qemu-options: update to show preferred boolean syntax for -chardev gdbstub: use preferred boolean option syntax char: don't fail when client is not connected scsi: drop 'result' argument from command_complete callback scsi-disk: pass guest recoverable errors through even for rerror=stop scsi-disk: pass SCSI status to scsi_handle_rw_error scsi: introduce scsi_sense_from_errno() ... Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
commit
07dbfdd290
50 changed files with 406 additions and 322 deletions
|
@ -158,15 +158,15 @@ instance.
|
|||
|
||||
# imagefolder="/mnt/vms/colo-test-primary"
|
||||
|
||||
# qemu-system-x86_64 -enable-kvm -cpu qemu64,+kvmclock -m 512 -smp 1 -qmp stdio \
|
||||
# qemu-system-x86_64 -enable-kvm -cpu qemu64,kvmclock=on -m 512 -smp 1 -qmp stdio \
|
||||
-device piix3-usb-uhci -device usb-tablet -name primary \
|
||||
-netdev tap,id=hn0,vhost=off,helper=/usr/lib/qemu/qemu-bridge-helper \
|
||||
-device rtl8139,id=e0,netdev=hn0 \
|
||||
-chardev socket,id=mirror0,host=0.0.0.0,port=9003,server,nowait \
|
||||
-chardev socket,id=compare1,host=0.0.0.0,port=9004,server,wait \
|
||||
-chardev socket,id=compare0,host=127.0.0.1,port=9001,server,nowait \
|
||||
-chardev socket,id=mirror0,host=0.0.0.0,port=9003,server=on,wait=off \
|
||||
-chardev socket,id=compare1,host=0.0.0.0,port=9004,server=on,wait=on \
|
||||
-chardev socket,id=compare0,host=127.0.0.1,port=9001,server=on,wait=off \
|
||||
-chardev socket,id=compare0-0,host=127.0.0.1,port=9001 \
|
||||
-chardev socket,id=compare_out,host=127.0.0.1,port=9005,server,nowait \
|
||||
-chardev socket,id=compare_out,host=127.0.0.1,port=9005,server=on,wait=off \
|
||||
-chardev socket,id=compare_out0,host=127.0.0.1,port=9005 \
|
||||
-object filter-mirror,id=m0,netdev=hn0,queue=tx,outdev=mirror0 \
|
||||
-object filter-redirector,netdev=hn0,id=redire0,queue=rx,indev=compare_out \
|
||||
|
@ -189,7 +189,7 @@ any IP's here, except for the $primary_ip variable.
|
|||
|
||||
# qemu-img create -f qcow2 $imagefolder/secondary-hidden.qcow2 10G
|
||||
|
||||
# qemu-system-x86_64 -enable-kvm -cpu qemu64,+kvmclock -m 512 -smp 1 -qmp stdio \
|
||||
# qemu-system-x86_64 -enable-kvm -cpu qemu64,kvmclock=on -m 512 -smp 1 -qmp stdio \
|
||||
-device piix3-usb-uhci -device usb-tablet -name secondary \
|
||||
-netdev tap,id=hn0,vhost=off,helper=/usr/lib/qemu/qemu-bridge-helper \
|
||||
-device rtl8139,id=e0,netdev=hn0 \
|
||||
|
|
|
@ -109,7 +109,8 @@ NSS. Registration can be done from Firefox or the command line:
|
|||
|
||||
on the host specify the ccid-card-passthru device with a suitable chardev:
|
||||
|
||||
qemu -chardev socket,server,host=0.0.0.0,port=2001,id=ccid,nowait -usb -device usb-ccid -device ccid-card-passthru,chardev=ccid
|
||||
qemu -chardev socket,server=on,host=0.0.0.0,port=2001,id=ccid,wait=off \
|
||||
-usb -device usb-ccid -device ccid-card-passthru,chardev=ccid
|
||||
|
||||
on the client run vscclient, built when you built QEMU:
|
||||
|
||||
|
@ -125,7 +126,8 @@ Follow instructions as per #4, except run QEMU and vscclient as follows:
|
|||
Run qemu as per #5, and run vscclient from the "fake-smartcard"
|
||||
directory as follows:
|
||||
|
||||
qemu -chardev socket,server,host=0.0.0.0,port=2001,id=ccid,nowait -usb -device usb-ccid -device ccid-card-passthru,chardev=ccid
|
||||
qemu -chardev socket,server=on,host=0.0.0.0,port=2001,id=ccid,wait=off \
|
||||
-usb -device usb-ccid -device ccid-card-passthru,chardev=ccid
|
||||
vscclient -e "db=\"sql:$PWD\" use_hw=no soft=(,Test,CAC,,id-cert,signing-cert,encryption-cert)" <qemu-host> 2001
|
||||
|
||||
|
||||
|
|
|
@ -164,11 +164,11 @@ clearly describe the usage.
|
|||
Primary(ip:3.3.3.3):
|
||||
-netdev tap,id=hn0,vhost=off,script=/etc/qemu-ifup,downscript=/etc/qemu-ifdown
|
||||
-device e1000,id=e0,netdev=hn0,mac=52:a4:00:12:78:66
|
||||
-chardev socket,id=mirror0,host=3.3.3.3,port=9003,server,nowait
|
||||
-chardev socket,id=compare1,host=3.3.3.3,port=9004,server,nowait
|
||||
-chardev socket,id=compare0,host=3.3.3.3,port=9001,server,nowait
|
||||
-chardev socket,id=mirror0,host=3.3.3.3,port=9003,server=on,wait=off
|
||||
-chardev socket,id=compare1,host=3.3.3.3,port=9004,server=on,wait=off
|
||||
-chardev socket,id=compare0,host=3.3.3.3,port=9001,server=on,wait=off
|
||||
-chardev socket,id=compare0-0,host=3.3.3.3,port=9001
|
||||
-chardev socket,id=compare_out,host=3.3.3.3,port=9005,server,nowait
|
||||
-chardev socket,id=compare_out,host=3.3.3.3,port=9005,server=on,wait=off
|
||||
-chardev socket,id=compare_out0,host=3.3.3.3,port=9005
|
||||
-object iothread,id=iothread1
|
||||
-object filter-mirror,id=m0,netdev=hn0,queue=tx,outdev=mirror0
|
||||
|
@ -190,11 +190,11 @@ If you want to use virtio-net-pci or other driver with vnet_header:
|
|||
Primary(ip:3.3.3.3):
|
||||
-netdev tap,id=hn0,vhost=off,script=/etc/qemu-ifup,downscript=/etc/qemu-ifdown
|
||||
-device e1000,id=e0,netdev=hn0,mac=52:a4:00:12:78:66
|
||||
-chardev socket,id=mirror0,host=3.3.3.3,port=9003,server,nowait
|
||||
-chardev socket,id=compare1,host=3.3.3.3,port=9004,server,nowait
|
||||
-chardev socket,id=compare0,host=3.3.3.3,port=9001,server,nowait
|
||||
-chardev socket,id=mirror0,host=3.3.3.3,port=9003,server=on,wait=off
|
||||
-chardev socket,id=compare1,host=3.3.3.3,port=9004,server=on,wait=off
|
||||
-chardev socket,id=compare0,host=3.3.3.3,port=9001,server=on,wait=off
|
||||
-chardev socket,id=compare0-0,host=3.3.3.3,port=9001
|
||||
-chardev socket,id=compare_out,host=3.3.3.3,port=9005,server,nowait
|
||||
-chardev socket,id=compare_out,host=3.3.3.3,port=9005,server=on,wait=off
|
||||
-chardev socket,id=compare_out0,host=3.3.3.3,port=9005
|
||||
-object filter-mirror,id=m0,netdev=hn0,queue=tx,outdev=mirror0,vnet_hdr_support
|
||||
-object filter-redirector,netdev=hn0,id=redire0,queue=rx,indev=compare_out,vnet_hdr_support
|
||||
|
|
|
@ -39,7 +39,7 @@ shown here.
|
|||
First, QEMU should be started like this:
|
||||
|
||||
# qemu-system-TARGET [...] \
|
||||
-chardev socket,id=qmp,port=4444,host=localhost,server \
|
||||
-chardev socket,id=qmp,port=4444,host=localhost,server=on \
|
||||
-mon chardev=qmp,mode=control,pretty=on
|
||||
|
||||
Then, in a different terminal:
|
||||
|
|
|
@ -129,7 +129,7 @@
|
|||
# "-machine smm=on". (On the "pc-q35-*" machine types of
|
||||
# the @i386 emulation target, @requires-smm presents
|
||||
# further CPU requirements; one combination known to work
|
||||
# is "-cpu coreduo,-nx".) If the firmware is marked as
|
||||
# is "-cpu coreduo,nx=off".) If the firmware is marked as
|
||||
# both @secure-boot and @requires-smm, then write
|
||||
# accesses to the pflash chip (NVRAM) that holds the UEFI
|
||||
# variable store must be restricted to code that executes
|
||||
|
|
|
@ -133,7 +133,7 @@ socket::
|
|||
-M q35 -nodefaults -m 512 \
|
||||
-blockdev node-name=node-A,driver=qcow2,file.driver=file,file.node-name=file,file.filename=./a.qcow2 \
|
||||
-device virtio-blk,drive=node-A,id=virtio0 \
|
||||
-monitor stdio -qmp unix:/tmp/qmp-sock,server,nowait
|
||||
-monitor stdio -qmp unix:/tmp/qmp-sock,server=on,wait=off
|
||||
|
||||
The ``-blockdev`` command-line option, used above, is available from
|
||||
QEMU 2.9 onwards. In the above invocation, notice the ``node-name``
|
||||
|
@ -698,7 +698,7 @@ it could be located elsewhere)::
|
|||
-M q35 -nodefaults -m 512 \
|
||||
-blockdev node-name=node-TargetDisk,driver=qcow2,file.driver=file,file.node-name=file,file.filename=./target-disk.qcow2 \
|
||||
-device virtio-blk,drive=node-TargetDisk,id=virtio0 \
|
||||
-S -monitor stdio -qmp unix:./qmp-sock2,server,nowait \
|
||||
-S -monitor stdio -qmp unix:./qmp-sock2,server=on,wait=off \
|
||||
-incoming tcp:localhost:6666
|
||||
|
||||
Given the disk image chain on source QEMU::
|
||||
|
|
|
@ -26,7 +26,7 @@ Usage
|
|||
You can use the -qmp option to enable QMP. For example, the following
|
||||
makes QMP available on localhost port 4444:
|
||||
|
||||
$ qemu [...] -qmp tcp:localhost:4444,server,nowait
|
||||
$ qemu [...] -qmp tcp:localhost:4444,server=on,wait=off
|
||||
|
||||
However, for more flexibility and to make use of more options, the -mon
|
||||
command-line option should be used. For instance, the following example
|
||||
|
@ -34,7 +34,7 @@ creates one HMP instance (human monitor) on stdio and one QMP instance
|
|||
on localhost port 4444:
|
||||
|
||||
$ qemu [...] -chardev stdio,id=mon0 -mon chardev=mon0,mode=readline \
|
||||
-chardev socket,id=mon1,host=localhost,port=4444,server,nowait \
|
||||
-chardev socket,id=mon1,host=localhost,port=4444,server=on,wait=off \
|
||||
-mon chardev=mon1,mode=control,pretty=on
|
||||
|
||||
Please, refer to QEMU's manpage for more information.
|
||||
|
|
|
@ -14,7 +14,7 @@ vCPU hotplug
|
|||
$ qemu-system-x86_64 -display none -no-user-config -m 2048 \
|
||||
-nodefaults -monitor stdio -machine pc,accel=kvm,usb=off \
|
||||
-smp 1,maxcpus=2 -cpu IvyBridge-IBRS \
|
||||
-qmp unix:/tmp/qmp-sock,server,nowait
|
||||
-qmp unix:/tmp/qmp-sock,server=on,wait=off
|
||||
|
||||
(2) Run 'qmp-shell' (located in the source tree, under: "scripts/qmp/)
|
||||
to connect to the just-launched QEMU::
|
||||
|
|
|
@ -364,7 +364,7 @@ Host passthrough with feature customization:
|
|||
|
||||
.. parsed-literal::
|
||||
|
||||
|qemu_system| -cpu host,-vmx,...
|
||||
|qemu_system| -cpu host,vmx=off,...
|
||||
|
||||
Named CPU models:
|
||||
|
||||
|
@ -376,7 +376,7 @@ Named CPU models with feature customization:
|
|||
|
||||
.. parsed-literal::
|
||||
|
||||
|qemu_system| -cpu Westmere,+pcid,...
|
||||
|qemu_system| -cpu Westmere,pcid=on,...
|
||||
|
||||
Libvirt guest XML
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
|
|
@ -146,6 +146,13 @@ library enabled as a cryptography provider.
|
|||
Neither the ``nettle`` library, or the built-in cryptography provider are
|
||||
supported on FIPS enabled hosts.
|
||||
|
||||
``-writeconfig`` (since 6.0)
|
||||
'''''''''''''''''''''''''''''
|
||||
|
||||
The ``-writeconfig`` option is not able to serialize the entire contents
|
||||
of the QEMU command line. It is thus considered a failed experiment
|
||||
and deprecated, with no current replacement.
|
||||
|
||||
QEMU Machine Protocol (QMP) commands
|
||||
------------------------------------
|
||||
|
||||
|
|
|
@ -24,7 +24,7 @@ Example configuration
|
|||
|
||||
* Add a ``tn3270`` chardev and a ``x-terminal3270`` to the QEMU command line::
|
||||
|
||||
-chardev socket,id=ch0,host=0.0.0.0,port=2300,nowait,server,tn3270
|
||||
-chardev socket,id=ch0,host=0.0.0.0,port=2300,wait=off,server=on,tn3270=on
|
||||
-device x-terminal3270,chardev=ch0,devno=fe.0.000a,id=terminal0
|
||||
|
||||
* Start the guest. In the guest, use ``chccwdev -e 0.0.000a`` to enable
|
||||
|
|
|
@ -24,7 +24,7 @@ AVR cpu
|
|||
- Continuous non interrupted execution with serial output into telnet window::
|
||||
|
||||
qemu-system-avr -M mega2560 -bios demo.elf -nographic \
|
||||
-serial tcp::5678,server,nowait
|
||||
-serial tcp::5678,server=on,wait=off
|
||||
|
||||
and then in another shell::
|
||||
|
||||
|
|
|
@ -44,7 +44,7 @@ the password all clients will be rejected.
|
|||
|
||||
.. parsed-literal::
|
||||
|
||||
|qemu_system| [...OPTIONS...] -vnc :1,password -monitor stdio
|
||||
|qemu_system| [...OPTIONS...] -vnc :1,password=on -monitor stdio
|
||||
(qemu) change vnc password
|
||||
Password: ********
|
||||
(qemu)
|
||||
|
@ -104,7 +104,7 @@ authentication to provide two layers of authentication for clients.
|
|||
|
||||
|qemu_system| [...OPTIONS...] \
|
||||
-object tls-creds-x509,id=tls0,dir=/etc/pki/qemu,endpoint=server,verify-peer=on \
|
||||
-vnc :1,tls-creds=tls0,password -monitor stdio
|
||||
-vnc :1,tls-creds=tls0,password=on -monitor stdio
|
||||
(qemu) change vnc password
|
||||
Password: ********
|
||||
(qemu)
|
||||
|
@ -128,7 +128,7 @@ can be launched with:
|
|||
|
||||
.. parsed-literal::
|
||||
|
||||
|qemu_system| [...OPTIONS...] -vnc :1,sasl -monitor stdio
|
||||
|qemu_system| [...OPTIONS...] -vnc :1,sasl=on -monitor stdio
|
||||
|
||||
.. _vnc_005fsec_005fcertificate_005fsasl:
|
||||
|
||||
|
@ -146,7 +146,7 @@ x509 options:
|
|||
|
||||
|qemu_system| [...OPTIONS...] \
|
||||
-object tls-creds-x509,id=tls0,dir=/etc/pki/qemu,endpoint=server,verify-peer=on \
|
||||
-vnc :1,tls-creds=tls0,sasl -monitor stdio
|
||||
-vnc :1,tls-creds=tls0,sasl=on -monitor stdio
|
||||
|
||||
.. _vnc_005fsetup_005fsasl:
|
||||
|
||||
|
|
|
@ -69,7 +69,7 @@ Standard options:
|
|||
a description of character device properties. A common character device
|
||||
definition configures a UNIX domain socket::
|
||||
|
||||
--chardev socket,id=char1,path=/tmp/qmp.sock,server,nowait
|
||||
--chardev socket,id=char1,path=/tmp/qmp.sock,server=on,wait=off
|
||||
|
||||
.. option:: --export [type=]nbd,id=<id>,node-name=<node-name>[,name=<export-name>][,writable=on|off][,bitmap=<name>]
|
||||
--export [type=]vhost-user-blk,id=<id>,node-name=<node-name>,addr.type=unix,addr.path=<socket-path>[,writable=on|off][,logical-block-size=<block-size>][,num-queues=<num-queues>]
|
||||
|
@ -124,7 +124,7 @@ Launch the daemon with QMP monitor socket ``qmp.sock`` so clients can execute
|
|||
QMP commands::
|
||||
|
||||
$ qemu-storage-daemon \
|
||||
--chardev socket,path=qmp.sock,server,nowait,id=char1 \
|
||||
--chardev socket,path=qmp.sock,server=on,wait=off,id=char1 \
|
||||
--monitor chardev=char1
|
||||
|
||||
Export raw image file ``disk.img`` over NBD UNIX domain socket ``nbd.sock``::
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue