From patchwork Tue Jun 20 09:39:50 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thierry Herbelot X-Patchwork-Id: 128833 X-Patchwork-Delegate: jerinj@marvell.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id D642842D06; Tue, 20 Jun 2023 11:40:06 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id C59D440EDF; Tue, 20 Jun 2023 11:40:06 +0200 (CEST) Received: from mail-wr1-f100.google.com (mail-wr1-f100.google.com [209.85.221.100]) by mails.dpdk.org (Postfix) with ESMTP id E6C674068E for ; Tue, 20 Jun 2023 11:40:04 +0200 (CEST) Received: by mail-wr1-f100.google.com with SMTP id ffacd0b85a97d-3113da5260dso1905280f8f.2 for ; Tue, 20 Jun 2023 02:40:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=6wind.com; s=google; t=1687254004; x=1689846004; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=h93/7AhWdcF8cLVDe+IYFTAvZ8aEO3GUE0VJnO0oAZE=; b=I2z8pFc+i/astPFkONd92DdOUqg8uT0dC5YCu50COOD9QdsaXxyrQIWvtoLfKbZQ1H OblIatG9rmYwEY3XTy8dXxyisdbUVp7/yCQKzOEYTGZNX8cXJGMjWbuIxetOsN+dR+oJ 5hOzSudP7PvcqpdQPgEc10BTrX/0Vpb6lATmha1WkWxj54AKHQTsY0uNCfbXD/Kiwe08 2TzM5SpmVii6MsHRrhnFxK0NEAMLNGdlGepUc3P1LK9Bgts/MG4ha/dFCuKRf5g57Hr5 wopjbLGRIE1N8BTeaShntTrmmy3Q7aWiosyN/D24BrPJVy0hLsKk1nAZ/TWVcdL2DFNi kGtA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687254004; x=1689846004; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=h93/7AhWdcF8cLVDe+IYFTAvZ8aEO3GUE0VJnO0oAZE=; b=M2EdJFPFhIHlSAg4g5OYwDQpgGPoJ0LW/D9ljGN7/gvGNsOV2dig7RSDdfAUtBH01m cO1F7zEQ6Qf9ByCnSvL163BsrQrZqWIflxPvYraTX/s00RR53ZthTdcNnHHEUN/X25IS GWHQInURoTO7okRKHxgsS4glbIc+wlI1tuiTedmmS6ykTRPTd40wqs3/+9vHzp0ahc3G 9Siy3Fe+hQbWZEfxodZ6Xj5rO7WQ/N5oa2geXFclWfxCWlhnPo8Q2OIVYSN+QkuP4Iff tOqfaXF1Lzfb+QDOe5iYe2hQcJhGmJtUUNJxZ7T+dboz4+okQmmw3clEhn5Fb4XOmX3E b7NQ== X-Gm-Message-State: AC+VfDzy0FbeYFpbRL+IAZgtsZnS2sac0YMP1A9/dan5OYOTAEnX+2fS Pb1u1l7GJwk1h1eWrjTeCqe9VZsoaaYRO4b0AUSEcPhEwi+WvGkkO1wW X-Google-Smtp-Source: ACHHUZ5gMnG8kU9a0DOsap2KF9Z8hLZxHVMmBTHcOVZ+3kb52MsKLP0SOt0cCRjTqdAJ1So3OpAveXgRe30A X-Received: by 2002:adf:e6c4:0:b0:30e:3ccf:d4b1 with SMTP id y4-20020adfe6c4000000b0030e3ccfd4b1mr7825070wrm.4.1687254004520; Tue, 20 Jun 2023 02:40:04 -0700 (PDT) Received: from smtpservice.6wind.com ([185.13.181.2]) by smtp-relay.gmail.com with ESMTP id i6-20020a5d5226000000b0030a98f61ec1sm225326wra.59.2023.06.20.02.40.04; Tue, 20 Jun 2023 02:40:04 -0700 (PDT) X-Relaying-Domain: 6wind.com Received: from localhost (vader.dev.6wind.com [10.17.1.39]) by smtpservice.6wind.com (Postfix) with ESMTP id 347D460012; Tue, 20 Jun 2023 11:40:04 +0200 (CEST) From: Thierry Herbelot To: dev@dpdk.org Cc: Thierry Herbelot , Thomas Monjalon , Nithin Dabilpuram , Satha Koteswara Rao Kottidi , Jerin Jacob Kollanukkaran Subject: [PATCH v2] common/cnxk/roc_npa: unlock mbox in error cases Date: Tue, 20 Jun 2023 11:39:50 +0200 Message-Id: <20230620093950.3127383-1-thierry.herbelot@6wind.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230620085134.3124796-1-thierry.herbelot@6wind.com> References: <20230620085134.3124796-1-thierry.herbelot@6wind.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org In npa_aura_pool_fini and in npa_aura_fini, Unlock mbox when an error is detected. Fixes: ea4d70cc4f0b46d5 ('common/cnxk: add NPA aura create/destroy ROC APIs') Signed-off-by: Thierry Herbelot --- V2: also patch npa_aura_pool_fini --- drivers/common/cnxk/roc_npa.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/drivers/common/cnxk/roc_npa.c b/drivers/common/cnxk/roc_npa.c index 377439c2baaf..cf5b24813532 100644 --- a/drivers/common/cnxk/roc_npa.c +++ b/drivers/common/cnxk/roc_npa.c @@ -197,8 +197,10 @@ npa_aura_pool_fini(struct mbox *m_box, uint32_t aura_id, uint64_t aura_handle) off = mbox->rx_start + pool_rsp->hdr.next_msgoff; aura_rsp = (struct npa_aq_enq_rsp *)((uintptr_t)mdev->mbase + off); - if (aura_rsp->hdr.rc != 0 || pool_rsp->hdr.rc != 0) - return NPA_ERR_AURA_POOL_FINI; + if (aura_rsp->hdr.rc != 0 || pool_rsp->hdr.rc != 0){ + rc = NPA_ERR_AURA_POOL_FINI; + goto exit; + } /* Sync NDC-NPA for LF */ ndc_req = mbox_alloc_msg_ndc_sync_op(mbox); @@ -245,8 +247,10 @@ npa_aura_fini(struct mbox *m_box, uint32_t aura_id) if (rc < 0) goto exit; - if (aura_rsp->hdr.rc != 0) - return NPA_ERR_AURA_POOL_FINI; + if (aura_rsp->hdr.rc != 0) { + rc = NPA_ERR_AURA_POOL_FINI; + goto exit; + } /* Sync NDC-NPA for LF */ ndc_req = mbox_alloc_msg_ndc_sync_op(mbox);