aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/myri10ge/myri10ge.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/myri10ge/myri10ge.c')
-rw-r--r--drivers/net/myri10ge/myri10ge.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/net/myri10ge/myri10ge.c b/drivers/net/myri10ge/myri10ge.c
index e9c1296b267..aea9fdaa3cd 100644
--- a/drivers/net/myri10ge/myri10ge.c
+++ b/drivers/net/myri10ge/myri10ge.c
@@ -1324,6 +1324,7 @@ myri10ge_rx_done(struct myri10ge_slice_state *ss, struct myri10ge_rx_buf *rx,
1324 skb_shinfo(skb)->nr_frags = 0; 1324 skb_shinfo(skb)->nr_frags = 0;
1325 } 1325 }
1326 skb->protocol = eth_type_trans(skb, dev); 1326 skb->protocol = eth_type_trans(skb, dev);
1327 skb_record_rx_queue(skb, ss - &mgp->ss[0]);
1327 1328
1328 if (mgp->csum_flag) { 1329 if (mgp->csum_flag) {
1329 if ((skb->protocol == htons(ETH_P_IP)) || 1330 if ((skb->protocol == htons(ETH_P_IP)) ||
@@ -1514,7 +1515,7 @@ static int myri10ge_poll(struct napi_struct *napi, int budget)
1514 work_done = myri10ge_clean_rx_done(ss, budget); 1515 work_done = myri10ge_clean_rx_done(ss, budget);
1515 1516
1516 if (work_done < budget) { 1517 if (work_done < budget) {
1517 netif_rx_complete(napi); 1518 napi_complete(napi);
1518 put_be32(htonl(3), ss->irq_claim); 1519 put_be32(htonl(3), ss->irq_claim);
1519 } 1520 }
1520 return work_done; 1521 return work_done;
@@ -1532,7 +1533,7 @@ static irqreturn_t myri10ge_intr(int irq, void *arg)
1532 /* an interrupt on a non-zero receive-only slice is implicitly 1533 /* an interrupt on a non-zero receive-only slice is implicitly
1533 * valid since MSI-X irqs are not shared */ 1534 * valid since MSI-X irqs are not shared */
1534 if ((mgp->dev->real_num_tx_queues == 1) && (ss != mgp->ss)) { 1535 if ((mgp->dev->real_num_tx_queues == 1) && (ss != mgp->ss)) {
1535 netif_rx_schedule(&ss->napi); 1536 napi_schedule(&ss->napi);
1536 return (IRQ_HANDLED); 1537 return (IRQ_HANDLED);
1537 } 1538 }
1538 1539
@@ -1543,7 +1544,7 @@ static irqreturn_t myri10ge_intr(int irq, void *arg)
1543 /* low bit indicates receives are present, so schedule 1544 /* low bit indicates receives are present, so schedule
1544 * napi poll handler */ 1545 * napi poll handler */
1545 if (stats->valid & 1) 1546 if (stats->valid & 1)
1546 netif_rx_schedule(&ss->napi); 1547 napi_schedule(&ss->napi);
1547 1548
1548 if (!mgp->msi_enabled && !mgp->msix_enabled) { 1549 if (!mgp->msi_enabled && !mgp->msix_enabled) {
1549 put_be32(0, mgp->irq_deassert); 1550 put_be32(0, mgp->irq_deassert);