Re: [PATCH v2 2/2] virtio: rng: ensure reads happen after successful probe
From: Amit Shah <hidden>
Date: 2014-07-10 09:53:46
Also in:
lkml, stable
On (Thu) 10 Jul 2014 [16:45:14], Herbert Xu wrote:
On Wed, Jul 09, 2014 at 12:18:36PM -0400, Jason Cooper wrote:quoted
On Sat, Jul 05, 2014 at 11:04:53AM +0530, Amit Shah wrote:quoted
The hwrng core asks for random data in the hwrng_register() call itself from commit d9e7972619. This doesn't play well with virtio -- the DRIVER_OK bit is only set by virtio core on a successful probe, and we're not yet out of our probe routine when this call is made. This causes the host to not acknowledge any requests we put in the virtqueue, and the insmod or kernel boot process just waits for data to arrive from the host, which never happens. CC: Kees Cook <redacted> CC: Jason Cooper <redacted> CC: Herbert Xu <herbert@gondor.apana.org.au> CC: <redacted> # For v3.15+ Signed-off-by: Amit Shah <redacted> --- drivers/char/hw_random/core.c | 6 ++++++ drivers/char/hw_random/virtio-rng.c | 10 ++++++++++ 2 files changed, 16 insertions(+)Yeah, I don't think there's any viable way to get random data out of virtio-rng at probe time... :-( Reviewed-by: Jason Cooper <redacted>OK, if there are no more objections I will take these two patches.
Please wait for the v3 -- I like that one better as it doesn't have the init weirdness that Kees pointed out. I'm sending that out in a few mins. Thanks! Amit