ixgbe: fix bug with lots of tx queues

when using more than 8 tx queues you can overrun the 8 bit v_idx
field, so change it to 16 bits to represent the maximum number
of queues (one for each bit)

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
This commit is contained in:
Jesse Brandeburg 2008-09-11 19:58:29 -07:00 committed by Jeff Garzik
parent 30efa5a363
commit ff819cfb5d

View File

@ -152,9 +152,9 @@ struct ixgbe_ring {
struct net_lro_mgr lro_mgr; struct net_lro_mgr lro_mgr;
bool lro_used; bool lro_used;
struct ixgbe_queue_stats stats; struct ixgbe_queue_stats stats;
u8 v_idx; /* maps directly to the index for this ring in the hardware u16 v_idx; /* maps directly to the index for this ring in the hardware
* vector array, can also be used for finding the bit in EICR * vector array, can also be used for finding the bit in EICR
* and friends that represents the vector for this ring */ * and friends that represents the vector for this ring */
u16 work_limit; /* max work per interrupt */ u16 work_limit; /* max work per interrupt */