Description
In the Linux kernel, the following vulnerability has been resolved:
s390/dasd: protect device queue against concurrent access
In dasd_profile_start() the amount of requests on the device queue are counted. The access to the device queue is unprotected against concurrent access. With a lot of parallel I/O, especially with alias devices enabled, the device queue can change while dasd_profile_start() is accessing the queue. In the worst case this leads to a kernel panic due to incorrect pointer accesses.
Fix this by taking the device lock before accessing the queue and counting the requests. Additionally the check for a valid profile data pointer can be done earlier to avoid unnecessary locking in a hot path.
Metrics
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:HWeakness enumeration
Affected software
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux | >= 4fa52aa7a82f9226b3874a69816bda3af821f002, < ebdc569a07a3e8dbe66b4184922ad6f88ac0b96f; >= 4fa52aa7a82f9226b3874a69816bda3af821f002, < f75617cc8df4155374132f0b500b0b3ebb967458; >= 4fa52aa7a82f9226b3874a69816bda3af821f002, < f1ac7789406e2ca9ac51c41ad2daa597f47bdd4d; >= 4fa52aa7a82f9226b3874a69816bda3af821f002, < c841de6247e94e07566d57163d3c0d8b29278f7a; >= 4fa52aa7a82f9226b3874a69816bda3af821f002, < 6062c527d0403cef27c54b91ac8390c3a497b250; >= 4fa52aa7a82f9226b3874a69816bda3af821f002, < dc96fde8fcb2b896fd6c64802a7f4ece2e69b0be; >= 4fa52aa7a82f9226b3874a69816bda3af821f002, < 9372aab5d0ff621ea203c8c603e7e5f75e888240; >= 4fa52aa7a82f9226b3874a69816bda3af821f002, < db46cd1e0426f52999d50fa72cfa97fa39952885 |
| Linux | Linux | 3.1 |
References
- https://git.kernel.org/stable/c/6062c527d0403cef27c54b91ac8390c3a497b250Patch
- https://git.kernel.org/stable/c/9372aab5d0ff621ea203c8c603e7e5f75e888240Patch
- https://git.kernel.org/stable/c/c841de6247e94e07566d57163d3c0d8b29278f7aPatch
- https://git.kernel.org/stable/c/db46cd1e0426f52999d50fa72cfa97fa39952885Patch
- https://git.kernel.org/stable/c/dc96fde8fcb2b896fd6c64802a7f4ece2e69b0bePatch
- https://git.kernel.org/stable/c/ebdc569a07a3e8dbe66b4184922ad6f88ac0b96fPatch
- https://git.kernel.org/stable/c/f1ac7789406e2ca9ac51c41ad2daa597f47bdd4dPatch
- https://git.kernel.org/stable/c/f75617cc8df4155374132f0b500b0b3ebb967458Patch
- https://git.kernel.org/stable/c/6062c527d0403cef27c54b91ac8390c3a497b250Patch
- https://git.kernel.org/stable/c/9372aab5d0ff621ea203c8c603e7e5f75e888240Patch
- https://git.kernel.org/stable/c/c841de6247e94e07566d57163d3c0d8b29278f7aPatch
- https://git.kernel.org/stable/c/db46cd1e0426f52999d50fa72cfa97fa39952885Patch
- https://git.kernel.org/stable/c/dc96fde8fcb2b896fd6c64802a7f4ece2e69b0bePatch
- https://git.kernel.org/stable/c/ebdc569a07a3e8dbe66b4184922ad6f88ac0b96fPatch
- https://git.kernel.org/stable/c/f1ac7789406e2ca9ac51c41ad2daa597f47bdd4dPatch
- https://git.kernel.org/stable/c/f75617cc8df4155374132f0b500b0b3ebb967458Patch
Timeline
- Published
- May 21, 2024
- Last modified
- Jun 17, 2026
- NVD status
- Analyzed