Reference page — cumulative record through Wednesday, August 19, 2026 UTC. Reference pages update as the archive grows; only dated daily editions are immutable pages of record.
Linux Linux — net: vlan: fix underflow for the real_dev refcnt
AV AC PR UI S C I A CVSS EPSS %ile KEV
L L L N U N N H 5.5 .0022 12.9 —
AFFECTED
Product Versions Fixed
Linux 700602b662d7eaa816b1a3cb0abe7a85de358fd4 – —
Linux 5.4.160 – —
TIMELINE
May 24 Reserved by Linux
May 24 Published (CNA: Linux)
Aug 4 RESCORED — CVE-2021-47555 (Linux). CVSS 7.8 → 5.5 (NVD).
Description
In the Linux kernel, the following vulnerability has been resolved:
net: vlan: fix underflow for the real_dev refcnt
Inject error before dev_hold(real_dev) in register_vlan_dev(),
and execute the following testcase:
ip link add dev dummy1 type dummy
ip link add name dummy1.100 link dummy1 type vlan id 100
ip link del dev dummy1
When the dummy netdevice is removed, we will get a WARNING as following:
=======================================================================
refcount_t: decrement hit 0; leaking memory.
WARNING: CPU: 2 PID: 0 at lib/refcount.c:31 refcount_warn_saturate+0xbf/0x1e0
and an endless loop of:
=======================================================================
unregister_netdevice: waiting for dummy1 to become free. Usage count = -1073741824
That is because dev_put(real_dev) in vlan_dev_free() be called without
dev_hold(real_dev) in register_vlan_dev(). It makes the refcnt of real_dev
underflow.
Move the dev_hold(real_dev) to vlan_dev_init() which is the call-back of
ndo_init(). That makes dev_hold() and dev_put() for vlan's real_dev
symmetrical.
Lifecycle
Complete event history — 3 events, chronological
| Date | Event | Detail |
| May 24, 2024 | Reserved | Reserved by Linux |
| May 24, 2024 | Published | Published (CNA: Linux) |
| August 4, 2026 | RESCORED | RESCORED — CVE-2021-47555 (Linux). CVSS 7.8 → 5.5 (NVD). |
Affected
Affected products and packages — 2 rows
| Vendor | Product / Package | Ecosystem | Version introduced | Fixed |
| Linux | Linux | — | 700602b662d7eaa816b1a3cb0abe7a85de358fd4 | — |
| Linux | Linux | — | 5.4.160 | — |
About this page
This is a reference page, not a dated page of record. It assembles the complete lifecycle of CVE-2021-47555 from the CVE Program record, NVD enrichment, the CISA KEV catalog, EPSS, and OSV advisories. The box score's numbers (CVSS, EPSS, KEV status) are current as of Wednesday, August 19, 2026 UTC and are re-derived as the archive grows; only dated daily editions are immutable pages of record. The authoritative source for this identifier is cve.org.