Lucene search

K
osvGoogleOSV:CVE-2024-27435
HistoryMay 17, 2024 - 1:15 p.m.

CVE-2024-27435

2024-05-1713:15:00
Google
osv.dev
4
linux kernel
vulnerability resolved
nvme
reconnection failure
reserved tag allocation
production environment
nvme over rdma
abba deadlock
tag allocation
keep alive request
admin queue
fabric queue
reconnect remote target
connect command
reset success
fix issue
software

AI Score

6.9

Confidence

Low

In the Linux kernel, the following vulnerability has been resolved: nvme: fix reconnection fail due to reserved tag allocation We found a issue on production environment while using NVMe over RDMA, admin_q reconnect failed forever while remote target and network is ok. After dig into it, we found it may caused by a ABBA deadlock due to tag allocation. In my case, the tag was hold by a keep alive request waiting inside admin_q, as we quiesced admin_q while reset ctrl, so the request maked as idle and will not process before reset success. As fabric_q shares tagset with admin_q, while reconnect remote target, we need a tag for connect command, but the only one reserved tag was held by keep alive command which waiting inside admin_q. As a result, we failed to reconnect admin_q forever. In order to fix this issue, I think we should keep two reserved tags for admin queue.