Thread (51 messages) flat view 51 messages, 6 authors, 2016-03-05
STALE3813d

Re: [PATCH net-next V2 03/16] net: fec: pass txq to fec_enet_tx_queue instead of queue_id

From: Zhi Li <hidden>
Date: 2016-03-01 21:06:40
Also in: linux-arm-kernel

On Wed, Feb 24, 2016 at 6:36 PM, Troy Kisky
[off-list ref] wrote:
quoted hunk ↗ jump to hunk
queue_id is the qid member of struct bufdesc_prop.

Signed-off-by: Troy Kisky <redacted>
---
 drivers/net/ethernet/freescale/fec_main.c | 17 ++++++-----------
 1 file changed, 6 insertions(+), 11 deletions(-)
diff --git a/drivers/net/ethernet/freescale/fec_main.c b/drivers/net/ethernet/freescale/fec_main.c
index 9619b9e..c517194 100644
--- a/drivers/net/ethernet/freescale/fec_main.c
+++ b/drivers/net/ethernet/freescale/fec_main.c
@@ -1156,25 +1156,18 @@ fec_enet_hwtstamp(struct fec_enet_private *fep, unsigned ts,
        hwtstamps->hwtstamp = ns_to_ktime(ns);
 }

-static void
-fec_enet_tx_queue(struct net_device *ndev, u16 queue_id)
+static void fec_txq(struct net_device *ndev, struct fec_enet_private *fep,
+                   struct fec_enet_priv_tx_q *txq)
you can get fep from ndev.

best regards
Frank Li
quoted hunk ↗ jump to hunk
 {
-       struct  fec_enet_private *fep;
        struct bufdesc *bdp;
        unsigned short status;
        struct  sk_buff *skb;
-       struct fec_enet_priv_tx_q *txq;
        struct netdev_queue *nq;
        int     index = 0;
        int     entries_free;

-       fep = netdev_priv(ndev);
-
-       queue_id = FEC_ENET_GET_QUQUE(queue_id);
-
-       txq = fep->tx_queue[queue_id];
        /* get next bdp of dirty_tx */
-       nq = netdev_get_tx_queue(ndev, queue_id);
+       nq = netdev_get_tx_queue(ndev, txq->bd.qid);
        bdp = txq->dirty_tx;

        /* get next bdp of dirty_tx */
@@ -1268,11 +1261,13 @@ static void
 fec_enet_tx(struct net_device *ndev)
 {
        struct fec_enet_private *fep = netdev_priv(ndev);
+       struct fec_enet_priv_tx_q *txq;
        u16 queue_id;
        /* First process class A queue, then Class B and Best Effort queue */
        for_each_set_bit(queue_id, &fep->work_tx, FEC_ENET_MAX_TX_QS) {
                clear_bit(queue_id, &fep->work_tx);
-               fec_enet_tx_queue(ndev, queue_id);
+               txq = fep->tx_queue[FEC_ENET_GET_QUQUE(queue_id)];
+               fec_txq(ndev, fep, txq);
        }
        return;
 }
--
2.5.0
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help