aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorMitch Williams <mitch.a.williams@intel.com>2015-12-09 15:50:30 -0800
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>2016-02-03 20:37:06 -0800
commit10311540fab76c7e5530bf5f0267a3d1b8d5818e (patch)
treeb23ff2951a86f55efa9360b9fb70efffd1698573 /drivers
parenti40e: define function capabilities in only one place (diff)
downloadlinux-dev-10311540fab76c7e5530bf5f0267a3d1b8d5818e.tar.xz
linux-dev-10311540fab76c7e5530bf5f0267a3d1b8d5818e.zip
i40evf: null out ring pointers on free
Since we check these ring pointers to make sure we don't double-allocate or double-free the rings, we had better null them out after we free them. In very rare cases this can cause a panic if the driver is removed during reset recovery. Change-ID: Ib06eb4910a3058275c8f7ec5ef7f45baa4674f96 Signed-off-by: Mitch Williams <mitch.a.williams@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/ethernet/intel/i40evf/i40evf_main.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/ethernet/intel/i40evf/i40evf_main.c b/drivers/net/ethernet/intel/i40evf/i40evf_main.c
index d1c4335114fc..81d958422ccf 100644
--- a/drivers/net/ethernet/intel/i40evf/i40evf_main.c
+++ b/drivers/net/ethernet/intel/i40evf/i40evf_main.c
@@ -1122,7 +1122,9 @@ static void i40evf_free_queues(struct i40evf_adapter *adapter)
if (!adapter->vsi_res)
return;
kfree(adapter->tx_rings);
+ adapter->tx_rings = NULL;
kfree(adapter->rx_rings);
+ adapter->rx_rings = NULL;
}
/**