KernelDiag: 커널 충돌을 위한 에이전트 기반 근본 원인 진단
요약
KernelDiag는 Linux 커널 충돌의 근본 원인을 진단하기 위해 제안된 에이전트 기반 프레임워크입니다. 로그와 코드를 매핑하고 구조화된 인과 추론을 통해 결함 메서드를 정확하게 찾아내며, 기존 방식보다 뛰어난 진단 성능을 보여줍니다.
핵심 포인트
- 에이전트 기반 프레임워크를 통한 커널 충돌 근본 원인 진단
- 로그-코드 매핑 및 구조화된 증거 그래프 활용
- KGYM 벤치마크에서 기존 방식 대비 최대 4배 정확도 향상
- 인간 및 LLM 평가에서 실행 가능한 진단 설명 생성 확인
Linux 커널은 가장 복잡한 소프트웨어 시스템 중 하나로, 자동화된 퍼징 (fuzzing)을 통해 수천 개의 충돌이 지속적으로 노출되지만, 근본 원인 진단 (root-cause diagnosis)은 여전히 수동적이고 시간이 많이 소요되는 병목 구간으로 남아 있습니다. 분산 시스템에 효과적인 기존의 LLM 기반 근본 원인 분석 (RCA) 기술은 희소한 저수준 아티팩트 (low-level artifacts), 이질적인 진단 증거 (예: 시스템 콜 (syscalls), 로그, 충돌 보고서), 그리고 세밀한 메서드 수준의 추론을 요구하는 복잡한 비선형 결함 전파 (non-linear fault propagation)로 인해 커널 디버깅으로 쉽게 일반화되지 않습니다. 이러한 과제를 해결하기 위해, 우리는 구조화된 인과 추론 (causal reasoning)을 통해 커널 근본 원인을 진단하는 에이전트 기반 프레임워크인 KernelDiag를 제안합니다. KernelDiag는 먼저 로그-코드 매핑 (log-to-code mapping)을 통해 이질적인 진단 아티팩트를 정렬한 다음, 아티팩트 특화 에이전트 (artifact-specialized agents)를 사용하여 소스 수준의 프로그램 의미론 (program semantics)과 충돌 특유의 커널 설정에 대해 반복적으로 추론합니다. 추론된 인과 관계는 구조화된 증거 그래프 (Evidence Graphs)로 점진적으로 구성되어, 정확한 결함 메서드 위치 파악 (faulty-method localization)과 인과적 설명을 가능하게 합니다. 우리는 실제 환경인 KGYM 벤치마크에서 KernelDiag를 평가했습니다. KernelDiag는 파일 및 메서드 수준 모두에서 최신 위치 파악 (localization) 방식들을 일관되게 능가하며, 명시적인 힌트가 없는 까다로운 설정에서도 Top@k 정확도에서 최대 4배 및 2배의 향상을 달িং하며 상당한 개선을 달성했습니다. 또한, 인간 및 LLM 보조 평가 모두에서 KernelDiag가 정확하고 일관되며 실행 가능한 진단 설명을 생성함을 보여주었습니다. 전반적으로, 본 연구는 저수준 진단 증거와 소스 수준의 인과 추론을 연결함으로써 자동화된 커널 근본 원인 진단의 토대를 마련합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv Codex (cs.SE)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기