[162/262] enic: Bug Fix: Fix hardware transmit queue indexing in enic_poll_controller

From: Greg KH
Date: Wed Nov 09 2011 - 23:57:27 EST


3.0-stable review patch. If anyone has any objections, please let me know.

------------------

From: Vasanthy Kolluri <vkolluri@xxxxxxxxx>

commit b880a954b9e2585ce325aedd76e4741880cab180 upstream.

Signed-off-by: Christian Benvenuti <benve@xxxxxxxxx>
Signed-off-by: Danny Guo <dannguo@xxxxxxxxx>
Signed-off-by: Vasanthy Kolluri <vkolluri@xxxxxxxxx>
Signed-off-by: Roopa Prabhu <roprabhu@xxxxxxxxx>
Signed-off-by: David Wang <dwang2@xxxxxxxxx>
Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>
Cc: Chun-Yi Lee <jlee@xxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxx>

---
drivers/net/enic/enic_main.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)

--- a/drivers/net/enic/enic_main.c
+++ b/drivers/net/enic/enic_main.c
@@ -1718,8 +1718,12 @@ static void enic_poll_controller(struct
enic_isr_msix_rq(enic->msix_entry[intr].vector,
&enic->napi[i]);
}
- intr = enic_msix_wq_intr(enic, i);
- enic_isr_msix_wq(enic->msix_entry[intr].vector, enic);
+
+ for (i = 0; i < enic->wq_count; i++) {
+ intr = enic_msix_wq_intr(enic, i);
+ enic_isr_msix_wq(enic->msix_entry[intr].vector, enic);
+ }
+
break;
case VNIC_DEV_INTR_MODE_MSI:
enic_isr_msi(enic->pdev->irq, enic);


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/