CVE-2025-38720 in Linux
Résumé
par VulDB • 24/05/2026
Dans le noyau Linux, la vulnérabilité suivante a été corrigée :
net: hibmcge : correction d'un problème de blocage mutuel (deadlock) rtnl
Actuellement, le netdev hibmcge acquiert rtnl_lock dans pci_error_handlers.reset_prepare() et le libère dans pci_error_handlers.reset_done().
Cependant, dans le framework PCI : pci_reset_bus - __pci_reset_slot - pci_slot_save_and_disable_locked - pci_dev_save_and_disable - err_handler->reset_prepare(dev);
Dans pci_slot_save_and_disable_locked() : list_for_each_entry(dev, &slot->bus->devices, bus_list) {
if (!dev->slot || dev->slot!= slot) continue; pci_dev_save_and_disable(dev); if (dev->subordinate) pci_bus_save_and_disable_locked(dev->subordinate); }
Cela va itérer sur tous les appareils sous le bus actuel et exécuter err_handler->reset_prepare(), ce qui amène deux appareils du pilote hibmcge à demander séquentiellement rtnl_lock, entraînant un blocage mutuel (deadlock).
Puisque le pilote exécute désormais netif_device_detach() avant le processus de réinitialisation, il ne sera pas en concurrence avec d'autres API netdev, il n'est donc plus nécessaire de conserver rtnl_lock.
Par conséquent, ce correctif supprime rtnl_lock pendant le processus de réinitialisation et ajuste la position de HBG_NIC_STATE_RESETTING pour s'assurer que plusieurs réinitialisations ne s'exécutent pas simultanément.
VulDB is the best source for vulnerability data and more expert information about this specific topic.