Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp1333257imm; Thu, 23 Aug 2018 01:00:05 -0700 (PDT) X-Google-Smtp-Source: ANB0VdaZ7A4+ShiVZSIRZjmAKTcQ9gW7E5hqjugUJUnBDmtDCstUUPCfEjUrNb3AOvQ/KvuaUpqM X-Received: by 2002:a62:cd48:: with SMTP id o69-v6mr1919491pfg.84.1535011205772; Thu, 23 Aug 2018 01:00:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1535011205; cv=none; d=google.com; s=arc-20160816; b=YM47GUsa8L4GGAFgzjSIzX9lHI6lJ/FuT5cjAP+tb/ERtlQ7dAb1gQkazvcDhmLECA JUj5LVDwmene02tSTYZnQWyNp1KPfQ5N6/6r9OQhzzK7Wc2nLnYNIWE6ul4Mmzfc+OXJ ZXsni/oJwZwV2VCbzLTex4xSpDc9uvmmwiCp5CWcRs4TMTA2KB+eT0jFKU4P6EnLu8Tc rdeObbWqNa+rZ31NA7Mc7rdDLTjiB2Or/HX6aV9gVIEj1j5H5t8KYkyoI1lVtT8WXAA5 D1PIP40L3QNT5m9Crgu1kmhdBIUJsgLmm0MmhgU9/5p5qcsXv++mdjvo7qCzgyM6QhGT jOXw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:references :in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=r37xH73lMNBcquSWJF5esBB1OjtTBV/tHeqbsRgDD6g=; b=diIlyN7XF8QwZ+PPiFKIlbXqFjmnVgJLtPDjMmcdjBEISK1J80RHr8feglbxrsGYKq y+d9FS8D03lqpWJAN/gP96QQ0q5WCeq165rsUDury+L+rwbVZuljr2GkbzCqI6hG1b+1 lh2dbcD8FFEPBwguHWotTyHZ6FD6cV0YBgq37wDuYLI8/4MLl6U9mHH0pFflqj+qSTc2 ZrJz0qyZkjtXDO18LJZt5Tzc4x1g8ezoHOPanEeOpHfmU5YaIGjyYeG8zSQOhO1XiEEf W52oB6KnKe1MwmOfNL3ZlaUmz8eo10hcFG88S37NBRU7ZhDoQq/fu+MtnkxRoPhbvz6q +5ng== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id j124-v6si4130038pfb.191.2018.08.23.00.59.50; Thu, 23 Aug 2018 01:00:05 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727984AbeHWL0j (ORCPT + 99 others); Thu, 23 Aug 2018 07:26:39 -0400 Received: from mail.linuxfoundation.org ([140.211.169.12]:41770 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726995AbeHWL0i (ORCPT ); Thu, 23 Aug 2018 07:26:38 -0400 Received: from localhost (5355525A.cm-6-6b.dynamic.ziggo.nl [83.85.82.90]) by mail.linuxfoundation.org (Postfix) with ESMTPSA id 96A75BB6; Thu, 23 Aug 2018 07:58:15 +0000 (UTC) From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Sudarsana Reddy Kalluru , Ariel Elior , Michal Kalderon , "David S. Miller" , Sasha Levin Subject: [PATCH 4.4 14/79] qed: Add sanity check for SIMD fastpath handler. Date: Thu, 23 Aug 2018 09:52:50 +0200 Message-Id: <20180823074919.616351045@linuxfoundation.org> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20180823074918.641878835@linuxfoundation.org> References: <20180823074918.641878835@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.4-stable review patch. If anyone has any objections, please let me know. ------------------ From: Sudarsana Reddy Kalluru [ Upstream commit 3935a70968820c3994db4de7e6e1c7e814bff875 ] Avoid calling a SIMD fastpath handler if it is NULL. The check is needed to handle an unlikely scenario where unsolicited interrupt is destined to a PF in INTa mode. Fixes: fe56b9e6a ("qed: Add module with basic common support") Signed-off-by: Sudarsana Reddy Kalluru Signed-off-by: Ariel Elior Signed-off-by: Michal Kalderon Signed-off-by: David S. Miller Signed-off-by: Sasha Levin Signed-off-by: Greg Kroah-Hartman --- drivers/net/ethernet/qlogic/qed/qed_main.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) --- a/drivers/net/ethernet/qlogic/qed/qed_main.c +++ b/drivers/net/ethernet/qlogic/qed/qed_main.c @@ -461,8 +461,16 @@ static irqreturn_t qed_single_int(int ir /* Fastpath interrupts */ for (j = 0; j < 64; j++) { if ((0x2ULL << j) & status) { - hwfn->simd_proto_handler[j].func( - hwfn->simd_proto_handler[j].token); + struct qed_simd_fp_handler *p_handler = + &hwfn->simd_proto_handler[j]; + + if (p_handler->func) + p_handler->func(p_handler->token); + else + DP_NOTICE(hwfn, + "Not calling fastpath handler as it is NULL [handler #%d, status 0x%llx]\n", + j, status); + status &= ~(0x2ULL << j); rc = IRQ_HANDLED; }