Skip to content
OpenAdvisories
High · 7.5 CVE-2025-38035 EUVD-2025-18617GHSA-rcjw-fc9m-vqqh

nvmet-tcp: don't restore null sk_state_change

Published Jun 18, 2025 · Updated Oct 15, 2026 · Assigned by Linux

Vendor: Linux Product: Linux Package: kernel Package: linux Package: linux Package: linux-allwinner-5.19 Package: linux-aws Package: linux-aws-5.0 Package: linux-aws-5.11 Package: linux-aws-5.13 Package: linux-aws-5.15 Package: linux-aws-5.19 Package: linux-aws-5.3 Package: linux-aws-5.4 Package: linux-aws-5.8 Package: linux-aws-6.14 Package: linux-aws-6.2 Package: linux-aws-6.5 Package: linux-aws-6.8 Package: linux-aws-fips Package: linux-azure Package: linux-azure-5.11 Package: linux-azure-5.13 Package: linux-azure-5.15 Package: linux-azure-5.19 Package: linux-azure-5.3 Package: linux-azure-5.4 Package: linux-azure-5.8 Package: linux-azure-6.11 Package: linux-azure-6.2 Package: linux-azure-6.5 Package: linux-azure-6.8 Package: linux-azure-edge Package: linux-azure-fde Package: linux-azure-fde-5.19 Package: linux-azure-fde-6.2 Package: linux-azure-fde-6.8 Package: linux-azure-fips Package: linux-azure-nvidia Package: linux-azure-nvidia-6.14 Package: linux-bluefield Package: linux-fips Package: linux-gcp Package: linux-gcp-5.11 Package: linux-gcp-5.13 Package: linux-gcp-5.15 Package: linux-gcp-5.19 Package: linux-gcp-5.3 Package: linux-gcp-5.4 Package: linux-gcp-5.8 Package: linux-gcp-6.11 Package: linux-gcp-6.14 Package: linux-gcp-6.2 Package: linux-gcp-6.5 Package: linux-gcp-6.8 Package: linux-gcp-fips Package: linux-gke Package: linux-gke-4.15 Package: linux-gke-5.15 Package: linux-gke-5.4 Package: linux-gkeop Package: linux-gkeop-5.15 Package: linux-gkeop-5.4 Package: linux-hwe Package: linux-hwe-5.11 Package: linux-hwe-5.13 Package: linux-hwe-5.15 Package: linux-hwe-5.19 Package: linux-hwe-5.4 Package: linux-hwe-5.8 Package: linux-hwe-6.11 Package: linux-hwe-6.2 Package: linux-hwe-6.5 Package: linux-hwe-6.8 Package: linux-hwe-edge Package: linux-ibm Package: linux-ibm-5.15 Package: linux-ibm-5.4 Package: linux-ibm-6.8 Package: linux-intel Package: linux-intel-5.13 Package: linux-intel-iot-realtime Package: linux-intel-iotg Package: linux-intel-iotg-5.15 Package: linux-iot Package: linux-kvm Package: linux-lowlatency Package: linux-lowlatency-hwe-5.15 Package: linux-lowlatency-hwe-5.19 Package: linux-lowlatency-hwe-6.11 Package: linux-lowlatency-hwe-6.2 Package: linux-lowlatency-hwe-6.5 Package: linux-lowlatency-hwe-6.8 Package: linux-nvidia Package: linux-nvidia-6.11 Package: linux-nvidia-6.2 Package: linux-nvidia-6.5 Package: linux-nvidia-6.8 Package: linux-nvidia-lowlatency Package: linux-nvidia-tegra Package: linux-nvidia-tegra-5.15 Package: linux-nvidia-tegra-igx Package: linux-oem Package: linux-oem-5.10 Package: linux-oem-5.13 Package: linux-oem-5.14 Package: linux-oem-5.17 Package: linux-oem-5.6 Package: linux-oem-6.0 Package: linux-oem-6.1 Package: linux-oem-6.11 Package: linux-oem-6.14 Package: linux-oem-6.5 Package: linux-oem-6.8 Package: linux-oracle Package: linux-oracle-5.0 Package: linux-oracle-5.11 Package: linux-oracle-5.13 Package: linux-oracle-5.15 Package: linux-oracle-5.3 Package: linux-oracle-5.4 Package: linux-oracle-5.8 Package: linux-oracle-6.14 Package: linux-oracle-6.5 Package: linux-oracle-6.8 Package: linux-raspi Package: linux-raspi-5.4 Package: linux-raspi-realtime Package: linux-raspi2 Package: linux-realtime Package: linux-realtime-6.14 Package: linux-realtime-6.8 Package: linux-riscv Package: linux-riscv-5.11 Package: linux-riscv-5.15 Package: linux-riscv-5.19 Package: linux-riscv-5.8 Package: linux-riscv-6.14 Package: linux-riscv-6.5 Package: linux-riscv-6.8 Package: linux-starfive-5.19 Package: linux-starfive-6.2 Package: linux-starfive-6.5 Package: linux-vmware Package: linux-xilinx Package: linux-xilinx-zynqmp Platform: Linux Ecosystem: Azure Linux Ecosystem: Debian Ecosystem: Ubuntu

