virtio_rng: replace custom backend API with UserCreatable.complete() callback
in addition fix default backend leak by releasing it if itsinitialization failed.
Signed-off-by: Igor Mammedov <imammedo@redhat.com>Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>...
add optional 2nd stage initialization to -object/object-add commands
Introduces USER_CREATABLE interface that must be implemented byobjects which are designed to created with -object CLI option orobject-add QMP command.
Interface provides an ability to do an optional second stage...
rng: initialize file descriptor to -1
The file descriptor is never initialized to -1, which makes rng-randomclose stdin if an object is created and immediately destroyed. If wechange it to -1, we also need to protect qemu_set_fd_handler fromreceiving a bogus file descriptor....
rng-egd: remove redundant free
We didn't set default chr_name, the free is redundant.
Signed-off-by: Amos Kong <akong@redhat.com>Message-id: 1385023371-8198-2-git-send-email-akong@redhat.comSigned-off-by: Anthony Liguori <aliguori@amazon.com>
rng-egd: offset the point when repeatedly read from the buffer
The buffer content might be read out more than once, currentlywe just repeatedly read the first data block, buffer offset ismissing.
Cc: qemu-stable@nongnu.orgSigned-off-by: Amos Kong <akong@redhat.com>...
aio / timers: Switch entire codebase to the new timer API
This is an autogenerated patch using scripts/switch-timer-api.
Switch the entire code base to using the new timer API.
Note this patch may introduce some line length issues.
Signed-off-by: Alex Bligh <alex@alex.org.uk>...
aio / timers: Rename qemu_timer_* functions
Rename four functions in preparation for new API.
Rename qemu_timer_expired to timer_expiredRename qemu_timer_expire_time_ns to timer_expire_time_nsRename qemu_timer_pending to timer_pendingRename qemu_timer_expired_ns to timer_expired_ns...
rng-random: use error_setg_file_open()
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>Acked-by: Kevin Wolf <kwolf@redhat.com>
qemu-char: don't issue CHR_EVENT_OPEN in a BH
When CHR_EVENT_OPENED was initially added, it was CHR_EVENT_RESET,and it was issued as a bottom-half:
86e94dea5b740dad65446c857f6959eae43e0ba6
Which we basically used to print out a greeting/prompt for the...
rng random backend: check for -EAGAIN errors on read
Not handling EAGAIN triggers the assert
qemu/backends/rng-random.c:44:entropy_available: assertion failed: (len != -1)Aborted (core dumped)
This happens when starting a guest with '-device virtio-rng-pci',...
tpm: reorganize headers and split hardware part
The TPM subsystem does not have a full front-end/back-end separation.The sole available backend, tpm_passthrough, depends on the datastructures of the sole available frontend, tpm_tis.
However, we can at least try to split the user interface (tpm.c) from the...
sysemu: avoid proliferation of include/ subdirectories
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
qemu-char: Call fe_claim / fe_release when not using qdev chr properties
chardev-frontends need to explictly check, increase and decrement theavail_connections "property" of the chardev when they are not using aqdev-chardev-property for the chardev.
This fixes things like:...
QOM-ify the TPM support
QOM-ified the TPM support with much code borrowed from the rng implementation.
All other TPM related code moves will be provided in a subsequent patch.
Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>Message-id: 1364469981.24703.1.camel@d941e-10...
qemu-char: Rename qemu_chr_generic_open to qemu_chr_be_generic_open
To better reflect that it is for handling a backend being opened.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>Message-id: 1364292483-16564-3-git-send-email-hdegoede@redhat.comSigned-off-by: Anthony Liguori <aliguori@us.ibm.com>
chardev: add msmouse support to qapi
This patch adds 'msmouse' support to qapi and also switches overthe msmouse chardev initialization to the new qapi code path.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
chardev: add braille support to qapi
This patch adds 'braille' support to qapi and also switches overthe braille chardev initialization to the new qapi code path.
Merge remote-tracking branch 'bonzini/hw-dirs' into staging
rng-random: Use qemu_open / qemu_close
In the rng backend use qemu_open and qemu_close rather than POSIXopen/close.
Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>Reviewed-by: Eric Blake <eblake@redhat.com>Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
hw: move char backends to backends/
Braille and msmouse support is in hw/, but it is not hardware.Move it to the backends/ directory.
Make all static TypeInfos const
Since 39bffca2030950ef6efe57c2fac8327a45ae1015 (qdev: register alltypes natively through QEMU Object Model), TypeInfo as used inthe common, non-iterative pattern is no longer amended with informationand should therefore be const....
softmmu: move remaining include files to include/ subdirectories
misc: move include files to include/qemu/
qapi: move include files to include/qobject/
rng-random: only build on POSIX platforms
There is no /dev/random on win32.
Cc: Stefan Weil <weil@mail.berlios.de>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
rng-egd: don't use gslist_free_full
This function was only introduced in glib 2.28.0.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
rng-random: add an RNG backend that uses /dev/random (v3)
The filename can be overridden but it expects a non-blocking source of entropy.A typical invocation would be:
qemu -object rng-random,id=rng0 -device virtio-rng-pci,rng=rng0
This can also be used with /dev/urandom by using the command line:...
rng-egd: introduce EGD compliant RNG backend
This backend talks EGD to a CharDriverState. A typical way to invoke this wouldbe:
qemu -chardev socket,host=localhost,port=1024,id=chr0 \ -object rng-egd,chardev=chr0,id=egd0 \ -device virtio-rng-pci,rng=egd0...
rng: add RndBackend abstract object class
This is the backend used by devices that need to request entropy.