CVE-2023-53245
Severity CVSS v4.0:
Pending analysis
Type:
CWE-476
NULL Pointer Dereference
Publication date:
15/09/2025
Last modified:
14/01/2026
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
scsi: storvsc: Fix handling of virtual Fibre Channel timeouts<br />
<br />
Hyper-V provides the ability to connect Fibre Channel LUNs to the host<br />
system and present them in a guest VM as a SCSI device. I/O to the vFC<br />
device is handled by the storvsc driver. The storvsc driver includes a<br />
partial integration with the FC transport implemented in the generic<br />
portion of the Linux SCSI subsystem so that FC attributes can be displayed<br />
in /sys. However, the partial integration means that some aspects of vFC<br />
don&#39;t work properly. Unfortunately, a full and correct integration isn&#39;t<br />
practical because of limitations in what Hyper-V provides to the guest.<br />
<br />
In particular, in the context of Hyper-V storvsc, the FC transport timeout<br />
function fc_eh_timed_out() causes a kernel panic because it can&#39;t find the<br />
rport and dereferences a NULL pointer. The original patch that added the<br />
call from storvsc_eh_timed_out() to fc_eh_timed_out() is faulty in this<br />
regard.<br />
<br />
In many cases a timeout is due to a transient condition, so the situation<br />
can be improved by just continuing to wait like with other I/O requests<br />
issued by storvsc, and avoiding the guaranteed panic. For a permanent<br />
failure, continuing to wait may result in a hung thread instead of a panic,<br />
which again may be better.<br />
<br />
So fix the panic by removing the storvsc call to fc_eh_timed_out(). This<br />
allows storvsc to keep waiting for a response. The change has been tested<br />
by users who experienced a panic in fc_eh_timed_out() due to transient<br />
timeouts, and it solves their problem.<br />
<br />
In the future we may want to deprecate the vFC functionality in storvsc<br />
since it can&#39;t be fully fixed. But it has current users for whom it is<br />
working well enough, so it should probably stay for a while longer.
Impact
Base Score 3.x
5.50
Severity 3.x
MEDIUM
Vulnerable products and versions
| CPE | From | Up to |
|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.13 (including) | 4.14.323 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.15 (including) | 4.19.292 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.20 (including) | 5.4.254 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.5 (including) | 5.10.191 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.11 (including) | 5.15.127 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.16 (including) | 6.1.46 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.2 (including) | 6.4.11 (excluding) |
| cpe:2.3:o:linux:linux_kernel:6.5:rc1:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:6.5:rc2:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:6.5:rc3:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:6.5:rc4:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:6.5:rc5:*:*:*:*:*:* |
To consult the complete list of CPE names with products and versions, see this page
References to Advisories, Solutions, and Tools
- https://git.kernel.org/stable/c/048ebc9a28fb918ee635dd4b2fcf4248eb6e4050
- https://git.kernel.org/stable/c/1678408d08f31a694d5150a56796dd04c9710b22
- https://git.kernel.org/stable/c/175544ad48cbf56affeef2a679c6a4d4fb1e2881
- https://git.kernel.org/stable/c/311db605e07f0d4fc0cc7ddb74f1e5692ea2f469
- https://git.kernel.org/stable/c/763c06565055ae373fe7f89c11e1447bd1ded264
- https://git.kernel.org/stable/c/7a792b3d888aab2c65389f9f4f9f2f6c000b1a0d
- https://git.kernel.org/stable/c/cd87f4df9865a53807001ed12c0f0420b14ececd
- https://git.kernel.org/stable/c/ed70fa5629a8b992a5372d7044d1db1f8fa6de29



