Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package llamacpp for openSUSE:Factory 
checked in at 2026-09-08 16:58:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/llamacpp (Old)
 and      /work/SRC/openSUSE:Factory/.llamacpp.new.1265 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "llamacpp"

Tue Sep  8 16:58:19 2026 rev:34 rq:1376340 version:0.4.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/llamacpp/llamacpp.changes        2026-08-05 
17:49:35.608350772 +0200
+++ /work/SRC/openSUSE:Factory/.llamacpp.new.1265/llamacpp.changes      
2026-09-08 17:02:00.023707917 +0200
@@ -1,0 +2,90 @@
+Mon Sep  7 13:10:00 UTC 2026 - Robert Munteanu <[email protected]>
+
+- Update to version 0.4.0
+  * Initial Qwen3.8-Flash-Next and NVIDIA Nemotron-3-Puzzle support.
+  * Add on-demand tensor reading, per-slot server context limits, and
+    video input options.
+  * GGML updated to 0.23.0 with sparse flash attention, asynchronous
+    backend APIs, and Apple RDMA transport.
+  * Improve CUDA, Vulkan, Metal, SYCL, OpenCL, and other accelerator
+    backends.
+  * Include the matching b10809 Web UI asset.
+- Package switched to semantic versioning
+
+-------------------------------------------------------------------
+Wed Sep 2 11:15:38 UTC 2026 - Eyad Issa <[email protected]>
+
+- Add fix-negative-top-n.patch for CVE-2026-52132 (bsc#1278079):
+  reject negative top_n values in the reranking endpoint
+
+-------------------------------------------------------------------
+Sun Aug 30 22:39:08 UTC 2026 - Eyad Issa <[email protected]>
+
+- Enable Leap 15.7 builds with GCC 13
+- Disable unavailable OpenCL and OpenVINO backends on Leap 15.7
+
+-------------------------------------------------------------------
+Sun Aug 30 22:16:18 UTC 2026 - Eyad Issa <[email protected]>
+
+- Add skip-sme-variants-when-unsupported.patch to skip SME CPU variants
+  when unsupported, allowing aarch64 builds on Leap 16.0 with GCC 13
+
+-------------------------------------------------------------------
+Sun Aug 30 22:09:17 UTC 2026 - Eyad Issa <[email protected]>
+
+- Explicitly select GCC 16 on aarch64 so SME CPU variants build
+
+-------------------------------------------------------------------
+Thu Aug 28 18:01:41 UTC 2026 - Robert Munteanu <[email protected]>
+
+- Update to version 10676
+  * ggml bumped to 0.22.0, llama.cpp bumped to 0.3.0
+  * New model support: MiniMaxText01, MiniMaxM1, BailingMoE3,
+    Kimi-K3 text, Nanbeige 4.2 3B, Qwen3.8-Flash-Next (qwen4exp),
+    DSpark speculator checkpoints, GLM-4.5-Air MTP.
+  * Vulkan: tiled transpose for 0<->2 permuted CONT, coopmat1
+    SHMEM_STRIDE_PAD/APPLY_SLM_A_RESHAPE for Intel Xe, hoisting
+    support for row IDs and expert count, cross_entropy_loss op.
+  * Metal: per-op source split with parallel compile, per-device
+    tuned flash-attn vec (M4, M4 Pro, M3 Max, M5, M5 Pro),
+    chunked SSD MMA for Mamba-2 prefill, dequantize q8_0 using
+    packed types, null-check buffer alloc fix, memory leak fix.
+  * CUDA: MMVQ nwarps=8 for bs=1 dense models on DGX Spark,
+    unblock mmq for MoE on sm_60.
+  * SYCL: fused mul_mat(gate)+mul_mat(up)+GLU for q4_K dense FFN,
+    OPT_STEP_ADAMW/OPT_STEP_SGD ops, TILE for quantized KV decode
+    on BMG, fix thread/block count in quantized cpy kernel.
+  * OpenCL: fix WAR race in generic FA tile kernels when WG spans
+    subgroups, add bin kernels for MoE GEMM (q4_0/q8_1, mxfp4).
+  * WebGPU: mulmat with overlapping src0/src1 (for MiniMax-01),
+    fix infinity handling in ARGSORT and TOP_K.
+  * RPC: implement event and async backend APIs, support Apple
+    RDMA as transport.
+  * Hexagon: support for multi-NPU devices (IQ9, IQ10) and fully
+    async backend, HTP unary ops for ABS and LOG.
+  * Server: re-designed yield_to_queue thread model, add
+    ctx-per-slot (--kv-unified-per-slot), dedup-cache-models
+    preset option, dedup-cache-models, and reject prefilled
+    assistant messages with tool calls.
+  * Common: migrate deprecated --mmap/--no-mmap to --load-mode,
+    support --models-dir loading MTP assistant models, share
+    thread pools when n_threads differ.
+  * Quantization: optimise memory usage by evicting weights after
+    processing each layer, cap working memory size.
+  * UI: stores and services consolidation refactor, dialog-based
+    settings/MCP views, browser get_info tool, API key field
+    masking, move get_datetime tool to frontend, read structured-
+    Content from MCP tool result, alphabetical enum member ordering.
+  * Fixes: conv_transpose_2d for multiple batches, various mtmd
+    fixes (Granite4 Vision, LFM2 tiling threshold, video moov
+    atom, sha256 input hashing), grammar char class hyphen,
+    unicode collapsed symbol class.
+  * Vendor updates: cpp-httplib to 0.53.1, BoringSSL to
+    0.20260813.0.
+  * KleidiAI: reworked build system/integration.
+  * OpenVINO: updated to 2026.3.1, whisper.cpp support,
+    Qwen3.5 on NPU, new ops.
+  * Full commit log:
+    https://github.com/ggml-org/llama.cpp/compare/b10154...b10676
+
+-------------------------------------------------------------------

Old:
----
  llama-b10154-ui.tar.gz
  llamacpp-10154.tar.gz

New:
----
  fix-negative-top-n.patch
  llama-b10809-ui.tar.gz
  llamacpp-0.4.0.tar.gz
  skip-sme-variants-when-unsupported.patch

----------(New B)----------
  New:
- Add fix-negative-top-n.patch for CVE-2026-52132 (bsc#1278079):
  reject negative top_n values in the reranking endpoint
  New:
- Add skip-sme-variants-when-unsupported.patch to skip SME CPU variants
  when unsupported, allowing aarch64 builds on Leap 16.0 with GCC 13
----------(New E)----------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ llamacpp.spec ++++++
--- /var/tmp/diff_new_pack.AndU0t/_old  2026-09-08 17:02:01.097752811 +0200
+++ /var/tmp/diff_new_pack.AndU0t/_new  2026-09-08 17:02:01.099752894 +0200
@@ -18,44 +18,62 @@
 
 
 %global backend_dir %{_libdir}/ggml
+%global upstream_build 10809
 
-%global llama_sover        0.0.%{version}
+%global llama_sover        %{version}
 %global llama_sover_suffix 0
 
-%global mtmd_sover         0.0.%{version}
+%global mtmd_sover         %{llama_sover}
 %global mtmd_sover_suffix  0
 
-%global ggml_sover         0.17.0
+%global ggml_sover         0.23.0
 %global ggml_sover_suffix  0
 
+%if 0%{?suse_version} == 1500
+%bcond_with opencl
+%bcond_with openvino
+%else
+%bcond_without opencl
 %ifarch x86_64 aarch64
 %bcond_without openvino
 %else
 %bcond_with openvino
 %endif
+%endif
 
 Name:           llamacpp
-Version:        10154
+Version:        0.4.0
 Release:        0
 Summary:        Inference of Meta's LLaMA model (and others) in pure C/C++
 License:        MIT
 URL:            https://github.com/ggml-org/llama.cpp
-Source:         %{URL}/archive/b%{version}/%{name}-%{version}.tar.gz
-Source1:        
%{URL}/releases/download/b%{version}/llama-b%{version}-ui.tar.gz
+Source:         %{URL}/archive/refs/tags/v%{version}/%{name}-%{version}.tar.gz
+Source1:        
%{URL}/releases/download/b%{upstream_build}/llama-b%{upstream_build}-ui.tar.gz
+Patch0:         skip-sme-variants-when-unsupported.patch
+Patch1:         fix-negative-top-n.patch
 BuildRequires:  cmake >= 3.14
-# Newer llama.cpp enables SME, found in ARMv9.2. Only gcc>=16 knows about SME
+%if 0%{?suse_version} == 1500
+BuildRequires:  gcc13-c++
+%else
 %ifarch aarch64
+%if 0%{?suse_version} >= 1610
 BuildRequires:  gcc16-c++
 %else
 BuildRequires:  gcc-c++
 %endif
+%else
+BuildRequires:  gcc-c++
+%endif
+%endif
 BuildRequires:  git
 BuildRequires:  ninja
 BuildRequires:  pkgconfig
 BuildRequires:  shaderc
 BuildRequires:  spirv-headers
+%if %{with opencl}
 BuildRequires:  pkgconfig(OpenCL)
 BuildRequires:  pkgconfig(OpenCL-CLHPP)
+%endif
 BuildRequires:  pkgconfig(libcurl)
 %if %{with openvino}
 BuildRequires:  pkgconfig(openvino)
@@ -104,7 +122,9 @@
 %package -n libggml%{ggml_sover_suffix}
 Summary:        A tensor library for C++
 Requires:       libggml-cpu
+%if %{with opencl}
 Recommends:     libggml-opencl
+%endif
 Recommends:     libggml-vulkan
 
 %description -n libggml%{ggml_sover_suffix}
@@ -138,6 +158,7 @@
 
 This package includes the Vulkan backend for ggml.
 
+%if %{with opencl}
 %package -n libggml-opencl
 Summary:        A tensor library for C++ (OpenCL backend)
 
@@ -146,7 +167,9 @@
 and WhisperCpp projects.
 
 This package includes the OpenCL backend for ggml.
+%endif
 
+%if %{with openvino}
 %package -n libggml-openvino
 Summary:        A tensor library for C++ (OpenVINO backend)
 
@@ -155,6 +178,7 @@
 and WhisperCpp projects.
 
 This package includes the OpenVINO backend for ggml.
+%endif
 
 %package -n ggml-devel
 Summary:        Development files for ggml
@@ -195,7 +219,7 @@
 %ldconfig_scriptlets -n libmtmd%{mtmd_sover_suffix}
 
 %prep
-%autosetup -p1 -n llama.cpp-b%{version}
+%autosetup -p1 -n llama.cpp-%{version}
 mkdir -p tools/ui/dist
 tar -xzf %{SOURCE1} --strip-components=1 -C tools/ui/dist
 
@@ -204,6 +228,18 @@
 %define _lto_cflags %{nil}
 %define __builder ninja
 
+%if 0%{?suse_version} == 1500
+export CC=gcc-13
+export CXX=g++-13
+%else
+%ifarch aarch64
+%if 0%{?suse_version} >= 1610
+export CC=gcc-16
+export CXX=g++-16
+%endif
+%endif
+%endif
+
 mkdir -p %{_libdir}
 
 %cmake \
@@ -216,15 +252,20 @@
     -DGGML_CPU=ON \
     -DGGML_CPU_ALL_VARIANTS=ON \
     -DGGML_VULKAN=ON \
+%if %{with opencl}
     -DGGML_OPENCL=ON \
+%else
+    -DGGML_OPENCL=OFF \
+%endif
 %if %{with openvino}
     -DGGML_OPENVINO=ON \
 %endif
     -DGGML_BACKEND_DL=ON \
     -DGGML_BACKEND_DIR="%{backend_dir}" \
     -DGGML_OPENCL_USE_ADRENO_KERNELS=OFF \
-    -DLLAMA_BUILD_NUMBER=%{version} \
-    -DLLAMA_VERSION="0.0.%{version}" \
+    -DLLAMA_BUILD_IS_DEV=OFF \
+    -DLLAMA_BUILD_NUMBER=%{upstream_build} \
+    -DLLAMA_VERSION="%{version}" \
     %{nil}
 
 %cmake_build
@@ -289,10 +330,12 @@
 %dir %{backend_dir}
 %{backend_dir}/libggml-vulkan.so
 
+%if %{with opencl}
 %files -n libggml-opencl
 %license LICENSE
 %dir %{backend_dir}
 %{backend_dir}/libggml-opencl.so
+%endif
 
 %if %{with openvino}
 %files -n libggml-openvino

++++++ fix-negative-top-n.patch ++++++
From: Eyad Issa <[email protected]>
Date: Wed, 2 Sep 2026 00:00:00 +0200
Subject: [PATCH] server: reject negative rerank top_n

Validate top_n before queuing rerank work. A negative value passed to
std::vector::resize() is converted to a very large size_t and can raise
std::bad_alloc.

diff --git a/tools/server/server-common.cpp b/tools/server/server-common.cpp
--- a/tools/server/server-common.cpp
+++ b/tools/server/server-common.cpp
@@ -1478,1 +1478,1 @@
-    elements.resize(std::min(top_n, (int)elements.size()));
+    elements.resize(std::min(std::max(top_n, 0), (int)elements.size()));
diff --git a/tools/server/server-context.cpp b/tools/server/server-context.cpp
--- a/tools/server/server-context.cpp
+++ b/tools/server/server-context.cpp
@@ -5153,1 +5153,5 @@
-        int top_n = json_value(body, "top_n", (int)documents.size());
+        int top_n = json_value(body, "top_n", (int)documents.size());
+        if (top_n < 0) {
+            res->error(format_error_response("\"top_n\" must be non-negative", 
ERROR_TYPE_INVALID_REQUEST));
+            return res;
+        }

++++++ llama-b10154-ui.tar.gz -> llama-b10809-ui.tar.gz ++++++
++++ 7555 lines of diff (skipped)

++++++ llamacpp-10154.tar.gz -> llamacpp-0.4.0.tar.gz ++++++
/work/SRC/openSUSE:Factory/llamacpp/llamacpp-10154.tar.gz 
/work/SRC/openSUSE:Factory/.llamacpp.new.1265/llamacpp-0.4.0.tar.gz differ: 
char 13, line 1

++++++ skip-sme-variants-when-unsupported.patch ++++++
From: Eyad Issa <[email protected]>
Subject: ggml: skip SME CPU variants when the compiler lacks SME support

GCC only gained support for the AArch64 +sme architecture modifier in
version 14.  Keep the other optimized ARM variants available when building
with an older compiler.

---
 ggml/src/CMakeLists.txt | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/ggml/src/CMakeLists.txt b/ggml/src/CMakeLists.txt
index 6283fbcec..c017927f1 100644
--- a/ggml/src/CMakeLists.txt
+++ b/ggml/src/CMakeLists.txt
@@ -525,8 +525,14 @@ if (GGML_CPU_ALL_VARIANTS)
             ggml_add_cpu_backend_variant(armv8.2_3    DOTPROD 
FP16_VECTOR_ARITHMETIC SVE)
             ggml_add_cpu_backend_variant(armv8.6_1    DOTPROD 
FP16_VECTOR_ARITHMETIC SVE MATMUL_INT8)
             ggml_add_cpu_backend_variant(armv8.6_2    DOTPROD 
FP16_VECTOR_ARITHMETIC SVE MATMUL_INT8 SVE2)
-            ggml_add_cpu_backend_variant(armv9.2_1    DOTPROD 
FP16_VECTOR_ARITHMETIC SVE MATMUL_INT8 SME)
-            ggml_add_cpu_backend_variant(armv9.2_2    DOTPROD 
FP16_VECTOR_ARITHMETIC SVE MATMUL_INT8 SVE2 SME)
+            include(CheckCXXCompilerFlag)
+            check_cxx_compiler_flag("-march=armv9.2-a+sme" 
GGML_COMPILER_SUPPORTS_SME)
+            if (GGML_COMPILER_SUPPORTS_SME)
+                ggml_add_cpu_backend_variant(armv9.2_1 DOTPROD 
FP16_VECTOR_ARITHMETIC SVE MATMUL_INT8 SME)
+                ggml_add_cpu_backend_variant(armv9.2_2 DOTPROD 
FP16_VECTOR_ARITHMETIC SVE MATMUL_INT8 SVE2 SME)
+            else()
+                message(STATUS "Skipping ARM SME CPU variants: compiler does 
not support SME")
+            endif()
         elseif (CMAKE_SYSTEM_NAME MATCHES "Android")
             # Android-specific backends with SoC-compatible feature sets
             ggml_add_cpu_backend_variant(android_armv8.0_1)
-- 
2.53.0

Reply via email to