Description
In the Linux kernel, the following vulnerability has been resolved: scsi: qla2xxx: Don't query firmware state while chip is down qla2x00_fw_state_show() initializes rval to QLA_FUNCTION_FAILED and jumps to the out: label when the chip is down or EEH is busy. The out: block then re-issued qla2x00_get_firmware_state() because rval != QLA_SUCCESS, defeating the chip-down/EEH-busy guards and issuing a mailbox command (outside optrom_mutex) during ISP reset or PCI error recovery, which can hang the adapter. It also turned a normal in-lock mailbox failure into a second unsynchronized mailbox attempt. Make the out: fallback only mark the firmware state as unknown. The mailbox is now issued at most once, inside optrom_mutex, and only when the chip is up and not EEH-busy.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
b6faaaf796d7bfb00e32ca5c905d55cc43e89448 to < 178d984e8875292582e4295cf559b2b11d3c9325affectedb6faaaf796d7bfb00e32ca5c905d55cc43e89448 to < cba780c01f72f8585ca81ad7304097f8b12ef339affectedb6faaaf796d7bfb00e32ca5c905d55cc43e89448 to < 22f44f77da496bc355479c08a0a9dbc9ad42ba42affectedb6faaaf796d7bfb00e32ca5c905d55cc43e89448 to < b6a30baa29695fa0eaba4a3a04435a3c1a5cb63daffectedb6faaaf796d7bfb00e32ca5c905d55cc43e89448 to < 7bc2baed8a3d6a1e2a3f6b78d245f25d1e18a749affectedb6faaaf796d7bfb00e32ca5c905d55cc43e89448 to < a194684853dceaa1d6b7a9a02bc12f479232ad9baffectedb6faaaf796d7bfb00e32ca5c905d55cc43e89448 to < a6374b508893de15fee78583a95f5099d7812e85affectedb6faaaf796d7bfb00e32ca5c905d55cc43e89448 to < e0cebe20dcffbed9c078fe30e2d18cd5046d9effaffected
Linux Linux
Default version status: affected
4.20affected0 to < 4.20unaffected5.10.270 to ≤ 5.10.*unaffected5.15.221 to ≤ 5.15.*unaffected6.1.188 to ≤ 6.1.*unaffected6.6.157 to ≤ 6.6.*unaffected6.12.110 to ≤ 6.12.*unaffected6.18.51 to ≤ 6.18.*unaffected7.2.5 to ≤ 7.2.*unaffected7.3 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/178d984e8875292582e4295cf559b2b11d3c9325 ↗
- https://git.kernel.org/stable/c/cba780c01f72f8585ca81ad7304097f8b12ef339 ↗
- https://git.kernel.org/stable/c/22f44f77da496bc355479c08a0a9dbc9ad42ba42 ↗
- https://git.kernel.org/stable/c/b6a30baa29695fa0eaba4a3a04435a3c1a5cb63d ↗
- https://git.kernel.org/stable/c/7bc2baed8a3d6a1e2a3f6b78d245f25d1e18a749 ↗
- https://git.kernel.org/stable/c/a194684853dceaa1d6b7a9a02bc12f479232ad9b ↗
- https://git.kernel.org/stable/c/a6374b508893de15fee78583a95f5099d7812e85 ↗
- https://git.kernel.org/stable/c/e0cebe20dcffbed9c078fe30e2d18cd5046d9eff ↗