Re: [patch] crypto, tcrypt: remove local_bh_disable/enable()around local_irq_disable/enable()

From: Herbert Xu
Date: Thu Sep 27 2012 - 01:44:13 EST


On Mon, Sep 17, 2012 at 10:37:26AM -0700, Suresh Siddha wrote:
> Ran into this while looking at some new crypto code using FPU
> hitting a WARN_ON_ONCE(!irq_fpu_usable()) in the kernel_fpu_begin()
> on a x86 kernel that uses the new eagerfpu model. In short, current eagerfpu
> changes return 0 for interrupted_kernel_fpu_idle() and the in_interrupt()
> thinks it is in the interrupt context because of the local_bh_disable().
> Thus resulting in the WARN_ON().
>
> Remove the local_bh_disable/enable() calls around the existing
> local_irq_disable/enable() calls. local_irq_disable/enable() already
> disables the BH.
>
> [ If there are any other legitimate users calling kernel_fpu_begin() from
> the process context but with BH disabled, then we can look into fixing the
> irq_fpu_usable() in future. ]
>
> Signed-off-by: Suresh Siddha <suresh.b.siddha@xxxxxxxxx>
> Cc: Tim Chen <tim.c.chen@xxxxxxxxxxxxxxx>

Patch applied. Thanks!
--
Email: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/