]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/4.7.7/i40e-avoid-null-pointer-dereference.patch
fixes for 4.19
[thirdparty/kernel/stable-queue.git] / releases / 4.7.7 / i40e-avoid-null-pointer-dereference.patch
1 From cd956722167ba4fdba9c1ce3eed251b04ea2e10f Mon Sep 17 00:00:00 2001
2 From: Heinrich Schuchardt <xypron.glpk@gmx.de>
3 Date: Tue, 17 May 2016 22:41:33 +0200
4 Subject: i40e: avoid null pointer dereference
5
6 From: Heinrich Schuchardt <xypron.glpk@gmx.de>
7
8 commit cd956722167ba4fdba9c1ce3eed251b04ea2e10f upstream.
9
10 In function i40e_debug_aq parameter desc is assumed to be
11 possibly NULL. Do not dereference it before checking the
12 value.
13
14 Fixes: f905dd62be88 ("i40e/i40evf: add max buf len to aq debug print helper")
15 Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
16 Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
17 Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
18 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
19
20 ---
21 drivers/net/ethernet/intel/i40e/i40e_common.c | 4 +++-
22 1 file changed, 3 insertions(+), 1 deletion(-)
23
24 --- a/drivers/net/ethernet/intel/i40e/i40e_common.c
25 +++ b/drivers/net/ethernet/intel/i40e/i40e_common.c
26 @@ -297,13 +297,15 @@ void i40e_debug_aq(struct i40e_hw *hw, e
27 void *buffer, u16 buf_len)
28 {
29 struct i40e_aq_desc *aq_desc = (struct i40e_aq_desc *)desc;
30 - u16 len = le16_to_cpu(aq_desc->datalen);
31 + u16 len;
32 u8 *buf = (u8 *)buffer;
33 u16 i = 0;
34
35 if ((!(mask & hw->debug_mask)) || (desc == NULL))
36 return;
37
38 + len = le16_to_cpu(aq_desc->datalen);
39 +
40 i40e_debug(hw, mask,
41 "AQ CMD: opcode 0x%04X, flags 0x%04X, datalen 0x%04X, retval 0x%04X\n",
42 le16_to_cpu(aq_desc->opcode),