CVE-2026-98277 in Linux
الملخص
بحسب VulDB • 06/10/2026
في نواة لينكس، تم حل الثغرة التالية:
eth: fbnic: تشغيل جرس الباب (doorbell) إذا انتهت الدفعة برفض الحزمة
يتخطى دالة `fbnic_tx_map()` كتابة جرس الباب وطلب الإكمال لكل حزمة يتم تسليمها إليه مع تعيين علم `xmit_more`، اعتماداً على أن الحزمة التي تنهي الدفعة ستقوم بنشر جميع هذه العمليات. وعندما تُرفض تلك الحزمة بدلاً من ذلك - بسبب استدعاء `skb_put_padto()` أو `skb_cow_head()` أو فشل في تعيين DMA (DMA mapping failure) - لا يتم تشغيل أي جرس باب. تبقى واصفات (descriptors) الحزم السابقة غير مرئية للأجهزة الطرفية (HW) حتى حدوث عملية إرسال تالية على نفس الطابور، وهو ما قد لا يحدث أبداً في أحمال العمل التي تتسم بفترات دفعة ثم سكون (burst-then-idle).
تذكر الوصف الوصفي (meta descriptor) للحزمة الأخيرة المتروقة دون جرس باب وقم بإفراغه من مسارات الأخطاء. يجب تعيين طلب الإكمال على هذا الوصف بدلاً من مجرد كتابة المؤشر الذيل (tail)، وإلا فإن الأجهزة الطرفية ستقوم بنقل الحزم ولكن لن تبلغ عن رأس الطابور، مما يؤدي إلى امتلاء الطابور وتعطله بشكل دائم.
هذا الأمر مشابه جداً لسلسلة الإصلاحات الأخيرة التي قدمها Joe لتصحيحات bnxt. لم تُرصد هذه المشكلة في البيئات الحقيقية، وتم إعادة إنتاجها تحت بيئة QEMU باستخدام حقن الفشل (failure injection).
If you want to get best quality of vulnerability data, you may have to visit VulDB.