linux/drivers/net/ethernet/intel/igb
Toshiaki Makita c0a06ee185 igb: Fix oops on changing number of rings
When changing the number of rings by ethtool -L, q_vectors are reused,
which causes oops because of uninitialized pointers.

- When an rx is reused as a tx, q_vector->rx.ring is not set to NULL, which
  misleads igb_poll() to determine that it has an rx ring although it
  actually points to the tx ring.
- When a tx is reused as an rx, q_vector->rx.ring->skb
  (q_vector->ring[0].skb) has a value that was used as tx_stats before.

Fix these problems by zeroing it out on reuseing it.

Fixes: 02ef6e1d0b ("igb: Fix queue allocation method to accommodate changing during runtime")
Signed-off-by: Toshiaki Makita <makita.toshiaki@lab.ntt.co.jp>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2015-05-07 05:08:32 -07:00
..
e1000_82575.c igb: Remove unneeded FIXME 2014-12-31 12:11:06 -08:00
e1000_82575.h igb: add flags to set eee advertisement mode 2014-09-06 05:00:39 -07:00
e1000_defines.h igb: Workaround for i210 Errata 25: Slow System Clock 2014-07-10 01:48:28 -07:00
e1000_hw.h igb: remove blocking phy read from inside spinlock 2014-10-02 02:30:39 -07:00
e1000_i210.c igb: Workaround for i210 Errata 25: Slow System Clock 2014-07-10 01:48:28 -07:00
e1000_i210.h igb: Workaround for i210 Errata 25: Slow System Clock 2014-07-10 01:48:28 -07:00
e1000_mac.c igb: Cleanups to fix msleep warnings 2014-04-24 17:41:15 -07:00
e1000_mac.h igb: Cleanups to change comment style on license headers 2014-04-24 17:26:27 -07:00
e1000_mbx.c igb: Cleanups to change comment style on license headers 2014-04-24 17:26:27 -07:00
e1000_mbx.h igb: Cleanups to change comment style on license headers 2014-04-24 17:26:27 -07:00
e1000_nvm.c igb/ixgbe: remove return statements for void functions 2014-05-23 05:28:41 -07:00
e1000_nvm.h igb: Cleanups to change comment style on license headers 2014-04-24 17:26:27 -07:00
e1000_phy.c igb: remove redundant PHY power down register write 2014-05-27 02:10:44 -07:00
e1000_phy.h igb: remove redundant PHY power down register write 2014-05-27 02:10:44 -07:00
e1000_regs.h igb: Add message when malformed packets detected by hw 2014-07-24 03:00:37 -07:00
igb.h igb: enable auxiliary PHC functions for the i210 2015-01-22 18:10:19 -08:00
igb_ethtool.c ethtool: Support for configurable RSS hash function 2014-12-08 21:07:10 -05:00
igb_hwmon.c igb: Cleanups to change comment style on license headers 2014-04-24 17:26:27 -07:00
igb_main.c igb: Fix oops on changing number of rings 2015-05-07 05:08:32 -07:00
igb_ptp.c ptp: igb: use helpers for converting ns to timespec. 2015-03-31 17:19:19 -04:00
Makefile igb: Update license text to remove FSF address and update copyright. 2014-02-26 15:54:52 -05:00