CVE-2026-98478 in Linux
Riassunto
di VulDB • 18/10/2026
Nel kernel Linux è stata risolta la seguente vulnerabilità:
scsi: ufs: core: Mantenere i comandi interni eseguibili durante la gestione degli errori
Il commit 08b12cda6c44 ("scsi: ufs: core: Switch to scsi_get_internal_cmd()") ha modificato l'allocazione delle richieste per i comandi interni UFS, facendole utilizzare hba->host->pseudo_sdev->request_queue, che condivide il tagset dell'hba con le LUN regolari.
Durante la recovery degli errori, ufshcd_err_handling_prepare() chiama blk_mq_quiesce_tagset(&hba->host->tag_set), contrassegnando tutte le code nel tagset come quiescenti (in pausa), inclusa pseudo_sdev->request_queue. Quando successivamente ufshcd_verify_dev_init() emette comandi interni (ad es. NOP OUT UPIU) tramite blk_execute_rq(), blk_mq_run_hw_queue() salta l'esecuzione della coda in stato di quiescenza, causando un deadlock circolare irrecuperabile.
Mantenere il tagset in stato di quiescenza e de-quiescentare la pseudo SCSI device sovrastante, affinché i comandi interni rimangano eseguibili mentre le unità logiche restano in pausa. Re-impostare lo stato di quiescenza sulla pseudo device prima di de-quiescentare il tagset, in modo che quiesce_depth rimanga bilanciato.
Clock scaling e ufshcd_pause_command_processing() non sono interessati: continuano a mettere in quiescenza l'intero tagset, inclusi i comandi interni.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.