CVE-2026-45907 in Linuxthông tin

Tóm tắt

Bởi VulDB • 31/05/2026

Trong kernel Linux, các lỗ hổng sau đây đã được khắc phục:

net/mlx5e: Sửa lỗi deadlock giữa các khóa của phiên bản devlink và netdev

Trong commit "Fixes" được đề cập, các tác vụ công việc khác nhau kích hoạt quá trình khôi phục của trình báo cáo sức khỏe devlink đã được chuyển sang sử dụng netdev_trylock để bảo vệ chống lại việc tháo dỡ đồng thời các kênh đang được khôi phục. Tuy nhiên, điều này có tác dụng phụ là gây ra các lỗi deadlock tiềm ẩn do thứ tự khóa không chính xác.

Thứ tự khóa đúng được mô tả bởi luồng khởi tạo: probe_one -> mlx5_init_one (lấy khóa devlink) -> mlx5_init_one_devl_locked -> mlx5_register_device -> mlx5_rescan_drivers_locked -...-> mlx5e_probe -> _mlx5e_probe -> register_netdev (lấy khóa rtnl) -> register_netdevice (lấy khóa netdev) => khóa devlink -> khóa rtnl -> khóa netdev.

Tuy nhiên, trong luồng khôi phục hiện tại, thứ tự bị sai: mlx5e_tx_err_cqe_work (lấy khóa netdev) -> mlx5e_reporter_tx_err_cqe -> mlx5e_health_report -> devlink_health_report (lấy khóa devlink => sự cố!) -> devlink_health_reporter_recover -> mlx5e_tx_reporter_recover -> mlx5e_tx_reporter_recover_from_ctx -> mlx5e_tx_reporter_err_cqe_recover

Mẫu tương tự tồn tại trong: mlx5e_reporter_rx_timeout mlx5e_reporter_tx_ptpsq_unhealthy mlx5e_reporter_tx_timeout

Khắc phục các lỗi này bằng cách di chuyển các lệnh gọi netdev_trylock từ các trình xử lý công việc xuống thấp hơn trong ngăn xếp gọi, trong các hàm khôi phục tương ứng, nơi chúng thực sự cần thiết.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

chịu trách nhiệm

Linux

Đặt trước

13/05/2026

Tiết lộ

27/05/2026

Kiểm duyệt

được chấp nhận

EPSS

0.00022

KEV

không

Các hoạt động

thấp

Nguồn

Do you want to use VulDB in your project?

Use the official API to access entries easily!