* [PATCH net] net/tls: allocate tls context using GFP_ATOMIC
@ 2018-12-19 11:48 Ganesh Goudar
2018-12-20 0:30 ` David Miller
0 siblings, 1 reply; 2+ messages in thread
From: Ganesh Goudar @ 2018-12-19 11:48 UTC (permalink / raw)
To: netdev, davem; +Cc: nirranjan, indranil, dt, atul.gupta, Ganesh Goudar
create_ctx can be called from atomic context, hence use
GFP_ATOMIC instead of GFP_KERNEL.
[ 395.962599] BUG: sleeping function called from invalid context at mm/slab.h:421
[ 395.979896] in_atomic(): 1, irqs_disabled(): 0, pid: 16254, name: openssl
[ 395.996564] 2 locks held by openssl/16254:
[ 396.010492] #0: 00000000347acb52 (sk_lock-AF_INET){+.+.}, at: do_tcp_setsockopt.isra.44+0x13b/0x9a0
[ 396.029838] #1: 000000006c9552b5 (device_spinlock){+...}, at: tls_init+0x1d/0x280
[ 396.047675] CPU: 5 PID: 16254 Comm: openssl Tainted: G O 4.20.0-rc6+ #25
[ 396.066019] Hardware name: Supermicro X10SRA-F/X10SRA-F, BIOS 2.0c 09/25/2017
[ 396.083537] Call Trace:
[ 396.096265] dump_stack+0x5e/0x8b
[ 396.109876] ___might_sleep+0x216/0x250
[ 396.123940] kmem_cache_alloc_trace+0x1b0/0x240
[ 396.138800] create_ctx+0x1f/0x60
[ 396.152504] tls_init+0xbd/0x280
[ 396.166135] tcp_set_ulp+0x191/0x2d0
[ 396.180035] ? tcp_set_ulp+0x2c/0x2d0
[ 396.193960] do_tcp_setsockopt.isra.44+0x148/0x9a0
[ 396.209013] __sys_setsockopt+0x7c/0xe0
[ 396.223054] __x64_sys_setsockopt+0x20/0x30
[ 396.237378] do_syscall_64+0x4a/0x180
[ 396.251200] entry_SYSCALL_64_after_hwframe+0x49/0xbe
Fixes: df9d4a178022 ("net/tls: sleeping function from invalid context")
Signed-off-by: Ganesh Goudar <ganeshgr@chelsio.com>
---
net/tls/tls_main.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/tls/tls_main.c b/net/tls/tls_main.c
index 1428bd7..28887cf 100644
--- a/net/tls/tls_main.c
+++ b/net/tls/tls_main.c
@@ -538,7 +538,7 @@ static struct tls_context *create_ctx(struct sock *sk)
struct inet_connection_sock *icsk = inet_csk(sk);
struct tls_context *ctx;
- ctx = kzalloc(sizeof(*ctx), GFP_KERNEL);
+ ctx = kzalloc(sizeof(*ctx), GFP_ATOMIC);
if (!ctx)
return NULL;
--
2.1.0
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH net] net/tls: allocate tls context using GFP_ATOMIC
2018-12-19 11:48 [PATCH net] net/tls: allocate tls context using GFP_ATOMIC Ganesh Goudar
@ 2018-12-20 0:30 ` David Miller
0 siblings, 0 replies; 2+ messages in thread
From: David Miller @ 2018-12-20 0:30 UTC (permalink / raw)
To: ganeshgr; +Cc: netdev, nirranjan, indranil, dt, atul.gupta
From: Ganesh Goudar <ganeshgr@chelsio.com>
Date: Wed, 19 Dec 2018 17:18:22 +0530
> create_ctx can be called from atomic context, hence use
> GFP_ATOMIC instead of GFP_KERNEL.
>
> [ 395.962599] BUG: sleeping function called from invalid context at mm/slab.h:421
> [ 395.979896] in_atomic(): 1, irqs_disabled(): 0, pid: 16254, name: openssl
> [ 395.996564] 2 locks held by openssl/16254:
> [ 396.010492] #0: 00000000347acb52 (sk_lock-AF_INET){+.+.}, at: do_tcp_setsockopt.isra.44+0x13b/0x9a0
> [ 396.029838] #1: 000000006c9552b5 (device_spinlock){+...}, at: tls_init+0x1d/0x280
> [ 396.047675] CPU: 5 PID: 16254 Comm: openssl Tainted: G O 4.20.0-rc6+ #25
> [ 396.066019] Hardware name: Supermicro X10SRA-F/X10SRA-F, BIOS 2.0c 09/25/2017
> [ 396.083537] Call Trace:
> [ 396.096265] dump_stack+0x5e/0x8b
> [ 396.109876] ___might_sleep+0x216/0x250
> [ 396.123940] kmem_cache_alloc_trace+0x1b0/0x240
> [ 396.138800] create_ctx+0x1f/0x60
> [ 396.152504] tls_init+0xbd/0x280
> [ 396.166135] tcp_set_ulp+0x191/0x2d0
> [ 396.180035] ? tcp_set_ulp+0x2c/0x2d0
> [ 396.193960] do_tcp_setsockopt.isra.44+0x148/0x9a0
> [ 396.209013] __sys_setsockopt+0x7c/0xe0
> [ 396.223054] __x64_sys_setsockopt+0x20/0x30
> [ 396.237378] do_syscall_64+0x4a/0x180
> [ 396.251200] entry_SYSCALL_64_after_hwframe+0x49/0xbe
>
> Fixes: df9d4a178022 ("net/tls: sleeping function from invalid context")
> Signed-off-by: Ganesh Goudar <ganeshgr@chelsio.com>
Applied, thanks.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2018-12-20 0:30 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-12-19 11:48 [PATCH net] net/tls: allocate tls context using GFP_ATOMIC Ganesh Goudar
2018-12-20 0:30 ` David Miller
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.