From: Christoph Paasch <cpaa...@apple.com> Date: Thu, 18 Jun 2015 09:15:34 -0700
> tcp_fastopen_reset_cipher really cannot be called from interrupt > context. It allocates the tcp_fastopen_context with GFP_KERNEL and > calls crypto_alloc_cipher, which allocates all kind of stuff with > GFP_KERNEL. > > Thus, we might sleep when the key-generation is triggered by an > incoming TFO cookie-request which would then happen in interrupt- > context, as shown by enabling CONFIG_DEBUG_ATOMIC_SLEEP: ... > This patch moves the call to tcp_fastopen_init_key_once to the places > where a listener socket creates its TFO-state, which always happens in > user-context (either from the setsockopt, or implicitly during the > listen()-call) > > Cc: Eric Dumazet <eric.duma...@gmail.com> > Cc: Hannes Frederic Sowa <han...@stressinduktion.org> > Fixes: 222e83d2e0ae ("tcp: switch tcp_fastopen key generation to > net_get_random_once") > Signed-off-by: Christoph Paasch <cpaa...@apple.com> Applied and queued up for -stable, thanks. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html