Hi On 12.10.2019 14:09, Herbert Xu wrote: > On Fri, Oct 11, 2019 at 03:47:24PM +0200, Laurent Vivier wrote: >> add_early_randomness() is called every time a new rng backend is added >> and every time it is set as the current rng provider. >> >> add_early_randomness() is called from functions locking rng_mutex, >> and if it hangs all the hw_random framework hangs: we can't read sysfs, >> add or remove a backend. >> >> This patch moves add_early_randomness() out of the rng_mutex zone. >> It only needs the reading_mutex. >> >> Signed-off-by: Laurent Vivier <lvivier@xxxxxxxxxx> >> --- >> >> Notes: >> v2: in hwrng_register, take rng->ref only if rng is the new current_rng >> >> drivers/char/hw_random/core.c | 61 +++++++++++++++++++++++++---------- >> 1 file changed, 44 insertions(+), 17 deletions(-) > Please rebase your patch on top of the cryptodev tree, i.e., make > this an incremental patch with a Fixes header. This v2 applied on the linux-next with reverted v1 fixes my issue. When you prepare the incremental patch, feel free to add: Reported-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx> Fixes: daae28debcb0 ("hwrng: core - move add_early_randomness() out of rng_mutex") Tested-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx> Best regards -- Marek Szyprowski, PhD Samsung R&D Institute Poland