🇰🇷 한글 설명
리눅스 커널의 netpoll 구성 중 IFF_DISABLE_NETPOLL 플래그가 설정된 장치에서 오류가 발생할 경우, 초기화되지 않은 워크 큐를 해제하려 시도하여 커널 경고가 발생합니다. 이를 해결하기 위해 __netpoll_setup() 함수 시작 부분으로 워크 큐 초기화 과정을 이동하여 안전한 정리 작업을 보장합니다.
💡 쉬운 설명
네트워크 설정 중 오류가 났을 때, 아직 준비되지 않은 도구를 정리하려고 시도하다가 컴퓨터 시스템에 경고 메시지가 뜨는 문제입니다. 도구를 사용하기 전에 미리 준비를 마쳐서 오류가 나더라도 안전하게 정리할 수 있도록 수정되었습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
net: netpoll: initialize work queue before error checks
Prevent a kernel warning when netconsole setup fails on devices with
IFF_DISABLE_NETPOLL flag. The warning (at kernel/workqueue.c:4242 in
__flush_work) occurs because the cleanup path tries to cancel an
uninitialized work queue.
When __netpoll_setup() encounters a device with IFF_DISABLE_NETPOLL,
it fails early and calls skb_pool_flush() for cleanup. This function
calls cancel_work_sync(&np->refill_wq), but refill_wq hasn't been
initialized yet, triggering the warning.
Move INIT_WORK() to the beginning of __netpoll_setup(), ensuring the
work queue is properly initialized before any potential failure points.
This allows the cleanup path to safely cancel the work queue regardless
of where the setup fails.
📍 영향받는 시스템
IFF_DISABLE_NETPOLL 플래그를 사용하는 장치를 포함한 Linux Kernel
⚔️ 공격 벡터
로컬 시스템에서 특정 네트워크 장치 설정 시 발생하는 커널 경고 (DoS 또는 시스템 불안정 유발 가능)
🛡️ 대응 방법
해당 패치가 적용된 최신 리눅스 커널 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인