浏览代码

ixgbe: Handle previously-freed msix_entries

The msix_entries memory can be freed by a previous suspend or
remove, so don't crash on close when it isn't there.

Signed-off-by: Mark Rustad <mark.d.rustad@intel.com>
Tested-by: Krishneil Singh <krishneil.k.singh@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Mark Rustad 9 年之前
父节点
当前提交
1fa7125277
共有 1 个文件被更改,包括 3 次插入0 次删除
  1. 3 0
      drivers/net/ethernet/intel/ixgbe/ixgbe_main.c

+ 3 - 0
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c

@@ -3070,6 +3070,9 @@ static void ixgbe_free_irq(struct ixgbe_adapter *adapter)
 		return;
 		return;
 	}
 	}
 
 
+	if (!adapter->msix_entries)
+		return;
+
 	for (vector = 0; vector < adapter->num_q_vectors; vector++) {
 	for (vector = 0; vector < adapter->num_q_vectors; vector++) {
 		struct ixgbe_q_vector *q_vector = adapter->q_vector[vector];
 		struct ixgbe_q_vector *q_vector = adapter->q_vector[vector];
 		struct msix_entry *entry = &adapter->msix_entries[vector];
 		struct msix_entry *entry = &adapter->msix_entries[vector];