All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/4] hwrng: virtio - add an internal buffer
@ 2021-10-28 10:11 ` Laurent Vivier
  0 siblings, 0 replies; 21+ messages in thread
From: Laurent Vivier @ 2021-10-28 10:11 UTC (permalink / raw)
  To: linux-kernel
  Cc: amit, Herbert Xu, Matt Mackall, virtualization, Dmitriy Vyukov,
	rusty, akong, Alexander Potapenko, Michael S . Tsirkin,
	linux-crypto, Laurent Vivier

hwrng core uses two buffers that can be mixed in the virtio-rng queue.

This series fixes the problem by adding an internal buffer in virtio-rng.

Once the internal buffer is added, we can fix two other problems:

- to be able to release the driver without waiting the device releases the
  buffer

- actually returns some data when wait=0 as we can have some already
  available data

It also tries to improve the performance by always having a buffer in
the queue of the device.

v2:
fixes issue reported by syzbot+b86736b5935e0d25b446@syzkaller.appspotmail.com
by reseting data_idx to 0 when the buffer is submitted not when it is
received as the consumer checks for data_avail, not only for the completion.

Laurent Vivier (4):
  hwrng: virtio - add an internal buffer
  hwrng: virtio - don't wait on cleanup
  hwrng: virtio - don't waste entropy
  hwrng: virtio - always add a pending request

 drivers/char/hw_random/virtio-rng.c | 86 ++++++++++++++++++++++-------
 1 file changed, 65 insertions(+), 21 deletions(-)

-- 
2.31.1



^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2022-08-10  7:54 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-10-28 10:11 [PATCH v2 0/4] hwrng: virtio - add an internal buffer Laurent Vivier
2021-10-28 10:11 ` Laurent Vivier
2021-10-28 10:11 ` [PATCH v2 1/4] " Laurent Vivier
2021-10-28 10:11   ` Laurent Vivier
2021-10-28 10:11 ` [PATCH v2 2/4] hwrng: virtio - don't wait on cleanup Laurent Vivier
2021-10-28 10:11   ` Laurent Vivier
2021-10-28 10:11 ` [PATCH v2 3/4] hwrng: virtio - don't waste entropy Laurent Vivier
2021-10-28 10:11   ` Laurent Vivier
2021-10-28 10:11 ` [PATCH v2 4/4] hwrng: virtio - always add a pending request Laurent Vivier
2021-10-28 10:11   ` Laurent Vivier
2022-08-02 12:49   ` Vladimir Murzin
2022-08-03  8:57     ` Vladimir Murzin
2022-08-03 11:39       ` Michael S. Tsirkin
2022-08-03 11:39         ` Michael S. Tsirkin
2022-08-03 12:25         ` Vladimir Murzin
2022-08-03 12:55           ` Michael S. Tsirkin
2022-08-03 12:55             ` Michael S. Tsirkin
2022-08-03 13:12             ` Vladimir Murzin
2022-08-09 20:16               ` Michael S. Tsirkin
2022-08-09 20:16                 ` Michael S. Tsirkin
2022-08-10  7:54                 ` Vladimir Murzin

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.