• Hoang Le's avatar
    Revert "tipc: use consistent GFP flags" · f845fe58
    Hoang Le authored
    This reverts commit 86c3a3e9.
    
    The tipc_aead_init() function can be calling from an interrupt routine.
    This allocation might sleep with GFP_KERNEL flag, hence the following BUG
    is reported.
    
    [   17.657509] BUG: sleeping function called from invalid context at include/linux/sched/mm.h:230
    [   17.660916] in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 0, name: swapper/3
    [   17.664093] preempt_count: 302, expected: 0
    [   17.665619] RCU nest depth: 2, expected: 0
    [   17.667163] Preemption disabled at:
    [   17.667165] [<0000000000000000>] 0x0
    [   17.669753] CPU: 3 PID: 0 Comm: swapper/3 Kdump: loaded Tainted: G        W         5.16.0-rc4+ #1
    [   17.673006] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.12.0-1 04/01/2014
    [   17.675540] Call Trace:
    [   17.676285]  <IRQ>
    [   17.676913]  dump_stack_lvl+0x34/0x44
    [   17.678033]  __might_resched.cold+0xd6/0x10f
    [   17.679311]  kmem_cache_alloc_trace+0x14d/0x220
    [   17.680663]  tipc_crypto_start+0x4a/0x2b0 [tipc]
    [   17.682146]  ? kmem_cache_alloc_trace+0xd3/0x220
    [   17.683545]  tipc_node_create+0x2f0/0x790 [tipc]
    [   17.684956]  tipc_node_check_dest+0x72/0x680 [tipc]
    [   17.686706]  ? ___cache_free+0x31/0x350
    [   17.688008]  ? skb_release_data+0x128/0x140
    [   17.689431]  tipc_disc_rcv+0x479/0x510 [tipc]
    [   17.690904]  tipc_rcv+0x71c/0x730 [tipc]
    [   17.692219]  ? __netif_receive_skb_core+0xb7/0xf60
    [   17.693856]  tipc_l2_rcv_msg+0x5e/0x90 [tipc]
    [   17.695333]  __netif_receive_skb_list_core+0x20b/0x260
    [   17.697072]  netif_receive_skb_list_internal+0x1bf/0x2e0
    [   17.698870]  ? dev_gro_receive+0x4c2/0x680
    [   17.700255]  napi_complete_done+0x6f/0x180
    [   17.701657]  virtnet_poll+0x29c/0x42e [virtio_net]
    [   17.703262]  __napi_poll+0x2c/0x170
    [   17.704429]  net_rx_action+0x22f/0x280
    [   17.705706]  __do_softirq+0xfd/0x30a
    [   17.706921]  common_interrupt+0xa4/0xc0
    [   17.708206]  </IRQ>
    [   17.708922]  <TASK>
    [   17.709651]  asm_common_interrupt+0x1e/0x40
    [   17.711078] RIP: 0010:default_idle+0x18/0x20
    
    Fixes: 86c3a3e9 ("tipc: use consistent GFP flags")
    Acked-by: default avatarJon Maloy <jmaloy@redhat.com>
    Signed-off-by: default avatarHoang Le <hoang.h.le@dektech.com.au>
    Link: https://lore.kernel.org/r/20211217030059.5947-1-hoang.h.le@dektech.com.auSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
    f845fe58
crypto.c 66.1 KB