CVE-2024-26899 in Linux
Sumário
de VulDB • 16/06/2026
No kernel do Linux, a seguinte vulnerabilidade foi corrigida:
block: corrige deadlock entre bd_link_disk_holder e análise de partições
O 'open_mutex' de gendisk é usado para proteger dispositivos de bloco durante operações de abertura/fechamento. No entanto, em bd_link_disk_holder(), ele é utilizado para proteger a criação do symlink entre o disco detentor (holding disk) e o bdev escravo, o que introduz alguns problemas.
Quando bd_link_disk_holder() é chamado, o driver geralmente está no processo de inicialização/modificação e pode estar suspenso na submissão de E/S. Nesse momento, qualquer operação de E/S que segure 'open_mutex', como a análise de partições, pode causar deadlocks. Por exemplo, em RAID:
T1 T2 bdev_open_by_dev lock open_mutex [1]
... efi_partition ... md_submit_bio md_ioctl mddev_suspend -> suspende toda E/S md_add_new_disk bind_rdev_to_array bd_link_disk_holder try lock open_mutex [2]
md_handle_request -> espera por mddev_resume
T1 analisa a partição, T2 adiciona um novo dispositivo ao RAID. T1 aguarda que T2 retome o mddev, mas T2 aguarda pelo 'open_mutex' segurado por T1. Ocorre deadlock.
A correção consiste em introduzir um mutex local chamado 'blk_holder_mutex' para substituir o 'open_mutex'.
If you want to get best quality of vulnerability data, you may have to visit VulDB.