From patchwork Sun Jul 11 16:15:01 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shubhanshu Saxena X-Patchwork-Id: 28883 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:bbc9:0:0:0:0:0 with SMTP id c9csp2220099ybk; Sun, 11 Jul 2021 09:15:26 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzOnWEVC8LhnqlbU0hP7mRo2U8odhLJ7mlMD278DzK5R8dZKo530my2f1BQ/qvCDz0oXevu X-Received: by 2002:a17:906:2752:: with SMTP id a18mr50836128ejd.458.1626020126439; Sun, 11 Jul 2021 09:15:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626020126; cv=none; d=google.com; s=arc-20160816; b=mYaizBz37RoQJeBoLvWumhh3Wdmngp+6U4iZLmLhJPQhZBUFZV7SyTVYadECpmMCiM iLVK+VqEiM5gyCT7xjAC5aVOu3na/ZeP7zHhw1Wtv9KHHedOfJ8j8PPQYgDSqFKBxdOx c1T3MgDtnI/ELRrcS5v0+XjjsQPRPy8frZvz1iYaG9CyGJU30BOzQLd8gsxFITUe3KHC Il9fspV088MpMa1PWZvPLXhxSMZi/4lJmJszk4gLXN0M2oSrKjh9vf13tcc7lAno6KUc InOX9YHPTXIa7af3yLasFhe3kJQcfmzlWnSzGMf8ulcP/T5/KMi8ximb8qCQxkZesgtZ X+BQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:message-id:date:to:from :dkim-signature:delivered-to; bh=IYFiZl98s5npkm7il5aKORcNGVgrwfK47+yH1LDMBro=; b=ADSdzSx6RhANfuNFJbv7ADAU2OFGbIcUswikG/f/qsgd82hWIHgzQ9/ADGd1imsR1L HSh/p+gpyo6Qp5w4l1JcFWs7cPsU57GJj/4Uv6b5WGwM8mP+a/EGH2Ltt9bbam47OKRb /YhFOp8fW9jFIsOEYqmU4LLZTvyWwpM2Q4Tau+XIkE2W8mAkuhkM+uabNNcWs3td1AXy hrPYU6JGGdRMseJujGgbdshrrAz6xedooTA5g+agV2lfhl2DosJsp0XN/T3MnAZAsT94 JTh5GacbytbPB881pEXtHwlt1r/xLUW04IIaSGzfPCayzeKCGCkr0kLZO76fYtxhbbW7 Mu1g== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20161025 header.b=Bkw+riub; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id gv16si3864033ejb.111.2021.07.11.09.15.25; Sun, 11 Jul 2021 09:15:26 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20161025 header.b=Bkw+riub; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 631CD6802C0; Sun, 11 Jul 2021 19:15:24 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pg1-f175.google.com (mail-pg1-f175.google.com [209.85.215.175]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E32BE6802C0 for ; Sun, 11 Jul 2021 19:15:17 +0300 (EEST) Received: by mail-pg1-f175.google.com with SMTP id s18so219658pgq.3 for ; Sun, 11 Jul 2021 09:15:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=hLvqZZIOx2Ei3MHlczTeSaVFUMYHC6k4syik8Gfr2ko=; b=Bkw+riubdI3ZbGYgieKChil8OfibC4yungm3QGqmoOkYj5aHxddRwBw08xH3aHEf+n tcm618+mB8vBMqGUx+/Ww5uAD3yn6eJWXrFYdBxqW+JxB1H2erMQ+TMezTVFX/LBuLQ9 AzAS9UzURqq/Ib3cCT6IV98UhGXUrILjfD8GZ+i5TSJ2kpcDUyaEr7OOxILcZh7EKMO2 xYfdJVyl6ipDO0DvxlUBKOmQhXWM9QCd2fZRIu4vi/O2Vh1u+Eh8NuWHV8/bOstt4VBy bjoNUSZMxnPkVfCJK5+577PydJWarwOXNKshysZ3HwB3meAtbSbgQ4L8X9lV4gWv8IBr fPYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=hLvqZZIOx2Ei3MHlczTeSaVFUMYHC6k4syik8Gfr2ko=; b=Sw4Y/3E0wHjL9PqQpOOYh2D4bmSM/xRaZAb9LO4I5mPqQDCQ7gmx6gE908oTycZT7o fGn1van6qpbxwbPx5bmGBi3oMeykk0tunfs+YB5DqipfQTt8BTit0whXixfl3LcD0dde tJM6YH2OESszyiMQWWk3SARgpH1OZSWswFxwPDBWkh875izdUaFBpFQ4rjeeQyB8Ym6y RRpgLoKd4aV8gnQvE2ro4YGMU9+fgFxsXFvPpQiYqVp2J/dTU9XqvFY9CGjTzi+Mx9GZ +hzSBXXvJiij3rx6B9uKb3RBrdTsXQM1vQyjsfGYoo701AtKihAlzVGIvOqkxtOkObm3 QJfA== X-Gm-Message-State: AOAM531uN+vOeC2SxsefjB/sX8myiYBRbnSQrV6r95HqNlqa1+dDuEtI XIc0oYJ10qppnkmk+xMEx1I9aRIjADKUtw== X-Received: by 2002:a63:e211:: with SMTP id q17mr26923763pgh.363.1626020116011; Sun, 11 Jul 2021 09:15:16 -0700 (PDT) Received: from localhost.localdomain ([103.157.221.209]) by smtp.googlemail.com with ESMTPSA id j13sm9982617pjl.1.2021.07.11.09.15.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 11 Jul 2021 09:15:15 -0700 (PDT) From: Shubhanshu Saxena To: ffmpeg-devel@ffmpeg.org Date: Sun, 11 Jul 2021 21:45:01 +0530 Message-Id: <20210711161502.53155-1-shubhanshu.e01@gmail.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 1/2] lavfi/dnn_backend_openvino.c: Fix Memory Leak in execute_model_ov X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Shubhanshu Saxena Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: ZR9o1N3YNReJ Content-Length: 1912 In cases where the execution inside the function execute_model_ov fails, the OVRequestItem must be pushed back to the request_queue before returning the error. In case pushing back fails, release the allocated memory. Signed-off-by: Shubhanshu Saxena --- libavfilter/dnn/dnn_backend_openvino.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/libavfilter/dnn/dnn_backend_openvino.c b/libavfilter/dnn/dnn_backend_openvino.c index f34b8150f5..b340859c12 100644 --- a/libavfilter/dnn/dnn_backend_openvino.c +++ b/libavfilter/dnn/dnn_backend_openvino.c @@ -432,6 +432,8 @@ static DNNReturnType execute_model_ov(RequestItem *request, Queue *inferenceq) OVModel *ov_model; if (ff_queue_size(inferenceq) == 0) { + ie_infer_request_free(&request->infer_request); + av_freep(&request); return DNN_SUCCESS; } @@ -443,7 +445,7 @@ static DNNReturnType execute_model_ov(RequestItem *request, Queue *inferenceq) if (task->async) { ret = fill_model_input_ov(ov_model, request); if (ret != DNN_SUCCESS) { - return ret; + goto err; } status = ie_infer_set_completion_callback(request->infer_request, &request->callback); if (status != OK) { @@ -459,7 +461,7 @@ static DNNReturnType execute_model_ov(RequestItem *request, Queue *inferenceq) } else { ret = fill_model_input_ov(ov_model, request); if (ret != DNN_SUCCESS) { - return ret; + goto err; } status = ie_infer_request_infer(request->infer_request); if (status != OK) {