From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:55841) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TRhfv-0007Yg-9I for qemu-devel@nongnu.org; Fri, 26 Oct 2012 07:02:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TRhfl-0002oZ-MJ for qemu-devel@nongnu.org; Fri, 26 Oct 2012 07:02:03 -0400 Received: from mx1.redhat.com ([209.132.183.28]:38222) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TRhfl-0002n5-EZ for qemu-devel@nongnu.org; Fri, 26 Oct 2012 07:01:53 -0400 From: Amit Shah Date: Fri, 26 Oct 2012 16:31:36 +0530 Message-Id: Subject: [Qemu-devel] [PATCH 0/8] virtio-rng: hardware random number generator device List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori Cc: Amit Shah , qemu list Hello, Reviving this series last sent by Anthony to the list. The differences are minimal from the time Anthony sent, just rebasing to the current tree and fixing a couple of minor bugs. I've not really looked in detail at the object patches -- mostly just concerned about the device itself. Please review and apply if appropriate. Changes from last submission: - Fix a few typos/whitespaces in rng.h - Switch to virtqueue_get_avail_bytes(): helps remove the savevm/loadvm complexities and provides a cleaner interface - Remove the older qevent hunks that got left behind - Rebase to master - Bugfix: rng_backend_request_entropy() in chr_read() should pass len, not size - Do not request for more entropy in chr_read() once the current request is served; there are other ways this notification will go out. Amit Shah (1): virtio-rng: hardware random number generator device Anthony Liguori (7): object: add object_property_add_bool (v2) qdev: add realized property and make adding child bus implied by realize vl: add -object option to create QOM objects from the command line vl: add -late-object to create QOM objects after machine init rng: add RndBackend abstract object class rng-urandom: add an RNG backend that uses /dev/urandom rng-egd: introduce EGD compliant RNG backend Makefile.objs | 2 + backends/Makefile.objs | 1 + backends/rng-egd.c | 215 ++++++++++++++++++++++++++++++++++++++++++++++++ backends/rng-urandom.c | 144 ++++++++++++++++++++++++++++++++ backends/rng.c | 93 +++++++++++++++++++++ hw/Makefile.objs | 1 + hw/pci.h | 1 + hw/qdev.c | 36 ++++++++- hw/s390-virtio-bus.c | 37 ++++++++ hw/s390-virtio-bus.h | 2 + hw/virtio-pci.c | 60 +++++++++++++ hw/virtio-pci.h | 2 + hw/virtio-rng.c | 149 +++++++++++++++++++++++++++++++++ hw/virtio-rng.h | 24 ++++++ hw/virtio.h | 3 + include/qemu/object.h | 16 ++++ include/qemu/rng.h | 93 +++++++++++++++++++++ qemu-config.c | 20 +++++ qemu-options.hx | 20 +++++ qom/object.c | 56 +++++++++++++ vl.c | 62 ++++++++++++++ 21 files changed, 1036 insertions(+), 1 deletions(-) create mode 100644 backends/Makefile.objs create mode 100644 backends/rng-egd.c create mode 100644 backends/rng-urandom.c create mode 100644 backends/rng.c create mode 100644 hw/virtio-rng.c create mode 100644 hw/virtio-rng.h create mode 100644 include/qemu/rng.h -- 1.7.7.6