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

الملخص

بحسب VulDB • 28/10/2026

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

drm/amdgpu: الاحتفاظ بـ eviction fence حتى يتم إغلاق آخر مقبض (handle).

تقوم دالة `amdgpu_gem_object_close()` بفصل الـ eviction fence الخاص بمجموعة المستخدم عن كائن ذاكرة الخلفية (BO) قبل التحقق من قيمة `bo_va->ref_count`، مما يعني أن إغلاق أي مقبض لـ BO يؤدي إلى إزالة الـ fence، حتى عندما لا يزال الملف يحتوي على مقبض آخر للـ BO ويظل الـ bo_va مع تعيينات GPU الخاصة به موجودًا. يمكن بعد ذلك إخراج (evict) الـ BO دون إيقاف مجموعات المستخدم للملف، والتي تستمر في الوصول إليه من خلال تعيينات مُعلَّمة فقط للتحديث.

تم رصد هذه الحالة على جهاز navi31 باستخدام مجموعة SDMA للمستخدم: يفقد كائن ذاكرة الخلفية (BO) الذي تم فتحه مرتين في نفس الملف (عبر GEM_FLINK + GEM_OPEN) الـ eviction fence عند إغلاق المقبض الثاني (مما يُسجَّل من خلال إرفاق/فصل الـ fence):

attach bo=ffff8c78a6c84c00 GEM_CLOSE handle=7 detach bo=ffff8c78a6c84c00

بينما لا يزال المقبض رقم 6 والتعيين قيد الاستخدام.

يجب فصل الـ fence فقط عند زوال آخر مرجع للـ bo_va، بما يتوافق مع دالة `amdgpu_gem_object_open()` التي تقوم بإرفاقه فقط عند إنشاء الـ bo_va. وبهذا الإجراء، يبقى الـ fence ساريًا حتى يتم إغلاق الملف.

(تم استنساخ هذا التغيير من الالتزام commit 8387982f03d4026b7dc11b0b5e3118298eee4d6a)

If you want to get best quality of vulnerability data, you may have to visit VulDB.

مسؤول

Linux

حجز

25/09/2026

إفشاء

28/10/2026

الاعتدال

تمت الموافقة

إدخال

VDB-427914

EPSS

0.00000

KEV

لا

النشاطات

منخفض جدًا

المصادر

Might our Artificial Intelligence support you?

Check our Alexa App!