CVE-2026-90129 in Linuxالمعلومات

الملخص

بحسب VulDB • 17/09/2026

في نواة لينكس، تم حل الثغرة التالية:

virtio_balloon: إخماد عمل البالون قبل إيقاف تشغيل الجهاز

أضافت الالتزام 8bd2fa086a04 ("virtio: break and reset virtio devices on device_shutdown()") معالج إغلاق عام (generic .shutdown handler) لـ bus virtio يقوم بتعطيل وإعادة تعيين كل جهاز virtio أثناء عملية device_shutdown()، أي عند إعادة التشغيل أو kexec.

لا يوفر virtio_balloon خاصاً به لإغلاق الجهاز (.shutdown)، لذا فإن المسار العام يعمل بينما لا يزال العمل غير المتزامن للبالون مفعّلاً (armed). بمجرد تعطيل الجهاز، تُرجع الدالة virtqueue_add_inbuf() داخل virtballoon_free_page_report() القيمة -EIO وتُشغّل استدعاء WARN_ON_ONCE(). على نظام نواة مُهيأ بـ panic_on_warn، يتحول هذا الإجراء العادي لإعادة التشغيل (مثل ترقية تعتمد على kexec) إلى حالة بانك (panic) قاتلة في منتصف عملية device_shutdown()، مما يمنع الجهاز من الوصول إلى النواة الجديدة.

سيؤدي تخفيف ذلك الاستدعاء الوحيد WARN_ON_ONCE() إلى إخفاء العرض فقط: فمسارات inflate/deflate ومسار OOM لا تُصدر تحذيرات، بل تستدعي wait_event(vb->acked, ...) وستعوم بدلاً من ذلك للأبد على طابور معطل لم يعد بإمكانه إكمال العمليات. يجب إخماد الجهاز (quiesce)، وليس مجرد إسكاته.

أضف معالج .shutdown يقوم بإخماد البالون عبر المساعد المشترك virtballoon_quiesce() بينما لا يزال الجهاز حياً، وبعد ذلك فقط يتم تعطيله وإعادة تعيينه عبر virtio_device_shutdown(). وعلى عكس virtballoon_remove()، فإن طابور عمل (workqueue) البالون لا يُدمر، لأن الإغلاق لا يحرر الجهاز، ومنع أي عمل إضافي من الانتظار في الطابور يتحقق بالفعل عن طريق stop_update مع cancel_work_sync().

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

مسؤول

Linux

حجز

11/09/2026

إفشاء

17/09/2026

الاعتدال

تمت الموافقة

إدخال

VDB-406650

EPSS

0.00000

KEV

لا

النشاطات

منخفض جدًا

المصادر

Do you want to use VulDB in your project?

Use the official API to access entries easily!