From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm0-f68.google.com (mail-wm0-f68.google.com [74.125.82.68]) by dpdk.org (Postfix) with ESMTP id 249461B51A for ; Mon, 6 Aug 2018 12:56:34 +0200 (CEST) Received: by mail-wm0-f68.google.com with SMTP id t25-v6so13786867wmi.3 for ; Mon, 06 Aug 2018 03:56:34 -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:in-reply-to:references; bh=auuBqQraI33QW54sJegV6Dpz4UMDgKUXQuc7tts6uLo=; b=LqiVDaHQFKYzRGbvNPr3k8KDD6FkpHuN3uwmx7qZ2rvGHyytV6qdisCt5nVOWcy4hF oTLJ8UXkY86L/WiQH4wg7QZvuxswxCGo4GtYcZmnhzKJ/ym/mWVTpICX6h/q4pY1EjdZ /cyZZTpkJ4fR7uC/IVdOTOG02+Wjqp2zwFEJJ4s7eQK+EYj4BSmUaCXUpSg9eU6Fjg4E kpyfsQhOs9tIWYcz5Yq40gyphxWrUuRsJojPOGTUHIGPzv6R+MMASGumYoUv1Iygnp14 bLYChJPh8rpTPFdrlRd/+6gx8uydV/VSIeBLRkjqiBuZ+uc4TJ8NkMMDI0z1+9TDF+Tb i3wg== 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; bh=auuBqQraI33QW54sJegV6Dpz4UMDgKUXQuc7tts6uLo=; b=ce+Qi0H1A2GdRyJVO8NpGGIsc4I5EYsl5PCSAlpcW0FqSyT687BlSCLh5TDiCJb2gl kOglD7NiPilDqrRieg1+arsiFBV2mUJz8MB3dza/W1F1SWW6KDlQ9Cjkl2AS+IrZaGAs 7e063DsqxNwBYyHEzT7JNOQQKf6WN1FPpOb4CtWD4M65k4VHUPrC/E7YxDac8qpLEpyv AG0/+M67OhItzY0tVir14OznHuhBS9Eu50/wGVE5DsYheij4fBbDDjZzXiXuomyAIHjG iqs+tWNGx/T2EcYOWRTVJeKkjKFHKpN4odKU+qJKE+HKiMFiFf2EVUSE+7jgM5V/yNDj VdnA== X-Gm-Message-State: AOUpUlEhRvFk1S4b7Wj+xizXl77XhCqAsYq1gfeSlZNubQVgA2AeAOik qNcJUK+H+JT0nVRehAfDy56Ywqu+ X-Google-Smtp-Source: AAOMgpdDkPCK6aMOaGV9p9WSwEZ6ECxNil+JZKonAbwWKz9k3Tc9aqD+XfyzRc24BzN7mffMOm3yFg== X-Received: by 2002:a1c:d946:: with SMTP id q67-v6mr11210743wmg.156.1533552993870; Mon, 06 Aug 2018 03:56:33 -0700 (PDT) Received: from localhost ([2a01:4b00:f419:6f00:8361:8946:ba2b:d556]) by smtp.gmail.com with ESMTPSA id j131-v6sm6728637wmb.35.2018.08.06.03.56.32 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 06 Aug 2018 03:56:32 -0700 (PDT) From: luca.boccassi@gmail.com To: Rasesh Mody Cc: dpdk stable Date: Mon, 6 Aug 2018 11:56:14 +0100 Message-Id: <20180806105619.24253-5-luca.boccassi@gmail.com> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20180806105619.24253-1-luca.boccassi@gmail.com> References: <20180727101748.30228-1-luca.boccassi@gmail.com> <20180806105619.24253-1-luca.boccassi@gmail.com> Subject: [dpdk-stable] patch 'net/qede/base: fix GRC attention callback' has been queued to LTS release 16.11.8 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Aug 2018 10:56:34 -0000 Hi, FYI, your patch has been queued to LTS release 16.11.8 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 08/08/18. So please shout if anyone has objections. Thanks. Luca Boccassi --- >>From beb1ecba673727d4e981ec91e27032d2f025df7a Mon Sep 17 00:00:00 2001 From: Rasesh Mody Date: Tue, 24 Jul 2018 15:18:43 -0700 Subject: [PATCH] net/qede/base: fix GRC attention callback [ upstream commit 538bcb378af5d1750a6831efeea4d9565a3267f0 ] Treat any attention which is not for timeout event as invalid and return status accordingly. The HW error handler logs and clears the HW attention. Without this fix we can see flood of GRC attentions. Fixes: e6051bd6b07d ("qede: add interrupt handling support") Signed-off-by: Rasesh Mody --- drivers/net/qede/base/ecore_int.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/drivers/net/qede/base/ecore_int.c b/drivers/net/qede/base/ecore_int.c index 207b01b9ae..8ddfdeef97 100644 --- a/drivers/net/qede/base/ecore_int.c +++ b/drivers/net/qede/base/ecore_int.c @@ -229,15 +229,19 @@ static const char *grc_timeout_attn_master_to_str(u8 master) static enum _ecore_status_t ecore_grc_attn_cb(struct ecore_hwfn *p_hwfn) { + enum _ecore_status_t rc = ECORE_SUCCESS; u32 tmp, tmp2; /* We've already cleared the timeout interrupt register, so we learn - * of interrupts via the validity register + * of interrupts via the validity register. + * Any attention which is not for a timeout event is treated as fatal. */ tmp = ecore_rd(p_hwfn, p_hwfn->p_dpc_ptt, GRC_REG_TIMEOUT_ATTN_ACCESS_VALID); - if (!(tmp & ECORE_GRC_ATTENTION_VALID_BIT)) + if (!(tmp & ECORE_GRC_ATTENTION_VALID_BIT)) { + rc = ECORE_INVAL; goto out; + } /* Read the GRC timeout information */ tmp = ecore_rd(p_hwfn, p_hwfn->p_dpc_ptt, @@ -261,11 +265,11 @@ static enum _ecore_status_t ecore_grc_attn_cb(struct ecore_hwfn *p_hwfn) (tmp2 & ECORE_GRC_ATTENTION_VF_MASK) >> ECORE_GRC_ATTENTION_VF_SHIFT); -out: - /* Regardles of anything else, clean the validity bit */ + /* Clean the validity bit */ ecore_wr(p_hwfn, p_hwfn->p_dpc_ptt, GRC_REG_TIMEOUT_ATTN_ACCESS_VALID, 0); - return ECORE_SUCCESS; +out: + return rc; } #define ECORE_PGLUE_ATTENTION_VALID (1 << 29) -- 2.18.0