CVE-2025-38311

Orta

Açıklama

Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: iavf: crit lock kaldırıldı crit lock kaldırıldı. Bu durum bizi hata yapmaya müsait try_locks mantığından kurtarmaktadır. Jakub tarafından sağlanan netdev_lock() sayesinde bu işlem artık kolaylaşmıştır ve çoğu durumda zaten bununla korunuyorduk; böyle olmadığı durumlarda crit lock, netdev lock ile değiştirildi. Lockdep, işin crit_lock altında iptal edilmesi gerektiğini bildirmektedir [splat1] ve bu, Slawomir tarafından yapılan [1] çalışmasından beri çoğunlukla takip ettiğimiz şemaydı. Ancak bu yapıldığında hala kilitlenmelerle (deadlock) karşılaşıyorduk [splat2]. Bu nedenle, daha büyük bir sorun olan iavf'nin "tuhaf kilitleme/zamanlama" konusuna odaklanmalıyız. Bunu düzeltmek için ilk adım crit lock'un kaldırılmasıdır. Zamanlamayı/görevleri basitleştiren bir -next serisi ile devam edeceğim. [splat2]'yi düzeltmek için (crit lock tutulsaydı tamamen çirkin olurdu), işi netdev lock olmadan iptal edin (tuhaf unlock+lock şeması). iavf_watchdog_task()'ın korunan kısmını, daha fazla iş zamanlamasını içerecek şekilde genişletin. iavf_reset_task() içinde kaldırılan yorumun yanlış yerleştirildiği, aslında kaldırılan if koşulunun içinde olması gerektiği ve bu nedenle şimdi silindiği unutulmamalıdır. [splat1] - bu yama olmadan - VF kaldırma sırasında oluşan kilitlenme: WARNING: possible circular locking dependency detected sh/3825 is trying to acquire lock: ((work_completion)(&(&adapter->watchdog_task)->work)){+.+.}-{0:0}, at: start_flush_work+0x1a1/0x470 but task is already holding lock: (&adapter->crit_lock){+.+.}-{4:4}, at: iavf_remove+0xd1/0x690 [iavf] which lock already depends on the new lock. [splat2] - iş crit lock altında iptal edilirken, bu seri olmadan, geçici çözüm girişimi için [2]'ye bakınız WARNING: possible circular locking dependency detected sh/3550 is trying to acquire lock: ((wq_completion)iavf){+.+.}-{0:0}, at: touch_wq_lockdep_map+0x26/0x90 but task is already holding lock: (&dev->lock){+.+.}-{4:4}, at: iavf_remove+0xa6/0x6e0 [iavf] which lock already depends on the new lock. [1] fc2e6b3b132a ("iavf: Rework mutexes for better synchronisation") [2] https://github.com/pkitszel/linux/commit/52dddbfc2bb60294083f5711a158a

ÖnemOrta
CVSS5.5
İstismar olasılığı—
ÜrünLinux Kernel
Yayın10 Tem 2025
İlk görülme10 Tem 2025
Zayıflık türüCWE-667CWE-667

Nasıl düzeltilir

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
linux linux_kernel6.1.42 ≤ v < 6.2, 6.4.7 ≤ v < 6.5, 6.5.1 ≤ v < 6.15.3, 6.56.2, 6.5, 6.15.3

Sürümünüzü kontrol edin

Ürünü seçin ve kullandığınız sürümü yazın; sürümün etkilenen aralıkta olup olmadığını görün.

Intelligence 360 paketinde

Attack Surface Management

Alan adlarınıza bağlı varlıkları, bu varlıklarda çalışan teknolojileri ve bilinen zafiyetleri tek listede görün.

CVE-2025-38311 · Linux Kernel · Dark Radar