CVE-2026-43262该漏洞存在于Linux内核的GFS2文件系统中。在gfs2_fiemap()函数执行期间,由于持有inode glock调用iomap_fiemap(),若fiemap缓冲区被映射到同一inode,访问时触发缺页中断会导致递归获取glock,从而引发死锁或系统不稳定。攻击者可利用此漏洞造成本地拒绝服务。
漏洞源于Linux内核GFS2文件系统在处理fiemap请求时的锁逻辑缺陷。具体来说,gfs2_fiemap()在持有inode glock的情况下直接调用了iomap_fiemap()。如果攻击者精心构造场景,使得用户空间提供的fiemap缓冲区是通过mmap系统调用映射到同一个GFS2 inode的内存区域,那么当内核尝试写入该缓冲区时,会触发缺页异常。GFS2处理缺页异常需要再次获取该inode的glock以读取数据,从而在已经持有锁的情况下再次尝试获取锁,造成死锁。这种递归锁获取违反了GFS2的锁设计原则,导致内核进程挂起,进而引发本地拒绝服务。修复方案是在调用iomap_fiemap()前禁用缺页中断,并手动处理缓冲区填充。