🇰🇷 한글 설명
Linux 커널의 sched_ext 구성 요소에서 하드락업(hardlockup) 발생 시 처리 방식의 결함이 수정되었습니다. 기존에는 NMI 환경과의 충돌을 피하기 위해 처리를 지연시켰으나, 이로 인해 시스템이 완전히 멈추는 상황에서 복구가 불가능했습니다. 이번 패치를 통해 하드락업 핸들러가 즉시 중단 처리를 수행하여 시스템의 교착 상태를 효과적으로 해결할 수 있게 되었습니다.
💡 쉬운 설명
컴퓨터의 핵심 기능인 커널이 멈췄을 때, 이를 감지하고 강제로 재시작하거나 복구하는 기능이 제대로 작동하지 않던 문제를 해결했습니다. 이제 시스템이 완전히 먹통이 되기 전에 문제를 감지하고 즉시 대응할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
sched_ext: Abort directly from the hardlockup handler
scx_hardlockup() defers the abort to an irq_work because exit claiming used
to take scx_sched_lock and couldn't run from NMI. The deferral is now
unnecessary - claiming is NMI-safe and asserting ->aborting is exactly what
breaks the live-locks that hard-lock CPUs. Call handle_lockup() directly and
drop the irq_work. This also makes the self-detected case recoverable: the
perf watchdog fires on the hard-locked CPU itself, where a queued irq_work
never runs with IRQs off.
Also fix the return value: %true used to be returned whenever sched_ext was
loaded, suppressing the kernel's hardlockup report even when the abort was
refused. Return %true only when this call initiated the abort.
📍 영향받는 시스템
sched_ext 기능이 활성화된 Linux 커널 버전
⚔️ 공격 벡터
직접적인 공격 벡터는 없으며, 시스템 교착 상태(Live-lock) 발생 시 복구 실패를 유발하는 논리적 결함임
🛡️ 대응 방법
sched_ext 패치가 적용된 최신 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 sched_ext 수정 사항이 포함된 최신 패치 버전인지 확인