{"id":"CVE-2026-80653","state":"PUBLISHED","title":"scsi: hisi_sas: Add slave_destroy interface for v3 hw","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nscsi: hisi_sas: Add slave_destroy interface for v3 hw\n\nWARNING is triggered when executing link reset of remote PHY and rmmod\nSAS driver simultaneously. Following is the WARNING log:\n\nWARNING: CPU: 61 PID: 21818 at drivers/base/core.c:1347 __device_links_no_driver+0xb4/0xc0\n Call trace:\n  __device_links_no_driver+0xb4/0xc0\n  device_links_driver_cleanup+0xb0/0xfc\n  __device_release_driver+0x198/0x23c\n  device_release_driver+0x38/0x50\n  bus_remove_device+0x130/0x140\n  device_del+0x184/0x434\n  __scsi_remove_device+0x118/0x150\n  scsi_remove_target+0x1bc/0x240\n  sas_rphy_remove+0x90/0x94\n  sas_rphy_delete+0x24/0x3c\n  sas_destruct_devices+0x64/0xa0 [libsas]\n  sas_revalidate_domain+0xe4/0x150 [libsas]\n  process_one_work+0x1e0/0x46c\n  worker_thread+0x15c/0x464\n  kthread+0x160/0x170\n  ret_from_fork+0x10/0x20\n ---[ end trace 71e059eb58f85d4a ]---\n\nDuring SAS phy up, link->status is set to DL_STATE_AVAILABLE in\ndevice_links_driver_bound, then this setting influences\n__device_links_no_driver() before driver rmmod and caused WARNING.\n\nAdd the slave_destroy interface to make sure link is removed after flush\nworkque.","publishedAt":"2026-08-28T06:49:00.717Z","updatedAt":"2026-10-30T12:30:53.201Z","severity":{"score":8.4,"label":"High","version":"3.1","vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","source":"Linux"},"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"16fd4a7c5917097e9a3da03b39a92381eee40724","status":"affected","lessThan":"d664252d414aae17066a2831fe7bfd8f0e27b018","versionType":"git"},{"version":"16fd4a7c5917097e9a3da03b39a92381eee40724","status":"affected","lessThan":"c305853027c04f34435ca4edace772709d70a4fe","versionType":"git"},{"version":"16fd4a7c5917097e9a3da03b39a92381eee40724","status":"affected","lessThan":"f8bf667891e92fbe13d02671d4637775ab3118f0","versionType":"git"},{"version":"16fd4a7c5917097e9a3da03b39a92381eee40724","status":"affected","lessThan":"cb414aff28e18e6f5cff9f87ea31376ed8af317b","versionType":"git"},{"version":"16fd4a7c5917097e9a3da03b39a92381eee40724","status":"affected","lessThan":"4867dba229292e13fc19ed865ec1839661952ff9","versionType":"git"},{"version":"16fd4a7c5917097e9a3da03b39a92381eee40724","status":"affected","lessThan":"67b85a88265df19f049241d8c00571a5408f4eeb","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/scsi/hisi_sas/hisi_sas_v3_hw.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"5.10","status":"affected"},{"version":"0","status":"unaffected","lessThan":"5.10","versionType":"semver"},{"version":"6.1.191","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.160","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.114","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.40","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.1.5","status":"unaffected","lessThanOrEqual":"7.1.*","versionType":"semver"},{"version":"7.2","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/scsi/hisi_sas/hisi_sas_v3_hw.c"]}],"references":["https://git.kernel.org/stable/c/d664252d414aae17066a2831fe7bfd8f0e27b018","https://git.kernel.org/stable/c/c305853027c04f34435ca4edace772709d70a4fe","https://git.kernel.org/stable/c/f8bf667891e92fbe13d02671d4637775ab3118f0","https://git.kernel.org/stable/c/cb414aff28e18e6f5cff9f87ea31376ed8af317b","https://git.kernel.org/stable/c/4867dba229292e13fc19ed865ec1839661952ff9","https://git.kernel.org/stable/c/67b85a88265df19f049241d8c00571a5408f4eeb"],"weaknesses":[],"ingestedAt":"2026-10-30T12:50:04.827Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/80xxx/CVE-2026-80653.json","commit":"1f312381e38164a43607eebab851b151dd16861e","baselineCommit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-80653","state":"PUBLISHED","datePublished":"2026-08-28T06:49:00.717Z","dateUpdated":"2026-10-30T12:30:53.201Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2026-08-26T14:34:25.779Z"},"containers":{"cna":{"title":"scsi: hisi_sas: Add slave_destroy interface for v3 hw","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nscsi: hisi_sas: Add slave_destroy interface for v3 hw\n\nWARNING is triggered when executing link reset of remote PHY and rmmod\nSAS driver simultaneously. Following is the WARNING log:\n\nWARNING: CPU: 61 PID: 21818 at drivers/base/core.c:1347 __device_links_no_driver+0xb4/0xc0\n Call trace:\n  __device_links_no_driver+0xb4/0xc0\n  device_links_driver_cleanup+0xb0/0xfc\n  __device_release_driver+0x198/0x23c\n  device_release_driver+0x38/0x50\n  bus_remove_device+0x130/0x140\n  device_del+0x184/0x434\n  __scsi_remove_device+0x118/0x150\n  scsi_remove_target+0x1bc/0x240\n  sas_rphy_remove+0x90/0x94\n  sas_rphy_delete+0x24/0x3c\n  sas_destruct_devices+0x64/0xa0 [libsas]\n  sas_revalidate_domain+0xe4/0x150 [libsas]\n  process_one_work+0x1e0/0x46c\n  worker_thread+0x15c/0x464\n  kthread+0x160/0x170\n  ret_from_fork+0x10/0x20\n ---[ end trace 71e059eb58f85d4a ]---\n\nDuring SAS phy up, link->status is set to DL_STATE_AVAILABLE in\ndevice_links_driver_bound, then this setting influences\n__device_links_no_driver() before driver rmmod and caused WARNING.\n\nAdd the slave_destroy interface to make sure link is removed after flush\nworkque."}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"16fd4a7c5917097e9a3da03b39a92381eee40724","status":"affected","lessThan":"d664252d414aae17066a2831fe7bfd8f0e27b018","versionType":"git"},{"version":"16fd4a7c5917097e9a3da03b39a92381eee40724","status":"affected","lessThan":"c305853027c04f34435ca4edace772709d70a4fe","versionType":"git"},{"version":"16fd4a7c5917097e9a3da03b39a92381eee40724","status":"affected","lessThan":"f8bf667891e92fbe13d02671d4637775ab3118f0","versionType":"git"},{"version":"16fd4a7c5917097e9a3da03b39a92381eee40724","status":"affected","lessThan":"cb414aff28e18e6f5cff9f87ea31376ed8af317b","versionType":"git"},{"version":"16fd4a7c5917097e9a3da03b39a92381eee40724","status":"affected","lessThan":"4867dba229292e13fc19ed865ec1839661952ff9","versionType":"git"},{"version":"16fd4a7c5917097e9a3da03b39a92381eee40724","status":"affected","lessThan":"67b85a88265df19f049241d8c00571a5408f4eeb","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/scsi/hisi_sas/hisi_sas_v3_hw.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"5.10","status":"affected"},{"version":"0","status":"unaffected","lessThan":"5.10","versionType":"semver"},{"version":"6.1.191","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.160","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.114","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.40","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.1.5","status":"unaffected","lessThanOrEqual":"7.1.*","versionType":"semver"},{"version":"7.2","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/scsi/hisi_sas/hisi_sas_v3_hw.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/d664252d414aae17066a2831fe7bfd8f0e27b018"},{"url":"https://git.kernel.org/stable/c/c305853027c04f34435ca4edace772709d70a4fe"},{"url":"https://git.kernel.org/stable/c/f8bf667891e92fbe13d02671d4637775ab3118f0"},{"url":"https://git.kernel.org/stable/c/cb414aff28e18e6f5cff9f87ea31376ed8af317b"},{"url":"https://git.kernel.org/stable/c/4867dba229292e13fc19ed865ec1839661952ff9"},{"url":"https://git.kernel.org/stable/c/67b85a88265df19f049241d8c00571a5408f4eeb"}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","baseScore":8.4,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:L - The bug is reached when libsas tears down SCSI devices after a remote SAS PHY link reset (sas_revalidate_domain -> sas_destruct_devices) or when root unloads the hisi_sas v3 module; both require local kernel/driver activity, not remote network packets.\nAC:L - An attacker who controls a rogue SAS endpoint can repeatedly force link resets and race them against driver teardown; the failure is a deterministic missing sdev_destroy/device_link_remove on the hot path rather than a rare layout-dependent condition.\nPR:N - Triggering remote PHY link resets and SAS domain revalidation requires no Linux credentials—only a malicious or misbehaving device on the SAS fabric; root is only needed for the concurrent module-unload half of the reported race, not the dangling-link defect itself.\nUI:N - Exploitation does not require a victim to open files or mount filesystems; a rogue SAS device or automated PHY error/link-reset handling can drive the vulnerable teardown while the HBA is active.\nS:U - Impact is confined to the host kernel's SCSI/SAS driver and PM-runtime device-link state on the affected HiSilicon v3 HBA; it does not cross VM, container, or IOMMU security boundaries.\nC:H - Without sdev_destroy, managed device_links from scsi_device to hisi_hba survive consumer teardown, leaving consumer pointers to freed scsi_device memory that later hba PM-runtime or device-link walks can dereference (use-after-free read primitive).\nI:H - Stale managed device_links referencing freed scsi_devices corrupt kernel heap/link metadata and can be leveraged for further memory corruption during subsequent hba link management, matching kernel CNA guidance for lifecycle/UAF bugs.\nA:H - The reported race triggers WARN_ON in __device_links_no_driver (kernel oops under panic_on_warn) and dangling PM-runtime device_links from unfreed teardown can crash the host on later hba suspend/resume or module removal."}]}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-10-30T12:30:53.201Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.10","versionEndExcluding":"6.1.191"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.10","versionEndExcluding":"6.6.160"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.10","versionEndExcluding":"6.12.114"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.10","versionEndExcluding":"6.18.40"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.10","versionEndExcluding":"7.1.5"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.10","versionEndExcluding":"7.2"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"id":"CVE-2026-80653","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"total"}],"version":"2.0.3","timestamp":"2026-10-16T19:19:22.735308Z"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-10-16T19:26:31.897Z"}}]}}}