CVE-2025-39925

CVE-2025-39925

Medium · published October 1, 2025

CVSS v3.1
5.5
EPSS
0%
Percentile
3.8
In the wild
Unconfirmed
What it is

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

can: j1939: implement NETDEV_UNREGISTER notification handler

syzbot is reporting

unregister_netdevice: waiting for vcan0 to become free. Usage count = 2

problem, for j1939 protocol did not have NETDEV_UNREGISTER notification

handler for undoing changes made by j1939_sk_bind().

Commit 25fe97cb7620 ("can: j1939: move j1939_priv_put() into sk_destruct

callback") expects that a call to j1939_priv_put() can be unconditionally

delayed until j1939_sk_sock_destruct() is called. But we need to call

j1939_priv_put() against an extra ref held by j1939_sk_bind() call

(as a part of undoing changes made by j1939_sk_bind()) as soon as

NETDEV_UNREGISTER notification fires (i.e. before j1939_sk_sock_destruct()

is called via j1939_sk_release()). Otherwise, the extra ref on "struct

j1939_priv" held by j1939_sk_bind() call prevents "struct net_device" from

dropping the usage count to 1; making it impossible for

unregister_netdevice() to continue.

[mkl: remove space in front of label]

The record
Technical detail
CVSS v3.1
5.5 · MEDIUM
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
CVSS v4.0
Not supplied
EPSS
0.00150 · 3.8th percentile
Published
2025-10-01T12:15Z
Affected products (6)
ProductVersionsFixed in
linux/linux_kernel≥ 5.4, < 6.16.86.16.8
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
References (6)
EPSS history
Timeline
  • 01 OCT 08:07Z
    can: j1939: implement NETDEV_UNREGISTER notification handler
    cvelistv5