Description

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

nvmet-tcp: don't restore null sk_state_change

queue->state_change is set as part of nvmet_tcp_set_queue_sock(), but if
the TCP connection isn't established when nvmet_tcp_set_queue_sock() is
called then queue->state_change isn't set and sock->sk->sk_state_change
isn't replaced.

As such we don't need to restore sock->sk->sk_state_change if
queue->state_change is NULL.

This avoids NULL pointer dereferences such as this:

[ 286.462026][ C0] BUG: kernel NULL pointer dereference, address: 0000000000000000
[ 286.462814][ C0] #PF: supervisor instruction fetch in kernel mode
[ 286.463796][ C0] #PF: error_code(0x0010) - not-present page
[ 286.464392][ C0] PGD 8000000140620067 P4D 8000000140620067 PUD 114201067 PMD 0
[ 286.465086][ C0] Oops: Oops: 0010 [#1] SMP KASAN PTI
[ 286.465559][ C0] CPU: 0 UID: 0 PID: 1628 Comm: nvme Not tainted 6.15.0-rc2+ #11 PREEMPT(voluntary)
[ 286.466393][ C0] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.3-3.fc41 04/01/2014
[ 286.467147][ C0] RIP: 0010:0x0
[ 286.467420][ C0] Code: Unable to access opcode bytes at 0xffffffffffffffd6.
[ 286.467977][ C0] RSP: 0018:ffff8883ae008580 EFLAGS: 00010246
[ 286.468425][ C0] RAX: 0000000000000000 RBX: ffff88813fd34100 RCX: ffffffffa386cc43
[ 286.469019][ C0] RDX: 1ffff11027fa68b6 RSI: 0000000000000008 RDI: ffff88813fd34100
[ 286.469545][ C0] RBP: ffff88813fd34160 R08: 0000000000000000 R09: ffffed1027fa682c
[ 286.470072][ C0] R10: ffff88813fd34167 R11: 0000000000000000 R12: ffff88813fd344c3
[ 286.470585][ C0] R13: ffff88813fd34112 R14: ffff88813fd34aec R15: ffff888132cdd268
[ 286.471070][ C0] FS: 00007fe3c04c7d80(0000) GS:ffff88840743f000(0000) knlGS:0000000000000000
[ 286.471644][ C0] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 286.472543][ C0] CR2: ffffffffffffffd6 CR3: 000000012daca000 CR4: 00000000000006f0
[ 286.473500][ C0] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[ 286.474467][ C0] DR3: 0000000000000000 DR6: 00000000ffff07f0 DR7: 0000000000000400
[ 286.475453][ C0] Call Trace:
[ 286.476102][ C0] <IRQ>
[ 286.476719][ C0] tcp_fin+0x2bb/0x440
[ 286.477429][ C0] tcp_data_queue+0x190f/0x4e60
[ 286.478174][ C0] ? __build_skb_around+0x234/0x330
[ 286.478940][ C0] ? rcu_is_watching+0x11/0xb0
[ 286.479659][ C0] ? __pfx_tcp_data_queue+0x10/0x10
[ 286.480431][ C0] ? tcp_try_undo_loss+0x640/0x6c0
[ 286.481196][ C0] ? seqcount_lockdep_reader_access.constprop.0+0x82/0x90
[ 286.482046][ C0] ? kvm_clock_get_cycles+0x14/0x30
[ 286.482769][ C0] ? ktime_get+0x66/0x150
[ 286.483433][ C0] ? rcu_is_watching+0x11/0xb0
[ 286.484146][ C0] tcp_rcv_established+0x6e4/0x2050
[ 286.484857][ C0] ? rcu_is_watching+0x11/0xb0
[ 286.485523][ C0] ? ipv4_dst_check+0x160/0x2b0
[ 286.486203][ C0] ? __pfx_tcp_rcv_established+0x10/0x10
[ 286.486917][ C0] ? lock_release+0x217/0x2c0
[ 286.487595][ C0] tcp_v4_do_rcv+0x4d6/0x9b0
[ 286.488279][ C0] tcp_v4_rcv+0x2af8/0x3e30
[ 286.488904][ C0] ? raw_local_deliver+0x51b/0xad0
[ 286.489551][ C0] ? rcu_is_watching+0x11/0xb0
[ 286.490198][ C0] ? __pfx_tcp_v4_rcv+0x10/0x10
[ 286.490813][ C0] ? __pfx_raw_local_deliver+0x10/0x10
[ 286.491487][ C0] ? __pfx_nf_confirm+0x10/0x10 [nf_conntrack]
[ 286.492275][ C0] ? rcu_is_watching+0x11/0xb0
[ 286.492900][ C0] ip_protocol_deliver_rcu+0x8f/0x370
[ 286.493579][ C0] ip_local_deliver_finish+0x297/0x420
[ 286.494268][ C0] ip_local_deliver+0x168/0x430
[ 286.494867][ C0] ? __pfx_ip_local_deliver+0x10/0x10
[ 286.495498][ C0] ? __pfx_ip_local_deliver_finish+0x10/0x10
[ 286.496204][ C0] ? ip_rcv_finish_core+0x19a/0x1f20
[ 286.496806][ C0] ? lock_release+0x217/0x2c0
[ 286.497414][ C0] ip_rcv+0x455/0x6e0
[ 286.497945][ C0] ? __pfx_ip_rcv+0x10/0x10
[
---truncated---

Affected products

VendorProductAffectedFixed
Linux Linux 5.0 5.4.294

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.

ReleasePackageFixed inAdvisory
Debian 14 linux 6.12.32-1 —
Debian 13 linux 6.12.32-1 —
Debian 12 linux 6.1.147-1 DSA-5973-1
Debian 11 linux 5.10.244-1 DLA-4327-1
Debian 11 linux-6.1 6.1.153-1~deb11u1 DLA-4328-1
ReleasePackageFixed inAdvisory
Ubuntu Nvidia-BlueField 24.04 LTS linux-bluefield 6.8.0-1016.20 —
Ubuntu Nvidia-BlueField 22.04 LTS linux-bluefield 5.15.0-1074.76 —
Ubuntu 25.10 linux-azure-fde No fix yet —
Ubuntu 25.04 linux-azure 6.14.0-1012.12 USN-7770-1
Ubuntu 25.04 linux-raspi 6.14.0-1014.14 USN-7789-2
Ubuntu 24.04 LTS linux 6.8.0-100.100 USN-8028-1
Ubuntu 24.04 LTS linux-aws +1 6.8.0-1046.49 USN-8028-5
Ubuntu 24.04 LTS linux-aws-6.14 +1 6.14.0-1013.13~24.04.1 USN-7789-1, USN-7769-3
Ubuntu 24.04 LTS linux-azure 6.8.0-1046.52 USN-8074-1
Ubuntu 24.04 LTS linux-azure-fde 6.8.0-1046.53 —
Ubuntu 24.04 LTS linux-azure-nvidia 6.8.0-1039.42 —
Ubuntu 24.04 LTS linux-azure-nvidia-6.14 6.14.0-1007.7 —
Ubuntu 24.04 LTS linux-gcp 6.8.0-1047.50 USN-8031-3
Ubuntu 24.04 LTS linux-gcp-6.14 6.14.0-1016.17~24.04.1 USN-7769-1
Ubuntu 24.04 LTS linux-gke 6.8.0-1043.48 USN-8031-3
Ubuntu 24.04 LTS linux-gkeop 6.8.0-1030.33 USN-8028-5
Ubuntu 24.04 LTS linux-hwe-6.14 6.14.0-32.32~24.04.1 USN-7769-3
Ubuntu 24.04 LTS linux-ibm 6.8.0-1044.44 USN-8028-8
Ubuntu 24.04 LTS linux-intel +10 No fix yet —
Ubuntu 24.04 LTS linux-lowlatency 6.8.0-100.100.1 USN-8052-1
Ubuntu 24.04 LTS linux-nvidia-lowlatency 6.8.0-1046.49.1 USN-8028-7
Ubuntu 24.04 LTS linux-nvidia-tegra 6.8.0-1020.20 —
Ubuntu 24.04 LTS linux-oem-6.14 6.14.0-1012.12 USN-7771-1
Ubuntu 24.04 LTS linux-oracle 6.8.0-1043.44 USN-8028-5
Ubuntu 24.04 LTS linux-raspi 6.8.0-1047.51 USN-8028-1
Ubuntu 24.04 LTS linux-riscv-6.14 6.14.0-32.32.1~24.04.1 —
Ubuntu 24.04 LTS linux-xilinx 6.8.0-1023.24 USN-8052-2
Show 13 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu 22.04 LTS linux +1 5.15.0-152.162 USN-7704-1
Ubuntu 22.04 LTS linux-aws 5.15.0-1090.97 USN-7704-1
Ubuntu 22.04 LTS linux-aws-6.8 +1 6.8.0-1046.49~22.04.1 USN-8028-5
Ubuntu 22.04 LTS linux-azure 5.15.0-1094.103 USN-7711-1
Ubuntu 22.04 LTS linux-azure-6.8 6.8.0-1051.57~22.04.1 USN-8126-1
Ubuntu 22.04 LTS linux-azure-fde 5.15.0-1094.103.1 —
Ubuntu 22.04 LTS linux-azure-fde-6.8 6.8.0-1046.53~22.04.1 —
Ubuntu 22.04 LTS linux-gcp 5.15.0-1090.99 USN-7704-1
Ubuntu 22.04 LTS linux-gcp-6.8 6.8.0-1047.50~22.04.2 USN-8031-1
Ubuntu 22.04 LTS linux-gke 5.15.0-1087.93 USN-7704-5
Ubuntu 22.04 LTS linux-gkeop 5.15.0-1073.81 USN-7704-1
Ubuntu 22.04 LTS linux-hwe-6.8 +1 6.8.0-100.100~22.04.1 USN-8028-6
Ubuntu 22.04 LTS linux-ibm +1 5.15.0-1084.87 USN-7704-3
Ubuntu 22.04 LTS linux-ibm-6.8 6.8.0-1044.44~22.04.1 USN-8028-8
Ubuntu 22.04 LTS linux-intel-iotg 5.15.0-1085.91 USN-7704-3
Ubuntu 22.04 LTS linux-kvm 5.15.0-1086.91 USN-7704-5
Ubuntu 22.04 LTS linux-lowlatency-hwe-6.8 6.8.0-100.100.1~22.04.1 USN-8028-6
Ubuntu 22.04 LTS linux-nvidia 5.15.0-1085.86 USN-7704-4
Ubuntu 22.04 LTS linux-nvidia-tegra 5.15.0-1043.43 USN-7704-1
Ubuntu 22.04 LTS linux-nvidia-tegra-igx 5.15.0-1032.32 USN-7704-1
Ubuntu 22.04 LTS linux-oracle 5.15.0-1088.94 USN-7704-3
Ubuntu 22.04 LTS linux-oracle-6.8 6.8.0-1043.44~22.04.1 USN-8028-5
Ubuntu 22.04 LTS linux-riscv +32 No fix yet —
Ubuntu 22.04 LTS linux-xilinx-zynqmp 5.15.0-1054.58 USN-7704-1
Ubuntu 20.04 LTS linux-gke +28 No fix yet —
Ubuntu 18.04 LTS linux-gcp +14 No fix yet —
Ubuntu 16.04 LTS linux-hwe-edge No fix yet —
Ubuntu Pro Realtime 24.04 LTS linux-raspi-realtime 6.8.0-2037.38 USN-8028-3
Ubuntu Pro Realtime 24.04 LTS linux-realtime 6.8.1-1041.42 USN-8028-3
Ubuntu Pro Realtime 24.04 LTS linux-realtime-6.14 6.14.0-1012.12~24.04.1 USN-7769-2
Ubuntu Pro Realtime 22.04 LTS linux-intel-iot-realtime 5.15.0-1083.85 USN-7704-1
Ubuntu Pro Realtime 22.04 LTS linux-realtime 5.15.0-1090.99 USN-7704-1
Ubuntu Pro Realtime 22.04 LTS linux-realtime-6.8 6.8.1-1041.42~22.04.1 USN-8028-2
Ubuntu Pro FIPS 20.04 LTS linux-fips +3 No fix yet —
Ubuntu Pro FIPS-updates 24.04 LTS linux-aws-fips 6.8.0-1046.49+fips1 USN-8028-4
Ubuntu Pro FIPS-updates 24.04 LTS linux-azure-fips 6.8.0-1046.52+fips1 USN-8074-2
Ubuntu Pro FIPS-updates 24.04 LTS linux-fips 6.8.0-100.100+fips1 USN-8028-4
Ubuntu Pro FIPS-updates 24.04 LTS linux-gcp-fips 6.8.0-1047.50+fips1 USN-8031-2
Ubuntu Pro FIPS-updates 22.04 LTS linux-aws-fips 5.15.0-1090.97+fips1 USN-7704-2
Ubuntu Pro FIPS-updates 22.04 LTS linux-azure-fips 5.15.0-1094.103+fips1 USN-7712-1
Ubuntu Pro FIPS-updates 22.04 LTS linux-fips 5.15.0-152.162+fips1 USN-7704-2
Ubuntu Pro FIPS-updates 22.04 LTS linux-gcp-fips 5.15.0-1090.99+fips1 USN-7704-2
Ubuntu Pro FIPS-updates 20.04 LTS linux-fips +3 No fix yet —
Ubuntu Pro FIPS-preview 22.04 LTS linux-fips +3 No fix yet —
Ubuntu Pro 20.04 LTS linux +10 No fix yet —
Ubuntu Pro 20.04 LTS linux-aws-5.15 5.15.0-1090.97~20.04.1 USN-7704-1
Ubuntu Pro 20.04 LTS linux-azure-5.15 5.15.0-1094.103~20.04.1 USN-7712-2
Ubuntu Pro 20.04 LTS linux-gcp-5.15 5.15.0-1090.99~20.04.1 USN-7704-1
Ubuntu Pro 20.04 LTS linux-hwe-5.15 +1 5.15.0-152.162~20.04.1 USN-7704-1
Ubuntu Pro 20.04 LTS linux-ibm-5.15 5.15.0-1083.86~20.04.1 USN-7704-1
Ubuntu Pro 20.04 LTS linux-intel-iotg-5.15 5.15.0-1085.91~20.04.1 USN-7704-1
Ubuntu Pro 20.04 LTS linux-nvidia-tegra-5.15 5.15.0-1043.43~20.04.1 USN-7704-1
Ubuntu Pro 20.04 LTS linux-oracle-5.15 5.15.0-1088.94~20.04.1 USN-7704-1
Ubuntu Pro 20.04 LTS linux-riscv-5.15 5.15.0-1085.89~20.04.1 —
Ubuntu Pro 18.04 LTS linux-aws-5.4 +6 No fix yet —
ReleasePackageFixed inAdvisory
SLES 15 SP7 kernel-64kb +5 6.4.0-150700.53.11.1 SUSE-SU-2025:02997-1
SLES 15 SP7 kernel-azure +2 6.4.0-150700.20.11.1 SUSE-SU-2025:03011-1
SLES 15 SP7 kernel-default-base 6.4.0-150700.53.11.1.150700.17.9.4 SUSE-SU-2025:02997-1
SLES 15 SP7 kernel-docs 6.4.0-150700.53.11.3 SUSE-SU-2025:02997-1
SLES 15 SP6 kernel-64kb +6 6.4.0-150600.23.65.1 SUSE-SU-2025:02996-1
SLES 15 SP6 kernel-azure +2 6.4.0-150600.8.48.1 SUSE-SU-2025:02969-1
SLES 15 SP6 kernel-coco +3 6.4.0-15061.28.coco15sp6.1 SUSE-SU-2025:02923-1
SLES 15 SP6 kernel-default-base 6.4.0-150600.23.65.1.150600.12.28.4 SUSE-SU-2025:02996-1
SLES 12 SP5 kernel-syms +2 4.12.14-122.269.1 SUSE-SU-2025:02846-1
Show 7 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
SLE Micro 6.1 kernel-default-base 6.4.0-32.1.21.10 SUSE-SU-2025:20602-1
SLE Micro 6.1 kernel-rt +1 6.4.0-35.1 SUSE-SU-2025:20601-1
SLE Micro 6.1 kernel-source +2 6.4.0-32.1 SUSE-SU-2025:20602-1
SLE Micro 6.0 kernel-default-base 6.4.0-32.1.21.10 SUSE-SU-2025:20586-1
SLE Micro 6.0 kernel-rt +1 6.4.0-35.1 SUSE-SU-2025:20577-1
SLE Micro 6.0 kernel-source +2 6.4.0-32.1 SUSE-SU-2025:20586-1
SLE Live Patching 15 SP7 kernel-default 6.4.0-150700.53.11.1 SUSE-SU-2025:02997-1
SLE Live Patching 15 SP7 kernel-livepatch-SLE15-SP7-RT_Update_3 1-150700.1.5.1 SUSE-SU-2025:02853-1
SLE Live Patching 15 SP7 kernel-livepatch-SLE15-SP7_Update_3 1-150700.15.3.4 SUSE-SU-2025:02997-1
SLE Live Patching 15 SP6 kernel-default 6.4.0-150600.23.65.1 SUSE-SU-2025:02996-1
SLE Live Patching 15 SP6 kernel-livepatch-SLE15-SP6-RT_Update_14 1-150600.1.5.1 SUSE-SU-2025:03023-1
SLE Live Patching 15 SP6 kernel-livepatch-SLE15-SP6_Update_14 1-150600.13.3.4 SUSE-SU-2025:02996-1
SLE Live Patching 12 SP5 kernel-default 4.12.14-122.269.1 SUSE-SU-2025:02846-1
SLE Live Patching 12 SP5 kgraft-patch-SLE12-SP5_Update_71 1-8.3.1 SUSE-SU-2025:02846-1
SUSE Real Time Module 15 SP7 kernel-rt +2 6.4.0-150700.7.13.1 SUSE-SU-2025:02853-1
SUSE Real Time Module 15 SP6 kernel-rt +3 6.4.0-150600.10.49.1 SUSE-SU-2025:03023-1
ReleasePackageFixed inAdvisory
openSUSE Leap 15.6 dtb-aarch64 +10 6.4.0-150600.23.65.1 SUSE-SU-2025:02996-1
openSUSE Leap 15.6 kernel-azure +2 6.4.0-150600.8.48.1 SUSE-SU-2025:02969-1
openSUSE Leap 15.6 kernel-default-base 6.4.0-150600.23.65.1.150600.12.28.4 SUSE-SU-2025:02996-1
openSUSE Leap 15.6 kernel-rt +3 6.4.0-150600.10.49.1 SUSE-SU-2025:03023-1

Azure Linux

ReleasePackageFixed inAdvisory
Azure Linux 3 kernel 6.6.96.1-1 —

Oracle Linux

ReleasePackageFixed inAdvisory
Oracle Linux 9 kernel-uek +34 6.12.0-101.33.4.3.el10uek ELSA-2025-20530, ELSA-2025-20480
Oracle Linux 8 bpftool +18 5.15.0-312.187.5.el9uek ELSA-2025-20552
Oracle Linux 7 kernel-uek +6 5.4.17-2136.346.6.el8uek ELSA-2025-20521
Oracle Linux 7 kernel-uek-tools 5.4.17-2136.346.6.el7uek ELSA-2025-20521

Advisories 50

References