mirror of
https://github.com/torvalds/linux
synced 2024-10-25 04:37:40 +00:00
c0a06ee185
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:
|
||
---|---|---|
.. | ||
e1000_82575.c | ||
e1000_82575.h | ||
e1000_defines.h | ||
e1000_hw.h | ||
e1000_i210.c | ||
e1000_i210.h | ||
e1000_mac.c | ||
e1000_mac.h | ||
e1000_mbx.c | ||
e1000_mbx.h | ||
e1000_nvm.c | ||
e1000_nvm.h | ||
e1000_phy.c | ||
e1000_phy.h | ||
e1000_regs.h | ||
igb.h | ||
igb_ethtool.c | ||
igb_hwmon.c | ||
igb_main.c | ||
igb_ptp.c | ||
Makefile |