From patchwork Thu Feb 21 19:24:44 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shahed Shaikh X-Patchwork-Id: 50424 X-Patchwork-Delegate: ferruh.yigit@amd.com Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 263532B8C; Thu, 21 Feb 2019 20:26:14 +0100 (CET) Received: from NAM05-DM3-obe.outbound.protection.outlook.com (mail-eopbgr730080.outbound.protection.outlook.com [40.107.73.80]) by dpdk.org (Postfix) with ESMTP id A6AE61D7; Thu, 21 Feb 2019 20:26:12 +0100 (CET) Received: from BN8PR07CA0035.namprd07.prod.outlook.com (2603:10b6:408:ac::48) by CY4PR07MB2903.namprd07.prod.outlook.com (2603:10b6:903:26::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1643.14; Thu, 21 Feb 2019 19:26:11 +0000 Received: from CO1NAM05FT060.eop-nam05.prod.protection.outlook.com (2a01:111:f400:7e50::206) by BN8PR07CA0035.outlook.office365.com (2603:10b6:408:ac::48) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.1643.16 via Frontend Transport; Thu, 21 Feb 2019 19:26:11 +0000 Authentication-Results: spf=fail (sender IP is 199.233.58.38) smtp.mailfrom=marvell.com; dpdk.org; dkim=none (message not signed) header.d=none; dpdk.org; dmarc=fail action=none header.from=marvell.com; Received-SPF: Fail (protection.outlook.com: domain of marvell.com does not designate 199.233.58.38 as permitted sender) receiver=protection.outlook.com; client-ip=199.233.58.38; helo=CAEXCH02.caveonetworks.com; Received: from CAEXCH02.caveonetworks.com (199.233.58.38) by CO1NAM05FT060.mail.protection.outlook.com (10.152.96.178) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA) id 15.20.1665.5 via Frontend Transport; Thu, 21 Feb 2019 19:26:10 +0000 Received: from dut1171.mv.qlogic.com (10.112.88.18) by CAEXCH02.caveonetworks.com (10.67.98.110) with Microsoft SMTP Server (TLS) id 14.2.347.0; Thu, 21 Feb 2019 11:25:07 -0800 Received: from dut1171.mv.qlogic.com (localhost [127.0.0.1]) by dut1171.mv.qlogic.com (8.14.7/8.14.7) with ESMTP id x1LJP7NB030620; Thu, 21 Feb 2019 11:25:07 -0800 Received: (from root@localhost) by dut1171.mv.qlogic.com (8.14.7/8.14.7/Submit) id x1LJP6o8030619; Thu, 21 Feb 2019 11:25:06 -0800 From: Shahed Shaikh To: CC: , , Date: Thu, 21 Feb 2019 11:24:44 -0800 Message-ID: <20190221192444.30575-1-shshaikh@marvell.com> X-Mailer: git-send-email 2.12.0 MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-Matching-Connectors: 131952507708674512; (abac79dc-c90b-41ba-8033-08d666125e47); (abac79dc-c90b-41ba-8033-08d666125e47) X-Forefront-Antispam-Report: CIP:199.233.58.38; IPV:CAL; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(376002)(39860400002)(396003)(346002)(136003)(2980300002)(1109001)(1110001)(339900001)(199004)(189003)(50226002)(105606002)(26826003)(8936002)(87636003)(336012)(498600001)(2616005)(1076003)(86362001)(316002)(476003)(450100002)(4326008)(14444005)(42186006)(16586007)(36906005)(50466002)(54906003)(68736007)(26005)(5660300002)(48376002)(47776003)(486006)(126002)(51416003)(106466001)(6666004)(356004)(6916009)(2351001)(305945005)(36756003)(2906002)(53936002)(81166006)(81156014)(80596001)(85426001)(8676002)(97736004)(69596002); DIR:OUT; SFP:1101; SCL:1; SRVR:CY4PR07MB2903; H:CAEXCH02.caveonetworks.com; FPR:; SPF:Fail; LANG:en; PTR:InfoDomainNonexistent; A:1; MX:1; X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 7783d50b-7a28-41ce-3d53-08d698326fa2 X-Microsoft-Antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(5600110)(711020)(4605104)(2017052603328); SRVR:CY4PR07MB2903; X-MS-TrafficTypeDiagnostic: CY4PR07MB2903: X-Microsoft-Antispam-PRVS: X-Forefront-PRVS: 09555FB1AD X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY4PR07MB2903; 23:/km1veGfkqAX/hE7+2Wjt/HVZJ5JiHBKiElR8RJhJ?= 9T50WsI/zX1qgFiAdboZozrMmqqaKg0/PRSpBpfYuQ7fgcnpwIEqsxsflu2CdfG7SPOYAH2NdSukEfBs4jdtb0yZDNObTszX//u80fnRHCxi3Vxrye7IGkH302dENCdk7YvuFkMHtKXC9saWAinfMG9L9Ao2v07hDSVOGxnkAyBBitEdXY5gjjuV00ieD8lZu1qk63jQvsbZg8cz0brfZj+C447Ar+I99ygRxZXn3YNgXBBxH+0Nqo4Pscgp9+NiHlcV6QJB2pfzjc1GbMWurz48PktcjMOuIJ6I+8NpVhtD5yqNEtxzR84EoVojS1KBfKBYIX8KRL4R+TyibrXmQxjPvY8b0kMxcAYH5skZsjup+4wQRSsmgAt5JhE3j+vZnKWAAmlif4D/OB4ygQs1XuLmgUJ473mcL4MGuOFJJyfnPTHdMp32glhe4KE4XvJIyiNkIXnWA+sUPpLWHNPOzKRKH7nJo4P/ZijnxOfMb0OsvbsMOvTdl3jmBmq+DbFq6zfisRtP6it3uOndofLS+nDTDLNJ7vDoFEqkdWc9S+2+KL/I2BrYFfLkd3+kYQGoLHpC1XKAO9TSm2SbwIAEI6Nn2yRzhuzAMy0eTPsERrJCcfar6VmbbVLsifJBuRObZvClUeds2Ci6BT6gOYUqniuWakuJpvuKbZJhPCyiEHfTCwMU938zegELzx/jvXjBaZ1xIGcLngV9rsvkeaMy/4sgNyXyTKaadQOekXJA1Xi2RQuhoQ6+7Qtxhrkr0tzc1p7YvMXAx1+aqBFZ2KX2h+40WYFH1A7xenwcm2Wd29/os2P/e12pTKIotMOkNZ2s8KH2rLJUV94XETi470KIJnyXIL2JxK6YZ1bDUeqO53z7jCY4eX+HXxl63OnD7YqfvHZZjDB94kHVKBDjO5fCu3QFCcSYejEOfC2RnIb+wGHBGe59zl0LLyoha8os9xDZI87+t8zsJ1VgpjFKVUUprNxM52FLAz0woOMZJn5WwNwDfdHsO+qS556FGPBmeeHK5lKwa3AcCZS6PoZcTELgMG+re/oF8RlxvjPucPb459YrMmUd6MYoAf5ims8AdMAjBF8pqZPQtZk1M/3UZwoykmQocemfhDCLq7Uf8WwYG1fbIUtW0MLY7ix5cDoHkYoCQCgbDLtJVZFVJ6Vy9kWBfU/Bm6nPnhjMFT7pX8PEv+TAw== X-Microsoft-Antispam-Message-Info: 4ij/hdqqi8BX0iS7KhGpNe/flmuEl1IDxoOV3YKSqeS9p9bRlnEfibl/qxfRE36yGK5kXXPQc4/h90y8CiZJncswCYsUmiBLtHpAj7yRqhTGcNkjVjSWrP4T9HZukvPGShX4LCkHnUo7Pexsueo7h3tM3S3BG3p2TlXA/DdbKcMkOwed0ivHNeULA51qD5qN46ezxbJDdL9DplsDDNHQ+HD0zbbpbJ0ZeKkQ7LNysVd0wqDoJqGI7haZb6BW2wB2Em7GdSI//VhmhOJrk17V0Mi+GK5Ic+X8C2UF0H4Ppb9gSkdZOMYMah4zW2/iHvcbUdpHlWza8c/cKCwl+jm8rBmm0PdYByFT6VoQr64NDvk736aEr1x+aNR5+Mp5gtzUu+YqRK3A/SZBLc7z683koEMeJ++AcKNtmPSgCva5JUQ= X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Feb 2019 19:26:10.5261 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 7783d50b-7a28-41ce-3d53-08d698326fa2 X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[199.233.58.38]; Helo=[CAEXCH02.caveonetworks.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR07MB2903 Subject: [dpdk-dev] [PATCH 1/1] net/bnx2x: fix segfaults due to stale interrupt status 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" Previous ungraceful exit may leave behind un-acked stale interrupts for slowpath and fastpath. Interrupt status polling function is started before FLR is initiated, so we don't have a real way to protect this polling function invoking an interrupt handler caused due to stale interrupt status from previous ungraceful exit. So, check uninitialized status block variables in interrupt handling path which may lead to sefault. Fixes: 540a211084a7 ("bnx2x: driver core") Cc: stable@dpdk.org Signed-off-by: Shahed Shaikh --- drivers/net/bnx2x/bnx2x.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/drivers/net/bnx2x/bnx2x.c b/drivers/net/bnx2x/bnx2x.c index 4c775c1..26b3828 100644 --- a/drivers/net/bnx2x/bnx2x.c +++ b/drivers/net/bnx2x/bnx2x.c @@ -4201,6 +4201,9 @@ static uint16_t bnx2x_update_dsb_idx(struct bnx2x_softc *sc) struct host_sp_status_block *def_sb = sc->def_sb; uint16_t rc = 0; + if (!def_sb) + return 0; + mb(); /* status block is written to by the chip */ if (sc->def_att_idx != def_sb->atten_status_block.attn_bits_index) { @@ -4525,6 +4528,10 @@ static void bnx2x_handle_fp_tq(struct bnx2x_fastpath *fp, int scan_fp) struct bnx2x_softc *sc = fp->sc; uint8_t more_rx = FALSE; + /* Make sure FP is initialized */ + if (!fp->sb_running_index) + return; + PMD_DEBUG_PERIODIC_LOG(DEBUG, sc, "---> FP TASK QUEUE (%d) <--", fp->index);