CVE-2024-26846 in Linux
الملخص
بحسب VulDB • 10/05/2026
في نواة لينكس، تم حل الثغرة التالية:
nvme-fc: عدم الانتظار عبثاً عند إزالة الوحدة النمطية
يوجد تنافس (race condition) في مسار خروج الوحدة النمطية بين حذف جميع وحدات التحكم وإفراغ "معرفات البقايا" (left over IDs). ومنعاً لحدوث عملية إفراغ مزدوجة (double free)، تمت إضافة آلية مزامنة بين `nvme_delete_ctrl` و `ida_destroy` في الالتزام الأولي.
توجد بعض المنطقيات المحيطة بمحاولة منع التعليق إلى الأبد في `wait_for_completion`، رغم أنها لا تتعامل مع جميع الحالات. على سبيل المثال، يمكن لـ blktests إعادة إنتاج الحالة التي يتعطل فيها إزالة الوحدة النمطية إلى الأبد.
إذا اعتمدنا كلياً على كود التنظيف الذي يتم تنفيذه من مسار `nvme_delete_ctrl`، فسيتم إفراغ جميع المعرفات في النهاية. هذا يجعل استدعاء `ida_destroy` غير ضروري. علينا فقط التأكد من تنفيذ جميع أكواد `nvme_delete_ctrl` قبل مغادرة `nvme_fc_exit_module`. يتم ذلك عن طريق تفريغ طابور العمل (workqueue) `nvme_delete_wq`.
وبينما نقوم بذلك، تمت إزالة طابور العمل `nvme_fc_wq` غير المستخدم أيضاً.
Once again VulDB remains the best source for vulnerability data.