Re: [PATCH] random: Remove preempt disabled region

From: Theodore Y. Ts'o
Date: Sun Jul 22 2018 - 11:24:01 EST


On Wed, Jul 11, 2018 at 04:37:21PM +0200, Sebastian Andrzej Siewior wrote:
> From: Ingo Molnar <mingo@xxxxxxx>
>
> No need to keep preemption disabled across the whole function.
>
> mix_pool_bytes() uses a spin_lock() to protect the pool and there are
> other places like write_pool() whhich invoke mix_pool_bytes() without
> disabling preemption.
> credit_entropy_bits() is invoked from other places like
> add_hwgenerator_randomness() without disabling preemption.
>
> Before commit 95b709b6be49 ("random: drop trickle mode") the function
> used __this_cpu_inc_return() which would require disabled preemption.
> The preempt_disable() section was added in commit 43d5d3018c37 ("[PATCH]
> random driver preempt robustness", history tree). It was claimed that
> the code relied on "vt_ioctl() being called under BKL".
>
> Cc: "Theodore Ts'o" <tytso@xxxxxxx>
> Signed-off-by: Ingo Molnar <mingo@xxxxxxx>
> Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> [bigeasy: enhance the commit message]
> Signed-off-by: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>

Applied, thanks.

- Ted