• Pablo Neira Ayuso's avatar
    netfilter: nf_flow_table: set timeout before insertion into hashes · daf61b02
    Pablo Neira Ayuso authored
    Other garbage collector might remove an entry not fully set up yet.
    
    [570953.958293] RIP: 0010:memcmp+0x9/0x50
    [...]
    [570953.958567]  flow_offload_hash_cmp+0x1e/0x30 [nf_flow_table]
    [570953.958585]  flow_offload_lookup+0x8c/0x110 [nf_flow_table]
    [570953.958606]  nf_flow_offload_ip_hook+0x135/0xb30 [nf_flow_table]
    [570953.958624]  nf_flow_offload_inet_hook+0x35/0x37 [nf_flow_table_inet]
    [570953.958646]  nf_hook_slow+0x3c/0xb0
    [570953.958664]  __netif_receive_skb_core+0x90f/0xb10
    [570953.958678]  ? ip_rcv_finish+0x82/0xa0
    [570953.958692]  __netif_receive_skb_one_core+0x3b/0x80
    [570953.958711]  __netif_receive_skb+0x18/0x60
    [570953.958727]  netif_receive_skb_internal+0x45/0xf0
    [570953.958741]  napi_gro_receive+0xcd/0xf0
    [570953.958764]  ixgbe_clean_rx_irq+0x432/0xe00 [ixgbe]
    [570953.958782]  ixgbe_poll+0x27b/0x700 [ixgbe]
    [570953.958796]  net_rx_action+0x284/0x3c0
    [570953.958817]  __do_softirq+0xcc/0x27c
    [570953.959464]  irq_exit+0xe8/0x100
    [570953.960097]  do_IRQ+0x59/0xe0
    [570953.960734]  common_interrupt+0xf/0xf
    
    Fixes: 43c8f131 ("netfilter: nf_flow_table: fix missing error check for rhashtable_insert_fast")
    Signed-off-by: default avatarPablo Neira Ayuso <pablo@netfilter.org>
    daf61b02
nf_flow_table_core.c 13.7 KB