On Wed, Sep 22, 2021 at 7:09 PM Laurent Vivier <lvivier@xxxxxxxxxx> wrote: > > 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. Tested-by: Alexander Potapenko <glider@xxxxxxxxxx> for the series With these four patches applied, KMSAN stops reporting boot-time errors in _mix_pool_bytes reported here: https://www.spinics.net/lists/linux-virtualization/msg46310.html > 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 | 84 +++++++++++++++++++++-------- > 1 file changed, 63 insertions(+), 21 deletions(-) > > -- > 2.31.1 > > -- Alexander Potapenko Software Engineer Google Germany GmbH Erika-Mann-Straße, 33 80636 München Geschäftsführer: Paul Manicle, Halimah DeLaine Prado Registergericht und -nummer: Hamburg, HRB 86891 Sitz der Gesellschaft: Hamburg