From: Amit Shah <amit.shah@redhat.com>
To: Anthony Liguori <anthony@codemonkey.ws>
Cc: qemu list <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] [PATCH v2 1/1] virtio-rng: hardware random number generator device
Date: Sat, 26 May 2012 01:50:18 +0530 [thread overview]
Message-ID: <20120525202018.GA21590@amit.redhat.com> (raw)
In-Reply-To: <4FBFE4F5.7010408@codemonkey.ws>
On (Fri) 25 May 2012 [15:00:53], Anthony Liguori wrote:
> On 05/25/2012 02:32 PM, Amit Shah wrote:
> >The Linux kernel already has a virtio-rng driver, this is the device
> >implementation.
> >
> >When the guest asks for entropy from the virtio hwrng, it puts a buffer
> >in the vq. We then put entropy into that buffer, and push it back to
> >the guest.
> >
> >The chardev connected to this device is fed the data to be sent to the
> >guest.
> >
> >Invocation is simple:
> >
> > $ qemu ... -device virtio-rng-pci,chardev=foo
> >
> >In the guest, we see
> >
> > $ cat /sys/devices/virtual/misc/hw_random/rng_available
> > virtio
> >
> > $ cat /sys/devices/virtual/misc/hw_random/rng_current
> > virtio
> >
> > # cat /dev/hwrng
> >
> >Simply feeding /dev/urandom from the host to the chardev is sufficient:
> >
> > $ qemu ... -chardev socket,path=/tmp/foo,server,nowait,id=foo \
> > -device virtio-rng,chardev=foo
> >
> > $ nc -U /tmp/foo< /dev/urandom
> >
> >A QMP event is sent for interested apps to monitor activity and send the
> >appropriate number of bytes that get asked by the guest:
> >
> > {"timestamp": {"seconds": 1337966878, "microseconds": 517009}, \
> > "event": "ENTROPY_NEEDED", "data": {"bytes": 64}}
>
> I don't understand the point of this event. Can't a management app
> just create a socket and then it can see all the requests the guest
> makes?
How? With the chardev, it can only keep feeding data, and that data
will be consumed when chr_can_read() returns > 0. And even then the
mgmt app has no idea how much data was asked for, and how much was
consumed.
Amit
next prev parent reply other threads:[~2012-05-25 20:20 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-05-25 19:32 [Qemu-devel] [PATCH v2 0/1] virtio-rng: hardware random number generator Amit Shah
2012-05-25 19:32 ` [Qemu-devel] [PATCH v2 1/1] virtio-rng: hardware random number generator device Amit Shah
2012-05-25 20:00 ` Anthony Liguori
2012-05-25 20:20 ` Amit Shah [this message]
2012-06-04 11:04 ` Anthony Liguori
2012-06-05 9:41 ` Amit Shah
2012-06-05 9:54 ` Anthony Liguori
2012-06-05 10:16 ` Amit Shah
2012-06-11 13:34 ` Daniel P. Berrange
2012-05-28 8:33 ` Daniel P. Berrange
2012-05-28 9:17 ` Amit Shah
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20120525202018.GA21590@amit.redhat.com \
--to=amit.shah@redhat.com \
--cc=anthony@codemonkey.ws \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.