开源llama.cpp Releases·原文 2026年10月5日

llama.cpp发布b11393:修复chat-peg-parser的use-after-free

该版本修复了TOOL_ID节点在TOOL_CLOSE之后到达时,current_tool仍指向已销毁的pending_tool_call所导致的内存错误,并同步更新各平台预编译包。

AI解读:llama.cpp发布b11393版本,主要变更来自PR #29942,涉及chat-peg-parser模块。

修复方式是在reset时清除该指针,发布说明称此为“Clear the pointer on reset”。

本次发布同时提供了macOS/iOS、Linux、Android、Windows等平台的预编译包,Linux和Windows中包含CUDA 12、CUDA 13、Vulkan、OpenVINO、SYCL、ROCm 10.0等不同后端版本。

openEuler与macOS Apple Silicon的KleidiAI版本标注为DISABLED。

修复由提交说明描述,属于代码层面的指针生命周期修正;来源未给出触发该问题的具体输入条件、受影响版本范围或外部复现数据。

llama.cpp发布b11393。根据发布说明,该版本包含一项来自PR #29942 的修复,提交信息为“chat-peg-parser : clear current_tool when pending_tool_call is reset”。

说明称,当TOOL_ID节点在TOOL_CLOSE之后到达时,代码会经由current_tool写入,而该指针仍指向刚被销毁的pending_tool_call可选对象,造成use-after-free,随后又对id缓冲区执行第二次free。修复做法是在reset时清除该指针。

修复内容与触发路径

发布说明把问题定位在chat-peg-parser:TOOL_ID节点在TOOL_CLOSE之后到达时写入current_tool,而该指针未随pending_tool_call的重置而清空,指向已销毁对象。后续还发生id缓冲区被二次释放。

对应的改动只有一句描述:在reset时清除指针。来源未说明该问题影响哪些模型格式、工具调用配置或历史版本,也未提供触发所需的最小输入。

  • 问题模块:chat-peg-parser
  • 触发条件(按提交说明):TOOL_ID节点在TOOL_CLOSE之后到达
  • 后果(按提交说明):use-after-free,以及对id缓冲区的二次free
  • 修复:pending_tool_call重置时清除current_tool指针
  • PR编号:#29942

随版本提供的构建包

b11393的发布页列出了各平台预编译产物。macOS/iOS方向提供Apple Silicon(arm64)、Intel(x64)与iOS XCFramework,其中Apple Silicon的KleidiAI版本标注为DISABLED。

Linux方向提供Ubuntu x64/arm64/s390x的CPU包,以及Vulkan、CUDA 12、CUDA 13、ROCm 10.0、OpenVINO、SYCL FP32/FP16等后端包;另有面向Snapdragon的Linux arm64包,涵盖CPU、Adreno GPU与Hexagon NPU。

Android提供arm64 CPU和Snapdragon包;Windows提供x64/arm64 CPU、OpenCL Adreno、CUDA 12、CUDA 13、Vulkan、OpenVINO、SYCL、ROCm 10.0等版本。openEuler的x86与aarch64条目同样标注为DISABLED。

  • macOS/iOS:Apple Silicon arm64、Intel x64、iOS XCFramework;KleidiAI版DISABLED
  • Linux:Ubuntu x64/arm64/s390x CPU,以及Vulkan、CUDA 12/13、ROCm 10.0、OpenVINO、SYCL FP32/FP16
  • Linux arm64 Snapdragon:CPU、Adreno GPU、Hexagon NPU
  • Android:arm64 CPU,以及Snapdragon CPU/Adreno GPU/Hexagon NPU
  • Windows:x64/arm64 CPU、OpenCL Adreno、CUDA 12/13、Vulkan、OpenVINO、SYCL、ROCm 10.0
  • openEuler:x86与aarch64条目标注DISABLED

信息来源

llama.cpp Releases原始来源