摘要
arXiv:2504.20412v1 交叉公告类型
摘要:代码大型语言模型(LLMs)在众多软件工程任务中展示了令人印象深刻的性能。特别是在代码修复任务方面,它们展现了非凡的实用性。然而,用来评估代码LLM性能的常见基准往往局限于小规模设置。在这项工作中,我们基于kGym,该平台提供了用于系统级Linux内核漏洞的基准并提供了一个在Linux内核上运行实验的平台。
本文介绍了CrashFixer,这是第一个适用于Linux内核漏洞的基于LLM的软件修复代理。受内核开发人员典型工作流程的启发,我们确定了一位专家开发人员解决内核崩溃时所依赖的关键能力。利用这一点作为指导,我们重新审视了kGym平台,并指出了在Linux内核规模(50K文件和20M代码行数)上运行基于LLM的代理所需的关键系统改进。我们通过扩展kGym来实现这些变更,创建了一个改进的平台——称为kGymSuite,并将开源。最后,本文介绍了各种修复复杂内核漏洞策略的评估,并展示了在复杂系统如Linux内核中明确生成假设以尝试修复漏洞的价值。我们还对CrashFixer的能力进行了评估,针对仍存在的漏洞找到了至少两个被认为有可能解决报告漏洞的补丁建议。