CVE-2026-80744 PUBLISHED

netfilter: nf_tables_offload: suppress WARN_ON_ONCE for ENOMEM in abort path

Assigner: Linux
Reserved: 26.08.2026 Published: 03.09.2026 Updated: 03.09.2026

In the Linux kernel, the following vulnerability has been resolved:

netfilter: nf_tables_offload: suppress WARN_ON_ONCE for ENOMEM in abort path

In nft_flow_rule_offload_abort(), WARN_ON_ONCE(err) is triggered on every error during rollback, including -ENOMEM. Memory allocation failures are expected under low-memory conditions and do not indicate a kernel bug.

Trace for example: nft_flow_offload_chain() // FLOW_BLOCK_BIND nft_flow_block_chain() nft_chain_offload_cmd() nft_block_offload_cmd() ->ndo_setup_tc() nsim_setup_tc() flow_block_cb_setup_simple() flow_block_cb_alloc() // fails to -ENOMEM

The warning was reproduced on the 5.10 stable kernel under memory pressure via fault injection, but the underlying bug exists in mainline as well, as demonstrated by the ENOMEM trace above. The following splat was triggered during nf_tables transaction processing:

WARNING: CPU: 0 PID: 8567 at net/netfilter/nf_tables_offload.c:532 nft_flow_rule_offload_abort net/netfilter/nf_tables_offload.c:532 [inline] WARNING: CPU: 0 PID: 8567 at net/netfilter/nf_tables_offload.c:532 nft_flow_rule_offload_commit+0x971/0xcd0 net/netfilter/nf_tables_offload.c:591 Modules linked in: CPU: 0 PID: 8567 Comm: syz-executor.0 Not tainted 5.10.260-syzkaller #0 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.12.0-1 04/01/2014 RIP: 0010:nft_flow_rule_offload_abort net/netfilter/nf_tables_offload.c:532 [inline] RIP: 0010:nft_flow_rule_offload_commit+0x971/0xcd0 net/netfilter/nf_tables_offload.c:591 Call Trace: nf_tables_commit+0x3bd/0x4bd0 net/netfilter/nf_tables_api.c:8604 nfnetlink_rcv_batch+0xb1e/0x1f20 net/netfilter/nfnetlink.c:509 nfnetlink_rcv_skb_batch net/netfilter/nfnetlink.c:579 [inline] nfnetlink_rcv+0x3b3/0x420 net/netfilter/nfnetlink.c:597 netlink_unicast_kernel net/netlink/af_netlink.c:1314 [inline] netlink_unicast+0x6cd/0xa00 net/netfilter/af_netlink.c:1340 netlink_sendmsg+0x906/0xe10 net/netfilter/af_netlink.c:1919 sock_sendmsg_nosec net/socket.c:651 [inline] __sock_sendmsg+0x155/0x190 net/socket.c:663 _syssendmsg+0x705/0x870 net/socket.c:2379 _sys_sendmsg+0x100/0x170 net/socket.c:2433 __sys_sendmsg+0xe9/0x1c0 net/socket.c:2462 do_syscall_64+0x33/0x40 arch/x86/entry/common.c:46 entry_SYSCALL_64_after_hwframe+0x67/0xd1

Change the condition to WARN_ON_ONCE(err && err != -ENOMEM) so that warnings are only emitted for unexpected errors. This aligns with the common kernel practice of not warning on -ENOMEM.

Found by Linux Verification Center (linuxtesting.org) with Syzkaller.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from 63b48c73ff567bbab1f940d6e8f3f48607077a13 to 2319033c4bf8bdb275a9e4e1f7af9bf8a457ad79 (excl.)
  • affected from 63b48c73ff567bbab1f940d6e8f3f48607077a13 to 6ee3803c22b72508c5baf1e5aecb21301b714be0 (excl.)
  • affected from 63b48c73ff567bbab1f940d6e8f3f48607077a13 to 09bda4b6df222fd1819e8f188c3a6e90caf546d3 (excl.)
  • affected from 63b48c73ff567bbab1f940d6e8f3f48607077a13 to 17c132e18ca5d1641ddbaed8d0e6ecfd1d38fa0b (excl.)
  • affected from 63b48c73ff567bbab1f940d6e8f3f48607077a13 to 7ce9851be6f2b019e96e105a9de99715aec6deb4 (excl.)
  • affected from 63b48c73ff567bbab1f940d6e8f3f48607077a13 to 4a923fe60939a194777bc605036ce2147ab00c9d (excl.)
  • affected from 63b48c73ff567bbab1f940d6e8f3f48607077a13 to c23620a0fa5b1d80399f894c41a9f78bc29d6235 (excl.)
  • affected from 63b48c73ff567bbab1f940d6e8f3f48607077a13 to d02f592064347e0c1e0d84f24941ad338838cc48 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 5.5 is affected
  • unaffected from 0 to 5.5 (excl.)
  • unaffected from 5.10.266 to 5.10.* (incl.)
  • unaffected from 5.15.217 to 5.15.* (incl.)
  • unaffected from 6.1.184 to 6.1.* (incl.)
  • unaffected from 6.6.153 to 6.6.* (incl.)
  • unaffected from 6.12.105 to 6.12.* (incl.)
  • unaffected from 6.18.46 to 6.18.* (incl.)
  • unaffected from 7.1.10 to 7.1.* (incl.)
  • unaffected from 7.2 to * (incl.)

References