From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 9F12EA04B6; Thu, 17 Sep 2020 07:31:35 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 1B06E1D550; Thu, 17 Sep 2020 07:31:00 +0200 (CEST) Received: from mail-lj1-f196.google.com (mail-lj1-f196.google.com [209.85.208.196]) by dpdk.org (Postfix) with ESMTP id 002941D540 for ; Thu, 17 Sep 2020 07:30:55 +0200 (CEST) Received: by mail-lj1-f196.google.com with SMTP id s205so887292lja.7 for ; Wed, 16 Sep 2020 22:30:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=semihalf-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=griwyDxyrsBF3QzlrybU5mtXYmQNSdktR2bBNHCizzk=; b=oLdFFx8BEDvk4Uz0Lk1+N1mZcwjM+MEh/jsVM/7iUvdkThQP3eREjOjBfhvvMbmmNp /DN2an/GkqoHzFkyeb4BlULcistJzbiarIK0UjeIjPly+/42LqEX6ZJY55mwUXiKDDKK 9ZlaFOWrBFUXH0jDLuhknzuPclEed59hiR9XiantjVOG1RSWafD0+F1MQYCrRGhkfYIo lowTjFOAd8v7nLbGYfhKN1MDK7hsJsPYI1TfagR52A5cvtxT0AsVa6AlB9coZNw/NZ1m G+ruBdk0BjBd7jIgrOFrwjN3Vg1OWwenygxN5SyhvCsqB9F0r5SJFWSsko+ca6kt88/g hGXw== 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:in-reply-to :references:mime-version:content-transfer-encoding; bh=griwyDxyrsBF3QzlrybU5mtXYmQNSdktR2bBNHCizzk=; b=ZwZKKZ8LT+BfqLpt3AZOXdpjYnHus/AVCKACqSQvcQQ05LffZ7Zjiy7c9hdqwKF5v9 Nqjnrlz7e1d9JTWzozp0/mo/FmgS4PPJKMI/m9kiRStkaKMu8MOlMmoc9WKgGW/qtz97 lAgWpKBwB4/GZHfRqQTvzTPqZTXliwb8jo035VmAJeZrmIINNIIqHBSo//w/HMZIZt8Y J0AsxtQKW+f/uWVsCt7FpF9KDeYTPfV+FULOKs4TkN2C72FZP1SUwL0Re3Q7dbwgeHVD mPX9uMOQbiCd+cpCCLb6tCJBWrQgDm4XaNO1jxuAv2M56b7nO8MWNYtEHmvpKjRw2+Vg 37Vw== X-Gm-Message-State: AOAM530msXh1yRL+mZoYLCbK7bZ1/2O4KH73D4eawx5v8ooDXZ3cgaE0 uo5umf1eeyTcr0K4cm0j3BCzCS56Xr5F4+m6 X-Google-Smtp-Source: ABdhPJxGw4yi+/x4rqqFmVVfgR1Psz7zG6y/w4t8JATqvyU2jX2fTAmqblMbaoqHVYI+c/gQ5yxUcw== X-Received: by 2002:a2e:7119:: with SMTP id m25mr10407129ljc.365.1600320655412; Wed, 16 Sep 2020 22:30:55 -0700 (PDT) Received: from mkPC.semihalf.local (193-106-246-138.noc.fibertech.net.pl. [193.106.246.138]) by smtp.gmail.com with ESMTPSA id j3sm5033686lfb.185.2020.09.16.22.30.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 16 Sep 2020 22:30:54 -0700 (PDT) From: Michal Krawczyk To: dev@dpdk.org Cc: gtzalik@amazon.com, igorch@amazon.com, Michal Krawczyk , stable@dpdk.org, Marcin Wojtas , Evgeny Schemeilin Date: Thu, 17 Sep 2020 07:30:20 +0200 Message-Id: <20200917053035.1889989-6-mk@semihalf.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200917053035.1889989-1-mk@semihalf.com> References: <20200917053035.1889989-1-mk@semihalf.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH 05/20] net/ena/base: fix release of wait event X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" The wait event is being accessed without making sure it the completion context exists. The check for that is just below, so it could be used for releasing wait even safely. Fixes: 3adcba9a8987 ("net/ena: update HAL to the newer version") Cc: stable@dpdk.org Signed-off-by: Michal Krawczyk Reviewed-by: Igor Chauskin Reviewed-by: Guy Tzalik --- drivers/net/ena/base/ena_com.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/net/ena/base/ena_com.c b/drivers/net/ena/base/ena_com.c index b4e54318c6..ce239ab164 100644 --- a/drivers/net/ena/base/ena_com.c +++ b/drivers/net/ena/base/ena_com.c @@ -1655,11 +1655,13 @@ void ena_com_admin_destroy(struct ena_com_dev *ena_dev) struct ena_com_aenq *aenq = &ena_dev->aenq; u16 size; - ENA_WAIT_EVENT_DESTROY(admin_queue->comp_ctx->wait_event); - if (admin_queue->comp_ctx) + if (admin_queue->comp_ctx) { + ENA_WAIT_EVENT_DESTROY(admin_queue->comp_ctx->wait_event); ENA_MEM_FREE(ena_dev->dmadev, admin_queue->comp_ctx, (admin_queue->q_depth * sizeof(struct ena_comp_ctx))); + } + admin_queue->comp_ctx = NULL; size = ADMIN_SQ_SIZE(admin_queue->q_depth); if (sq->entries) -- 2.25.1