From 5c31f9b2a7a942e86f01196cb82bab499bc7a261 Mon Sep 17 00:00:00 2001 From: Aaron Teo Date: Sat, 6 Sep 2025 20:52:30 +0800 Subject: [PATCH] ggml-zdnn: attempt at fixing sigsegv Signed-off-by: Aaron Teo --- ggml/src/ggml-zdnn/ggml-zdnn.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/ggml/src/ggml-zdnn/ggml-zdnn.cpp b/ggml/src/ggml-zdnn/ggml-zdnn.cpp index ff23c4b5eb..b5807fe600 100644 --- a/ggml/src/ggml-zdnn/ggml-zdnn.cpp +++ b/ggml/src/ggml-zdnn/ggml-zdnn.cpp @@ -374,8 +374,6 @@ static void ggml_backend_zdnn_buffer_free_buffer(ggml_backend_buffer_t buffer) { if (bias->ztensor.buffer != NULL && bias->ztensor.is_transformed) { ZDNN_CHECK(zdnn_free_ztensor_buffer(&bias->ztensor)); } - - free(bias->data); delete bias; } } @@ -408,9 +406,6 @@ static enum ggml_status ggml_backend_zdnn_buffer_init_tensor(ggml_backend_buffer ggml_zdnn_init_tensor(zdnn_buffer.get(), tensor); tensor->extra = zdnn_buffer.get(); - ctx->buffers.push_back(std::move(zdnn_buffer)); - ctx->n_buffers++; - switch (tensor->op) { case GGML_OP_MUL_MAT: { @@ -431,8 +426,13 @@ static enum ggml_status ggml_backend_zdnn_buffer_init_tensor(ggml_backend_buffer ctx->buffers.push_back(std::move(zdnn_bias_buffer)); ctx->n_buffers++; } break; + default: + break; } + ctx->buffers.push_back(std::move(zdnn_buffer)); + ctx->n_buffers++; + // GGML_LOG_INFO("%s: initialised tensor '%s' in buffer %d, size = %8.2f MiB\n", // __func__, tensor->name, buffer_idx, tsize);