In the Linux kernel, the following vulnerability has been resolved:
scsi: ses: Handle enclosure with just a primary component gracefully
This reverts commit 3fe97ff3d949 ("scsi: ses: Don't attach if enclosure has no components") and introduces proper handling of case where there are no detected secondary components, but primary component (enumerated in num_enclosures) does exist. That fix was originally proposed by Ding Hui <[email protected]>.
Completely ignoring devices that have one primary enclosure and no secondary one results in ses_intf_add() bailing completely
scsi 2:0:0:254: enclosure has no enumerated components scsi 2:0:0:254: Failed to bind enclosure -12ven in valid configurations such
even on valid configurations with 1 primary and 0 secondary enclosures as below:
# sg_ses /dev/sg0 3PARdata SES 3321 Supported diagnostic pages: Supported Diagnostic Pages [sdp] [0x0] Configuration (SES) [cf] [0x1] Short Enclosure Status (SES) [ses] [0x8] # sg_ses -p cf /dev/sg0 3PARdata SES 3321 Configuration diagnostic page: number of secondary subenclosures: 0 generation code: 0x0 enclosure descriptor list Subenclosure identifier: 0 [primary] relative ES process id: 0, number of ES processes: 1 number of type descriptor headers: 1 enclosure logical identifier (hex): 20000002ac02068d enclosure vendor: 3PARdata product: VV rev: 3321 type descriptor header and text list Element type: Unspecified, subenclosure id: 0 number of possible elements: 1
The changelog for the original fix follows
===== We can get a crash when disconnecting the iSCSI session, the call trace like this:
[ffff00002a00fb70] kfree at ffff00000830e224 [ffff00002a00fba0] ses_intf_remove at ffff000001f200e4 [ffff00002a00fbd0] device_del at ffff0000086b6a98 [ffff00002a00fc50] device_unregister at ffff0000086b6d58 [ffff00002a00fc70] __scsi_remove_device at ffff00000870608c [ffff00002a00fca0] scsi_remove_device at ffff000008706134 [ffff00002a00fcc0] __scsi_remove_target at ffff0000087062e4 [ffff00002a00fd10] scsi_remove_target at ffff0000087064c0 [ffff00002a00fd70] __iscsi_unbind_session at ffff000001c872c4 [ffff00002a00fdb0] process_one_work at ffff00000810f35c [ffff00002a00fe00] worker_thread at ffff00000810f648 [ffff00002a00fe70] kthread at ffff000008116e98
In ses_intf_add, components count could be 0, and kcalloc 0 size scomp, but not saved in edev->component[i].scratch
In this situation, edev->component[0].scratch is an invalid pointer, when kfree it in ses_intf_remove_enclosure, a crash like above would happen The call trace also could be other random cases when kfree cannot catch the invalid pointer
We should not use edev->component[] array when the components count is 0 We also need check index when use edev->component[] array in ses_enclosure_data_process =====
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon Linux Ami 2 | — | Upgrade bpftool-debuginfoUpgrade kernel-livepatch-4.14.309-231.529Upgrade kernel-livepatch-5.10.173-154.642Upgrade kernel-debuginfoUpgrade kernelUpgrade kernel-headersUpgrade kernel-debuginfo-common-x86_64Upgrade perf-debuginfoUpgrade python-perf-debuginfoUpgrade kernel-tools-develUpgrade perfUpgrade kernel-tools-debuginfoUpgrade kernel-toolsUpgrade python-perfUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-develUpgrade bpftool | May 20, 2026 | May 20, 2026 |
| Debian | — | Upgrade linux | Sep 22, 2025 | Sep 22, 2025 |
| Huawei Euleros 2_0_sp10 | — | Upgrade python3-perfUpgrade kernel-toolsUpgrade kernel-tools-libsUpgrade kernelUpgrade kernel-abi-stablelists | Mar 17, 2026 | Mar 16, 2026 |
| Huawei Euleros 2_0_sp13 | — | Upgrade python3-perfUpgrade bpftoolUpgrade kernel-tools-libsUpgrade kernelUpgrade kernel-toolsUpgrade kernel-abi-stablelists | Mar 10, 2026 | Mar 10, 2026 |
| Redhat_linux | — | No solution exists | Jul 17, 2026 | Sep 18, 2025 |
| Ubuntu | — | Upgrade linux-raspi-5.4Upgrade linux-riscv-5.15Upgrade linux-nvidia-tegraUpgrade linux-gcpUpgrade linux-oracle-5.4Upgrade linux-ibm-5.15Upgrade linux-fipsUpgrade linux-nvidia-tegra-5.15Upgrade linux-nvidia-tegra-igxUpgrade linux-bluefieldUpgrade linux-nvidiaUpgrade linux-gcp-5.4Upgrade linux-intel-iotgUpgrade linux-kvmUpgrade linux-oracleUpgrade linux-gkeopUpgrade linux-xilinx-zynqmpUpgrade linux-azure-5.15Upgrade linux-oracle-5.15Upgrade linux-lowlatencyUpgrade linux-ibm-5.4Upgrade linux-gkeUpgrade linux-intel-iot-realtimeUpgrade linux-aws-5.4Upgrade linux-aws-5.15Upgrade linux-azureUpgrade linux-gcp-5.15Upgrade linux-gcp-fipsUpgrade linux-ibmUpgrade linuxUpgrade linux-hwe-5.15Upgrade linux-azure-fdeUpgrade linux-intel-iotg-5.15Upgrade linux-raspiUpgrade linux-lowlatency-hwe-5.15Upgrade linux-azure-fipsUpgrade linux-realtimeUpgrade linux-aws-fipsUpgrade linux-hwe-5.4Upgrade linux-iotUpgrade linux-azure-5.4Upgrade linux-aws | Sep 26, 2025 | Sep 18, 2025 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Oct 15, 2025 | Sep 18, 2025 |
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub