]> git.sesse.net Git - ffmpeg/commitdiff
dnn/native: unify error return to DNN_ERROR
authorTing Fu <ting.fu@intel.com>
Tue, 25 Aug 2020 03:47:49 +0000 (11:47 +0800)
committerGuo, Yejun <yejun.guo@intel.com>
Tue, 25 Aug 2020 05:03:46 +0000 (13:03 +0800)
Unify all error return as DNN_ERROR, in order to cease model executing
when return error in ff_dnn_execute_model_native layer_func.pf_exec

Signed-off-by: Ting Fu <ting.fu@intel.com>
libavfilter/dnn/dnn_backend_native.c
libavfilter/dnn/dnn_backend_native_layer_avgpool.c
libavfilter/dnn/dnn_backend_native_layer_conv2d.c
libavfilter/dnn/dnn_backend_native_layer_depth2space.c
libavfilter/dnn/dnn_backend_native_layer_mathbinary.c
libavfilter/dnn/dnn_backend_native_layer_mathunary.c
libavfilter/dnn/dnn_backend_native_layer_pad.c

index 65a56704d386c1d919b129325d892df0ca9f2f68..436ce938daa054277a37070f3bf036c4498440da 100644 (file)
@@ -246,10 +246,12 @@ DNNReturnType ff_dnn_execute_model_native(const DNNModel *model, DNNData *output
 
     for (layer = 0; layer < native_model->layers_num; ++layer){
         DNNLayerType layer_type = native_model->layers[layer].type;
-        layer_funcs[layer_type].pf_exec(native_model->operands,
-                                        native_model->layers[layer].input_operand_indexes,
-                                        native_model->layers[layer].output_operand_index,
-                                        native_model->layers[layer].params);
+        if (layer_funcs[layer_type].pf_exec(native_model->operands,
+                                            native_model->layers[layer].input_operand_indexes,
+                                            native_model->layers[layer].output_operand_index,
+                                            native_model->layers[layer].params) == DNN_ERROR) {
+            return DNN_ERROR;
+        }
     }
 
     for (uint32_t i = 0; i < nb_output; ++i) {
index 8d4d8db98cc298857e9e902a54fe950fd6d54076..bd7bdb4c97a6ca4b566cacda33193d54cc636ff6 100644 (file)
@@ -109,7 +109,7 @@ int dnn_execute_layer_avg_pool(DnnOperand *operands, const int32_t *input_operan
     output_operand->length = calculate_operand_data_length(output_operand);
     output_operand->data = av_realloc(output_operand->data, output_operand->length);
     if (!output_operand->data)
-        return -1;
+        return DNN_ERROR;
     output = output_operand->data;
 
     for (int y = 0; y < height_end; y += kernel_strides) {
index a2202e40738d3a8975ad66addc79419ad0cbb8ae..25356901c28932ebcf65390204c2df096867e762 100644 (file)
@@ -114,10 +114,10 @@ int dnn_execute_layer_conv2d(DnnOperand *operands, const int32_t *input_operand_
     output_operand->data_type = operands[input_operand_index].data_type;
     output_operand->length = calculate_operand_data_length(output_operand);
     if (output_operand->length <= 0)
-        return -1;
+        return DNN_ERROR;
     output_operand->data = av_realloc(output_operand->data, output_operand->length);
     if (!output_operand->data)
-        return -1;
+        return DNN_ERROR;
     output = output_operand->data;
 
     av_assert0(channel == conv_params->input_num);
index 2c8bddf23dae95b63676d79ae417b30369b26427..5a61025f7ae13c3113217641254b39f27cd95523 100644 (file)
@@ -76,10 +76,10 @@ int dnn_execute_layer_depth2space(DnnOperand *operands, const int32_t *input_ope
     output_operand->data_type = operands[input_operand_index].data_type;
     output_operand->length = calculate_operand_data_length(output_operand);
     if (output_operand->length <= 0)
-        return -1;
+        return DNN_ERROR;
     output_operand->data = av_realloc(output_operand->data, output_operand->length);
     if (!output_operand->data)
-        return -1;
+        return DNN_ERROR;
     output = output_operand->data;
 
     for (y = 0; y < height; ++y){
index 7d81694288be5f3833afaf4fbf95499480fe4ebc..6ec1f08e9f1ea771b6733f8db3898094489bfde3 100644 (file)
@@ -186,6 +186,6 @@ int dnn_execute_layer_math_binary(DnnOperand *operands, const int32_t *input_ope
         math_binary_not_commutative(floormod, params, input, output, operands, input_operand_indexes);
         return 0;
     default:
-        return -1;
+        return DNN_ERROR;
     }
 }
index 58ee0e9d3d48e0d1c3fe7c20ba8fd7772e92d759..57bbd9d3e8df2c4f849b9a659b73ea3ff66cefd8 100644 (file)
@@ -143,6 +143,6 @@ int dnn_execute_layer_math_unary(DnnOperand *operands, const int32_t *input_oper
             dst[i] = round(src[i]);
         return 0;
     default:
-        return -1;
+        return DNN_ERROR;
     }
 }
index feaab001e897bcee104dde141b76a544951cfdec..5452d22878f3467d268aba6252e06369ff753cb8 100644 (file)
@@ -112,10 +112,10 @@ int dnn_execute_layer_pad(DnnOperand *operands, const int32_t *input_operand_ind
     output_operand->data_type = operands[input_operand_index].data_type;
     output_operand->length = calculate_operand_data_length(output_operand);
     if (output_operand->length <= 0)
-        return -1;
+        return DNN_ERROR;
     output_operand->data = av_realloc(output_operand->data, output_operand->length);
     if (!output_operand->data)
-        return -1;
+        return DNN_ERROR;
     output = output_operand->data;
 
     // copy the original data