Explorar o código

ggml : fix possible buffer use after free in sched reserve (#9930)

Diego Devesa hai 1 ano
pai
achega
eda7e1d4f5
Modificáronse 1 ficheiros con 2 adicións e 1 borrados
  1. 2 1
      ggml/src/ggml-backend.cpp

+ 2 - 1
ggml/src/ggml-backend.cpp

@@ -1538,12 +1538,13 @@ bool ggml_backend_sched_reserve(ggml_backend_sched_t sched, struct ggml_cgraph *
 
     ggml_backend_sched_split_graph(sched, measure_graph);
 
+    ggml_backend_sched_synchronize(sched);
+
     if (!ggml_gallocr_reserve_n(sched->galloc, &sched->graph, sched->node_backend_ids, sched->leaf_backend_ids)) {
         return false;
     }
 
     ggml_backend_sched_reset(sched);
-    ggml_backend_sched_synchronize(sched);
 
     return true;
 }