Description
In the Linux kernel, the following vulnerability has been resolved:
can: j1939: fix errant WARN_ON_ONCE in j1939_session_deactivate
The conclusion "j1939_session_deactivate() should be called with a
session ref-count of at least 2" is incorrect. In some concurrent
scenarios, j1939_session_deactivate can be called with the session
ref-count less than 2. But there is not any problem because it
will check the session active state before session putting in
j1939_session_deactivate_locked().
Here is the concurrent scenario of the problem reported by syzbot
and my reproduction log.
cpu0 cpu1
j1939_xtp_rx_eoma
j1939_xtp_rx_abort_one
j1939_session_get_by_addr [kref == 2]
j1939_session_get_by_addr [kref == 3]
j1939_session_deactivate [kref == 2]
j1939_session_put [kref == 1]
j1939_session_completed
j1939_session_deactivate
WARN_ON_ONCE(kref < 2)
=====================================================
WARNING: CPU: 1 PID: 21 at net/can/j1939/transport.c:1088 j1939_session_deactivate+0x5f/0x70
CPU: 1 PID: 21 Comm: ksoftirqd/1 Not tainted 5.14.0-rc7+ #32
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.13.0-1ubuntu1 04/01/2014
RIP: 0010:j1939_session_deactivate+0x5f/0x70
Call Trace:
j1939_session_deactivate_activate_next+0x11/0x28
j1939_xtp_rx_eoma+0x12a/0x180
j1939_tp_recv+0x4a2/0x510
j1939_can_recv+0x226/0x380
can_rcv_filter+0xf8/0x220
can_receive+0x102/0x220
? process_backlog+0xf0/0x2c0
can_rcv+0x53/0xf0
__netif_receive_skb_one_core+0x67/0x90
? process_backlog+0x97/0x2c0
__netif_receive_skb+0x22/0x80
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| Linux | Linux | 5.4.138 – < 5.4.232, 5.10.56 – < 5.10.168, 5.13.8 – < 5.14, 5.14 | 5.4.232 |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | linux | 6.1.11-1 | — |
| Debian 13 | linux | 6.1.11-1 | — |
| Debian 12 | linux | 6.1.11-1 | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu Nvidia-BlueField 22.04 LTS | linux-bluefield | 5.15.0-1017.19 | — |
| Ubuntu 24.04 LTS | linux-realtime +1 | No fix yet | — |
| Ubuntu 22.04 LTS | linux +1 | 5.15.0-72.79 | — |
| Ubuntu 22.04 LTS | linux-aws | 5.15.0-1036.40 | — |
| Ubuntu 22.04 LTS | linux-azure | 5.15.0-1038.45 | — |
| Ubuntu 22.04 LTS | linux-azure-fde | 5.15.0-1038.45.1 | — |
| Ubuntu 22.04 LTS | linux-gcp | 5.15.0-1034.42 | — |
| Ubuntu 22.04 LTS | linux-gke +1 | 5.15.0-1033.38 | — |
| Ubuntu 22.04 LTS | linux-gkeop | 5.15.0-1020.25 | — |
| Ubuntu 22.04 LTS | linux-ibm | 5.15.0-1030.33 | — |
| Ubuntu 22.04 LTS | linux-intel-iotg | 5.15.0-1030.35 | — |
| Ubuntu 22.04 LTS | linux-nvidia | 5.15.0-1025.25 | — |
| Ubuntu 22.04 LTS | linux-oracle | 5.15.0-1035.41 | — |
| Ubuntu 22.04 LTS | linux-raspi | 5.15.0-1029.31 | — |
| Ubuntu 22.04 LTS | linux-riscv +31 | No fix yet | — |
| Ubuntu 20.04 LTS | linux | 5.4.0-149.166 | — |
| Ubuntu 20.04 LTS | linux-aws | 5.4.0-1102.110 | — |
| Ubuntu 20.04 LTS | linux-aws-5.15 | 5.15.0-1036.40~20.04.1 | — |
| Ubuntu 20.04 LTS | linux-azure | 5.4.0-1108.114 | — |
| Ubuntu 20.04 LTS | linux-azure-5.15 | 5.15.0-1038.45~20.04.1 | — |
| Ubuntu 20.04 LTS | linux-bluefield | 5.4.0-1064.70 | — |
| Ubuntu 20.04 LTS | linux-gcp | 5.4.0-1105.114 | — |
| Ubuntu 20.04 LTS | linux-gcp-5.15 | 5.15.0-1034.42~20.04.1 | — |
| Ubuntu 20.04 LTS | linux-gke +28 | No fix yet | — |
| Ubuntu 20.04 LTS | linux-hwe-5.15 +1 | 5.15.0-72.79~20.04.1 | — |
| Ubuntu 20.04 LTS | linux-ibm | 5.4.0-1049.54 | — |
| Ubuntu 20.04 LTS | linux-intel-iotg-5.15 | 5.15.0-1030.35~20.04.1 | — |
| Ubuntu 20.04 LTS | linux-iot | 5.4.0-1017.18 | — |
| Ubuntu 20.04 LTS | linux-kvm | 5.4.0-1091.97 | — |
| Ubuntu 20.04 LTS | linux-nvidia-tegra-5.15 | 5.15.0-1014.14~20.04.1 | — |
| Ubuntu 20.04 LTS | linux-oracle | 5.4.0-1101.110 | — |
| Ubuntu 20.04 LTS | linux-oracle-5.15 | 5.15.0-1035.41~20.04.1 | — |
| Ubuntu 20.04 LTS | linux-raspi | 5.4.0-1085.96 | — |
| Ubuntu 20.04 LTS | linux-riscv-5.15 | 5.15.0-1033.37~20.04.1 | — |
| Ubuntu 20.04 LTS | linux-xilinx-zynqmp | 5.4.0-1024.28 | — |
| Ubuntu 18.04 LTS | linux-aws-5.4 | 5.4.0-1103.111~18.04.1 | — |
| Ubuntu 18.04 LTS | linux-azure-5.4 | 5.4.0-1108.114~18.04.1 | — |
| Ubuntu 18.04 LTS | linux-gcp +14 | No fix yet | — |
| Ubuntu 18.04 LTS | linux-gcp-5.4 | 5.4.0-1105.114~18.04.1 | — |
| Ubuntu 18.04 LTS | linux-hwe-5.4 | 5.4.0-149.166~18.04.1 | — |
| Ubuntu 18.04 LTS | linux-ibm-5.4 | 5.4.0-1049.54~18.04.1 | — |
| Ubuntu 18.04 LTS | linux-oracle-5.4 | 5.4.0-1101.110~18.04.1 | — |
| Ubuntu 18.04 LTS | linux-raspi-5.4 | 5.4.0-1085.96~18.04.1 | — |
Show 3 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 16.04 LTS | linux-hwe-edge | No fix yet | — |
| Ubuntu Pro Realtime 22.04 LTS | linux-intel-iot-realtime | 5.15.0-1028.33 | — |
| Ubuntu Pro Realtime 22.04 LTS | linux-realtime | 5.15.0-1038.41 | — |
| Ubuntu Pro FIPS-updates 20.04 LTS | linux-aws-fips | 5.4.0-1102.110+fips1 | — |
| Ubuntu Pro FIPS-updates 20.04 LTS | linux-azure-fips | 5.4.0-1108.114+fips1 | — |
| Ubuntu Pro FIPS-updates 20.04 LTS | linux-fips | 5.4.0-1077.86 | — |
| Ubuntu Pro FIPS-updates 20.04 LTS | linux-gcp-fips | 5.4.0-1105.114+fips1 | — |
SUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SLES 15 SP5 | kernel-64kb +6 | 5.14.21-150500.55.100.1 | SUSE-SU-2025:1241-1 |
| SLES 15 SP5 | kernel-default-base | 5.14.21-150500.55.100.1.150500.6.47.1 | SUSE-SU-2025:1241-1 |
| SLES 15 SP4 | kernel-64kb +6 | 5.14.21-150400.24.161.1 | SUSE-SU-2025:1195-1 |
| SLES 15 SP4 | kernel-default-base | 5.14.21-150400.24.161.1.150400.24.80.1 | SUSE-SU-2025:1195-1 |
Show 11 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SLES for SAP 15 SP5 | kernel-default-base | 5.14.21-150500.55.100.1.150500.6.47.1 | SUSE-SU-2025:1241-1 |
| SLES for SAP 15 SP5 | kernel-docs +4 | 5.14.21-150500.55.100.1 | SUSE-SU-2025:1241-1 |
| SLES for SAP 15 SP4 | kernel-default-base | 5.14.21-150400.24.161.1.150400.24.80.1 | SUSE-SU-2025:1195-1 |
| SLES for SAP 15 SP4 | kernel-docs +4 | 5.14.21-150400.24.161.1 | SUSE-SU-2025:1195-1 |
| SLE Micro 5.5 | kernel-default-base | 5.14.21-150500.55.100.1.150500.6.47.1 | SUSE-SU-2025:1241-1 |
| SLE Micro 5.5 | kernel-rt +1 | 5.14.21-150500.13.91.1 | SUSE-SU-2025:1176-1 |
| SLE Micro 5.5 | kernel-source +1 | 5.14.21-150500.55.100.1 | SUSE-SU-2025:1241-1 |
| SLE Micro 5.4 | kernel-default | 5.14.21-150400.24.161.1 | SUSE-SU-2025:1195-1 |
| SLE Micro 5.4 | kernel-default-base | 5.14.21-150400.24.161.1.150400.24.80.1 | SUSE-SU-2025:1195-1 |
| SLE Micro 5.4 | kernel-rt +1 | 5.14.21-150400.15.115.1 | SUSE-SU-2025:1183-1 |
| SLE Micro 5.3 | kernel-default | 5.14.21-150400.24.161.1 | SUSE-SU-2025:1195-1 |
| SLE Micro 5.3 | kernel-default-base | 5.14.21-150400.24.161.1.150400.24.80.1 | SUSE-SU-2025:1195-1 |
| SLE Micro 5.3 | kernel-rt +1 | 5.14.21-150400.15.115.1 | SUSE-SU-2025:1183-1 |
| SLE Live Patching 15 SP5 | kernel-default | 5.14.21-150500.55.100.1 | SUSE-SU-2025:1241-1 |
| SLE Live Patching 15 SP5 | kernel-livepatch-SLE15-SP5_Update_25 | 1-150500.11.3.1 | SUSE-SU-2025:1241-1 |
| SLE Live Patching 15 SP4 | kernel-default | 5.14.21-150400.24.161.1 | SUSE-SU-2025:1195-1 |
| SLE Live Patching 15 SP4 | kernel-livepatch-SLE15-SP4_Update_39 | 1-150400.9.3.1 | SUSE-SU-2025:1195-1 |
| SLE HPC 15 SP5 | kernel-64kb +5 | 5.14.21-150500.55.100.1 | SUSE-SU-2025:1241-1 |
| SLE HPC 15 SP5 | kernel-default-base | 5.14.21-150500.55.100.1.150500.6.47.1 | SUSE-SU-2025:1241-1 |
| SLE HPC 15 SP4 | kernel-64kb +5 | 5.14.21-150400.24.161.1 | SUSE-SU-2025:1195-1 |
| SLE HPC 15 SP4 | kernel-default-base | 5.14.21-150400.24.161.1.150400.24.80.1 | SUSE-SU-2025:1195-1 |
| SUSE Manager Server 4.3 | kernel-default-base | 5.14.21-150400.24.161.1.150400.24.80.1 | SUSE-SU-2025:1195-1 |
| SUSE Manager Server 4.3 | kernel-syms +3 | 5.14.21-150400.24.161.1 | SUSE-SU-2025:1195-1 |
| SUSE Manager Proxy 4.3 | kernel-default-base | 5.14.21-150400.24.161.1.150400.24.80.1 | SUSE-SU-2025:1195-1 |
| SUSE Manager Proxy 4.3 | kernel-syms +2 | 5.14.21-150400.24.161.1 | SUSE-SU-2025:1195-1 |
Advisories 5
- WID-SEC-2025-0649 Linux Kernel: Mehrere Schwachstellen BSI CERT-Bund (WID) · Sep 3, 2026
- SUSE-SU-2025:1176-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Feb 4, 2026
- SUSE-SU-2025:1241-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Feb 4, 2026
- SUSE-SU-2025:1183-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Feb 4, 2026
- SUSE-SU-2025:1195-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Feb 4, 2026
References
- https://git.kernel.org/stable/c/6950df42a03c9ac9290503ced3f371199cb68fa9
- https://git.kernel.org/stable/c/b6d44072117bba057d50f7a2f96e5d070c65926d
- https://git.kernel.org/stable/c/9ab896775f98ff54b68512f345eed178bf961084
- https://git.kernel.org/stable/c/1740a1e45eee65099a92fb502e1e67e63aad277d
- https://git.kernel.org/stable/c/d0553680f94c49bbe0e39eb50d033ba563b4212d