cveboard RSS feed

CVE-2023-53245

CVE.org · Published

Historical CVEsJSONAI instructions

Record status
Published
Identifier year (not publication year)
2023
Source publication
Source updated
Imported by cveboard
Source snapshot
cve_2026-10-24_midnight_baseline ·

Plain text

CNA source text (English)

scsi: storvsc: Fix handling of virtual Fibre Channel timeouts

In the Linux kernel, the following vulnerability has been resolved: scsi: storvsc: Fix handling of virtual Fibre Channel timeouts Hyper-V provides the ability to connect Fibre Channel LUNs to the host system and present them in a guest VM as a SCSI device. I/O to the vFC device is handled by the storvsc driver. The storvsc driver includes a partial integration with the FC transport implemented in the generic portion of the Linux SCSI subsystem so that FC attributes can be displayed in /sys. However, the partial integration means that some aspects of vFC don't work properly. Unfortunately, a full and correct integration isn't practical because of limitations in what Hyper-V provides to the guest. In particular, in the context of Hyper-V storvsc, the FC transport timeout function fc_eh_timed_out() causes a kernel panic because it can't find the rport and dereferences a NULL pointer. The original patch that added the call from storvsc_eh_timed_out() to fc_eh_timed_out() is faulty in this regard. In many cases a timeout is due to a transient condition, so the situation can be improved by just continuing to wait like with other I/O requests issued by storvsc, and avoiding the guaranteed panic. For a permanent failure, continuing to wait may result in a hung thread instead of a panic, which again may be better. So fix the panic by removing the storvsc call to fc_eh_timed_out(). This allows storvsc to keep waiting for a response. The change has been tested by users who experienced a panic in fc_eh_timed_out() due to transient timeouts, and it solves their problem. In the future we may want to deprecate the vFC functionality in storvsc since it can't be fully fixed. But it has current users for whom it is working well enough, so it should probably stay for a while longer.

Scoped product and version facts

Fix information unknown; no fixed version is derived here. Missing information does not prove that no fix exists.

Exploitation unknown; this catalogue does not assess exploitation.

Linux

Vendor
Linux
Product
Linux
Platforms
Unknown
Default status
unaffected
Linux · Scoped product and version facts
Version (version)Status (status)Version scheme (versionType)Exclusive end (lessThan)Inclusive end (lessThanOrEqual)Status changes (at → status)
3930d7309807ba0bfa460dfa9ed68d5560347dd2affectedgitcd87f4df9865a53807001ed12c0f0420b14ececdUnavailableNone listed
3930d7309807ba0bfa460dfa9ed68d5560347dd2affectedgit311db605e07f0d4fc0cc7ddb74f1e5692ea2f469UnavailableNone listed
3930d7309807ba0bfa460dfa9ed68d5560347dd2affectedgit048ebc9a28fb918ee635dd4b2fcf4248eb6e4050UnavailableNone listed
3930d7309807ba0bfa460dfa9ed68d5560347dd2affectedgit1678408d08f31a694d5150a56796dd04c9710b22UnavailableNone listed
3930d7309807ba0bfa460dfa9ed68d5560347dd2affectedgit7a792b3d888aab2c65389f9f4f9f2f6c000b1a0dUnavailableNone listed
3930d7309807ba0bfa460dfa9ed68d5560347dd2affectedgited70fa5629a8b992a5372d7044d1db1f8fa6de29UnavailableNone listed
3930d7309807ba0bfa460dfa9ed68d5560347dd2affectedgit763c06565055ae373fe7f89c11e1447bd1ded264UnavailableNone listed
3930d7309807ba0bfa460dfa9ed68d5560347dd2affectedgit175544ad48cbf56affeef2a679c6a4d4fb1e2881UnavailableNone listed

Linux

Vendor
Linux
Product
Linux
Platforms
Unknown
Default status
affected
Linux · Scoped product and version facts
Version (version)Status (status)Version scheme (versionType)Exclusive end (lessThan)Inclusive end (lessThanOrEqual)Status changes (at → status)
4.13affectedUnavailableUnavailableUnavailableNone listed
0unaffectedsemver4.13UnavailableNone listed
4.14.323unaffectedsemverUnavailable4.14.*None listed
4.19.292unaffectedsemverUnavailable4.19.*None listed
5.4.254unaffectedsemverUnavailable5.4.*None listed
5.10.191unaffectedsemverUnavailable5.10.*None listed
5.15.127unaffectedsemverUnavailable5.15.*None listed
6.1.46unaffectedsemverUnavailable6.1.*None listed
6.4.11unaffectedsemverUnavailable6.4.*None listed
6.5unaffectedoriginal_commit_for_fixUnavailable*None listed