关键信息 漏洞类型: 调度器错误 ( ) 问题描述: 被设置为 ,导致崩溃。 根本原因: 在 中,当处理延迟的组实体时,如果父实体的队列也被延迟,会导致 设置为 。这在后续计算中引发溢出和错误结果。 具体步骤: 1. 当 为假时, 被设置为 。 2. 如果实体被延迟, 返回 。 3. 第一个 循环取消排队实体。 4. 如果实体是其父实体的唯一子实体,下一个迭代尝试取消排队父实体。 5. 如果父实体的队列需要被延迟,则跳出循环而不更新 。 6. 第二个 循环将父实体的 设置为保存的 ,即 。 后果: - 在 中, 用于计算 ,导致巨大的负数。 - 用于 ,由于 是负数, 超过 ,导致 设置为巨大的负数。 - 在 中, 被缩放,导致溢出并产生巨大的正或负数。 - 调整后的 从 减去,增加或减少 的巨大数值。 - 调用 和 ,由于 远离队列中的其他 ,返回 ,导致负载计算溢出。 - 没有实体符合条件, 返回 。 - 尝试解引用 的返回值并崩溃。 修复提交: 作者: Omar Sandoval () 提交者: Greg Kroah-Hartman () 日期: 2025-04-25 01:51:24 -0700 (作者), 2025-05-18 08:24:58 +0200 (提交者)