From patchwork Tue May 17 20:41:33 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heinrich Schuchardt X-Patchwork-Id: 623263 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3r8Tld05VXz9t3h for ; Wed, 18 May 2016 06:42:04 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751846AbcEQUlv (ORCPT ); Tue, 17 May 2016 16:41:51 -0400 Received: from mout.gmx.net ([212.227.17.20]:58032 "EHLO mout.gmx.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750918AbcEQUlt (ORCPT ); Tue, 17 May 2016 16:41:49 -0400 Received: from LT001.lan ([62.143.92.134]) by mail.gmx.com (mrgmx102) with ESMTPSA (Nemesis) id 0McPvw-1bKRDa0W7E-00HjSM; Tue, 17 May 2016 22:41:42 +0200 From: Heinrich Schuchardt To: Jeff Kirsher Cc: intel-wired-lan@lists.osuosl.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Heinrich Schuchardt Subject: [PATCH 1/1] net: i40e: avoid null pointer dereference Date: Tue, 17 May 2016 22:41:33 +0200 Message-Id: <1463517693-10333-1-git-send-email-xypron.glpk@gmx.de> X-Mailer: git-send-email 2.1.4 X-Provags-ID: V03:K0:R9yydt6gAimVi90K05uSRj8onRI48l8+tnwKF61FWI0Q2rK4wTB srwEfO9DMDs9wcEun2hZwXqB1+50hNiaKwkSqZg0FKIIyFCY/7Y1948+ixnA/ZG2qda1Vhh r8OLTshYNiMAxODq4QHtOUF+dvPBWoBoXc2hmOVOTixlE7Z1hkA6+1X0kiGEKgaX/2Xn0Ak Yjw4MSJ9FKiMuPAMokBrA== X-UI-Out-Filterresults: notjunk:1; V01:K0:lGYZfZw/jAc=:Ab3VVyRZhb6Uls7tRBRb/U jcPGplbOsnfAO+4rkhqcppXWhwQfUdUAzqXmAb5ssJUYq1e+KvtzH9D7T/P5vd6TzE8lp/MxW 8XfGgGcOWa/Wqjz7GV1CyXNGfcYCeFz996qXSv9D2uz7u/TGqWJNPMoZve4T125MtKde+EYR3 tz1DDjPgsXJNvtmXznwX27u8CfgN0T4FGgREJ/oLCn3h7eDCYsxI0EoSLnY1fsGfQU5JmJib+ kMP0CmhYqiVdUwWBv9QP+9ccjL5leSmNWZr3UQfa3Odkx3i6r7X6WokUc8V4ZG9AAGgBH7y8a 2eMw9Ue+Iz+S/brPEmNFTY7WH8Vf0flvmdhFfy/qS8APvevY23u6ZtldSDFoNtHCvLaT5KAAh U/owFetPSkAP+TLhV70Iu5A+FfbdZhzA1cOpqVUi+LS3KRnTWkqIjHROKGU4kBK3d9tRrRVgr OwSSQBJcCu3wBesCNAcdtpzJGasV3TJC8AV8miKwEXMJMZ0/WLuhR6BqRO7HpruwdsygAo40O 8efB+jvM8DihHWq/QmTHnUOFfNxeuB1PyJfi2ZuteI45ySq2zmFOkgkHlNaARguEFZi+JQf9y Q2jlfHqEMv+ELmK8EFHsbZSiD175zpv6mkLqZKtOnYoh9LEGolKU7fAFuz5kC1OR/ptJHXSB/ yYiqql4WqUWmc+NYhCGrTpVaxkubqZJWA9QVocQtNz/Y7jj5f++Mt3RNhxAuXYpUeLpjgg6Gc FMhmmVGm9pp9I+OTpxuXZvhrvBCi3p9gojcTxIq831GyrmQ6sid3B8Erl9k= Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org In function i40e_debug_aq parameter desc is assumed to be possibly NULL. Do not dereference it before checking the value. Fixes: f905dd62be88 ("i40e/i40evf: add max buf len to aq debug print helper") Signed-off-by: Heinrich Schuchardt --- drivers/net/ethernet/intel/i40e/i40e_common.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/net/ethernet/intel/i40e/i40e_common.c b/drivers/net/ethernet/intel/i40e/i40e_common.c index 422b41d..d5cb570 100644 --- a/drivers/net/ethernet/intel/i40e/i40e_common.c +++ b/drivers/net/ethernet/intel/i40e/i40e_common.c @@ -297,13 +297,15 @@ void i40e_debug_aq(struct i40e_hw *hw, enum i40e_debug_mask mask, void *desc, void *buffer, u16 buf_len) { struct i40e_aq_desc *aq_desc = (struct i40e_aq_desc *)desc; - u16 len = le16_to_cpu(aq_desc->datalen); + u16 len; u8 *buf = (u8 *)buffer; u16 i = 0; if ((!(mask & hw->debug_mask)) || (desc == NULL)) return; + len = le16_to_cpu(aq_desc->datalen); + i40e_debug(hw, mask, "AQ CMD: opcode 0x%04X, flags 0x%04X, datalen 0x%04X, retval 0x%04X\n", le16_to_cpu(aq_desc->opcode),