CVE-2025-71298Linux内核中的drm/tests: shmem组件存在一个安全漏洞。该漏洞源于在调用对象的madvise操作时,未正确持有GEM对象的预留锁。测试代码错误地使用了drm_gem_shmem_madvise_locked()函数,导致在特定条件下触发内核警告,可能引发系统可用性问题。
该漏洞位于Linux内核的DRM(Direct Rendering Manager)子系统中。具体而言,drm_gem_shmem_madvise_locked函数要求调用者在执行前必须持有预留锁以防止并发访问。然而,在测试代码路径中,这一前提条件未被满足,导致调用时产生WARNING警告,如位于drm_gem_shmem_helper.c:499的堆栈跟踪。攻击者需具备本地低权限(PR:L),通过触发该代码路径可能导致内核不稳定或拒绝服务(A:H)。修复方案引入了新的辅助函数drm_gem_shmem_madvise(),专门用于Kunit测试,并在内部处理锁的获取与释放,从而隔离了测试接口与常规驱动接口。