[Intel-wired-lan] [PATCH net 1/2] igb: Fix oops on changing number of rings

Brown, Aaron F aaron.f.brown at intel.com
Sat May 2 01:32:01 UTC 2015


> From: Intel-wired-lan [mailto:intel-wired-lan-bounces at lists.osuosl.org] On
> Behalf Of Jeff Kirsher
> Sent: Tuesday, April 14, 2015 6:02 AM
> To: Toshiaki Makita
> Cc: intel-wired-lan at lists.osuosl.org
> Subject: Re: [Intel-wired-lan] [PATCH net 1/2] igb: Fix oops on changing
> number of rings
> 
> On Mon, 2015-04-13 at 18:15 +0900, Toshiaki Makita wrote:
> > 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: 02ef6e1d0b00 ("igb: Fix queue allocation method to accommodate
> > changing during runtime")
> > Signed-off-by: Toshiaki Makita <makita.toshiaki at lab.ntt.co.jp>
> > ---
> >  drivers/net/ethernet/intel/igb/igb_main.c | 2 ++
> >  1 file changed, 2 insertions(+)
> 
> Thanks Toshiaki, I have applied your patch to my queue.
> --

Tested-by: Aaron Brown <aaron.f.brown at intel.com>



More information about the Intel-wired-lan mailing list