CVE-2021-47266: RDMA/ipoib: Fix warning caused by destroying non-initial netns
In the Linux kernel, the following vulnerability has been resolved:
RDMA/ipoib: Fix warning caused by destroying non-initial netns
After the commit 5ce2dced8e95 ("RDMA/ipoib: Set rtnl_link_ops for ipoib
interfaces"), if the IPoIB device is moved to non-initial netns,
destroying that netns lets the device vanish instead of moving it back to
the initial netns, This is happening because default_device_exit() skips
the interfaces due to having rtnl_link_ops set.
Steps to reporoduce:
ip netns add foo
ip link set mlx5_ib0 netns foo
ip netns delete foo
WARNING: CPU: 1 PID: 704 at net/core/dev.c:11435 netdev_exit+0x3f/0x50
Modules linked in: xt_CHECKSUM xt_MASQUERADE xt_conntrack ipt_REJECT
nf_reject_ipv4 nft_compat nft_counter nft_chain_nat nf_nat nf_conntrack
nf_defrag_ipv6 nf_defrag_ipv4 nf_tables nfnetlink tun d
fuse
CPU: 1 PID: 704 Comm: kworker/u64:3 Tainted: G S W 5.13.0-rc1+ #1
Hardware name: Dell Inc. PowerEdge R630/02C2CP, BIOS 2.1.5 04/11/2016
Workqueue: netns cleanup_net
RIP: 0010:netdev_exit+0x3f/0x50
Code: 48 8b bb 30 01 00 00 e8 ef 81 b1 ff 48 81 fb c0 3a 54 a1 74 13 48
8b 83 90 00 00 00 48 81 c3 90 00 00 00 48 39 d8 75 02 5b c3 <0f> 0b 5b
c3 66 66 2e 0f 1f 84 00 00 00 00 00 66 90 0f 1f 44 00
RSP: 0018:ffffb297079d7e08 EFLAGS: 00010206
RAX: ffff8eb542c00040 RBX: ffff8eb541333150 RCX: 000000008010000d
RDX: 000000008010000e RSI: 000000008010000d RDI: ffff8eb440042c00
RBP: ffffb297079d7e48 R08: 0000000000000001 R09: ffffffff9fdeac00
R10: ffff8eb5003be000 R11: 0000000000000001 R12: ffffffffa1545620
R13: ffffffffa1545628 R14: 0000000000000000 R15: ffffffffa1543b20
FS: 0000000000000000(0000) GS:ffff8ed37fa00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00005601b5f4c2e8 CR3: 0000001fc8c10002 CR4: 00000000003706e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
ops_exit_list.isra.9+0x36/0x70
cleanup_net+0x234/0x390
process_one_work+0x1cb/0x360
? process_one_work+0x360/0x360
worker_thread+0x30/0x370
? process_one_work+0x360/0x360
kthread+0x116/0x130
? kthread_park+0x80/0x80
ret_from_fork+0x22/0x30
To avoid the above warning and later on the kernel panic that could happen
on shutdown due to a NULL pointer dereference, make sure to set the
netns_refund flag that was introduced by commit 3a5ca857079e ("can: dev:
Move device back to init netns on owning netns delete") to properly
restore the IPoIB interfaces to the initial netns.
Security readout for executives and security teams
Plain-English summary
This Linux kernel flaw affects IP over InfiniBand systems using network namespaces. Under a specific namespace teardown condition, an IPoIB network device can disappear instead of returning to the initial namespace, triggering a kernel warning and potentially a shutdown-time kernel panic.
Executive priority
Prioritize for HPC, storage, virtualization, or container hosts using InfiniBand/IPoIB. Treat as lower urgency for ordinary Linux servers without RDMA/IPoIB. Patch through normal kernel maintenance unless operational evidence shows crashes.
Technical view
After rtnl_link_ops was set for IPoIB interfaces, default_device_exit() could skip an IPoIB device moved into a non-initial network namespace. When that namespace is destroyed, the interface is not restored correctly. The fix sets netns_refund so IPoIB interfaces move back to the initial namespace.
Likely exposure
Exposure appears limited to Linux hosts using RDMA/IPoIB interfaces with network namespace movement on affected kernel versions or unpatched downstream builds. General Linux systems without IPoIB or this namespace behavior are less likely to be affected.
Exploitation context
The source shows a reproducible kernel warning and possible later NULL pointer dereference panic. It does not cite public exploitation, KEV listing, attacker prerequisites, or remote exploitability. KEV is false in the supplied data.
Researcher notes
The evidence supports a reliability and denial-of-service concern, not active exploitation. The CVE record lacks CVSS, CWE, and clear privilege details. The key code behavior is namespace cleanup failing to return IPoIB devices to init netns until netns_refund is set.
Mitigation direction
Update to a vendor kernel containing the referenced stable fixes.
Check Linux distribution advisories for backported CVE-2021-47266 fixes.
Avoid moving IPoIB devices into non-initial namespaces until patched.
Monitor affected hosts for netdev_exit warnings or shutdown panics.
Validation and detection
Inventory kernels against the affected versions listed in the CVE data.
Identify hosts using RDMA/IPoIB interfaces and network namespaces.
Review kernel package changelogs for the referenced stable commit fixes.
Check system logs for netdev_exit warnings during namespace cleanup.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2021-47266 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.