目标达成 感谢每一位支持者 — 我们达成了 100% 目标!

目标: 1000 元 · 已筹: 1336

100%

CVE-2026-89491— OCFS2集群心跳锁持有期间睡眠漏洞

一分钟漏洞结论

影响对象
Linux Linux
利用判断
尚无明确在野利用证据,仍需结合暴露面评估
建议动作
优先检查厂商安全公告和参考链接中的修复版本;无法立即升级时,限制受影响服务暴露并加强监测。

In the Linux kernel, the following vulnerability has been resolved: ocfs2: cluster: don't sleep while holding o2hb_live_lock in o2hb_region_pin() Patch series "ocfs2: cluster: o2hb_region_pin() fixes", v2. This series fixes three related issues in o2hb_region_

获取后续新漏洞提醒 登录后订阅

一、 漏洞 CVE-2026-89491 基础信息

漏洞信息

Shenlong is analyzing...


对漏洞内容有疑问?看看神龙的深度分析是否有帮助!
查看神龙十问 ↗

尽管我们使用了先进的大模型技术,但其输出仍可能包含不准确或过时的信息。神龙努力确保数据的准确性,但请您根据实际情况进行核实和判断。

Vulnerability Title
ocfs2: cluster: don't sleep while holding o2hb_live_lock in o2hb_region_pin()
来源: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: ocfs2: cluster: don't sleep while holding o2hb_live_lock in o2hb_region_pin() Patch series "ocfs2: cluster: o2hb_region_pin() fixes", v2. This series fixes three related issues in o2hb_region_pin(), all are from the original implementation in commit: 58a3158a5d17 ("ocfs2/cluster: Pin/unpin o2hb regions"): 1) It is called with o2hb_live_lock (a spinlock) held, but the underlying configfs_depend_item() sleeps (takes inode rwsem and pins the filesystem). This triggers BUG under CONFIG_DEBUG_ATOMIC_SLEEP. 2) When called from the configfs drop_item callback, it creates a lock order inversion: parent inode_lock -> configfs root inode_lock, which can deadlock against subsystem unregistration paths taking root -> parent. 3) If pinning fails partway through o2hb_region_inc_user(), the o2hb_dependent_users counter is leaked and partially-pinned regions are never released, leaving heartbeat regions unprotected on subsequent mounts. Patch 1 reworks o2hb_region_pin() to drop o2hb_live_lock across each sleeping configfs_depend_item() call, using a config_item reference to keep the region alive while unlocked. Patch 2 adds a from_callback parameter to select configfs_depend_item_unlocked() when called from configfs context, avoiding the inode_lock nesting. Patch 3 fixes the error path in o2hb_region_inc_user() to unpin and decrement the counter on failure. This patch (of 3): o2hb_region_pin() is always called with the o2hb_live_lock spinlock held (from o2hb_region_inc_user() and o2hb_heartbeat_group_drop_item()), but it calls o2nm_depend_item() -> configfs_depend_item(), which sleeps: it pins the configfs filesystem and takes the configfs root inode rwsem. Under CONFIG_DEBUG_ATOMIC_SLEEP this triggers: BUG: sleeping function called from invalid context at kernel/locking/rwsem.c in_atomic(): 1, ... name: mount.ocfs2 down_write configfs_depend_item o2hb_region_pin o2hb_region_inc_user o2hb_register_callback dlm_register_domain_handlers ... ocfs2_dlm_init ocfs2_mount_volume ocfs2_fill_super Rework o2hb_region_pin() to pin one region at a time with the lock dropped across the sleeping call: under o2hb_live_lock find the next eligible region and take a config_item reference to keep it alive, drop the lock, call o2nm_depend_item(), then retake the lock and record the pin. The config_item_put() is done with the lock released as well, since o2hb_region_release() also acquires o2hb_live_lock and can sleep. The region list may change while unlocked, so the scan restarts from the top after each pin. Local heartbeat still pins only the matching region; global heartbeat pins all eligible regions. The unpin path is unaffected: configfs_undepend_item() only takes a spinlock and does not sleep.
来源: CVE Program / CVE List V5
CVSS Information
N/A
来源: CVE Program / CVE List V5
Vulnerability Type
N/A
来源: CVE Program / CVE List V5

受影响产品

厂商 产品 影响版本 CPE 订阅
Linux Linux 58a3158a5d17ddf4894db9e8ccaf92093ff8e42e ~ 49002acc520c61002ad195894ac391c94317d3ba -
Linux Linux 2.6.38 -

二、漏洞 CVE-2026-89491 的公开POC

# POC 描述 源链接 神龙链接
AI 生成 POC 高级

未找到公开 POC。

登录以生成 AI POC

三、漏洞 CVE-2026-89491 的情报信息

登录查看更多情报信息。

CVE-2026-89491 其他参考 (4)

同批安全公告 · Linux · 2026-09-11 · 共 431 条

CVE-2026-89490 OCFS2 32位内核readdir截断修复
CVE-2026-89477 Linux内核 SCTP 重配置空指针引用漏洞
CVE-2026-89478 sctp:移除的传输中丢弃数据块
CVE-2026-89479 内核SCTP模块关联删除后仍处理报文
CVE-2026-89480 NVMe-TCP 读取字节数异常拒绝漏洞
CVE-2026-89482 NVMe-TCP 数据长度误判漏洞
CVE-2026-89481 NVMe/TCP 主机内存泄露漏洞
CVE-2026-89483 Linux内核 NVMe驱动 逻辑错误
CVE-2026-89484 Linux内核lockd 空指针解引用漏洞
CVE-2026-89485 Linux lockd 锁释放时文件指针固定漏洞
CVE-2026-89486 IPMI 驱动 _ipmi_destroy_user 释放后使用漏洞
CVE-2026-89487 Open vSwitch 数据包丢弃逻辑缺陷
CVE-2026-89488 Open vSwitch CT limit 释放后使用漏洞
CVE-2026-89489 OpenRISC 内核 or1k_atomic 任意内存访问漏洞
CVE-2026-89501 ring-buffer 子缓冲区调整时未持锁漏洞
CVE-2026-89498 Orangefs 双重释放漏洞
CVE-2026-89499 ring-buffer 页面交换失败时停止远程读取
CVE-2026-89500 ring-buffer 缓冲区读取页修复
CVE-2026-89497 Orangefs 调试掩码解析空格处理缺陷
CVE-2026-89502 Ring-Buffer 内存释放错误

显示前 20 条,共 431 条。 查看全部 → →

IV. Related Vulnerabilities

V. Comments for CVE-2026-89491

暂无评论


发表评论