]> git.itanic.dy.fi Git - linux-stable/commitdiff
staging: qlge: Remove rx_ring.type
authorBenjamin Poirier <bpoirier@suse.com>
Fri, 27 Sep 2019 10:12:04 +0000 (19:12 +0900)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 4 Oct 2019 15:17:46 +0000 (17:17 +0200)
This field is redundant, the type can be determined from the index, cq_id.

Signed-off-by: Benjamin Poirier <bpoirier@suse.com>
Link: https://lore.kernel.org/r/20190927101210.23856-11-bpoirier@suse.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/qlge/qlge.h
drivers/staging/qlge/qlge_dbg.c
drivers/staging/qlge/qlge_main.c

index 519fa39dd19465df5f7605d5019909f0eeb3e4a3..5a4b2520cd2a4d8c6c1557a99efe25bcfa7a5a40 100644 (file)
@@ -1387,15 +1387,6 @@ struct tx_ring {
        u64 tx_errors;
 };
 
-/*
- * Type of inbound queue.
- */
-enum {
-       DEFAULT_Q = 2,          /* Handles slow queue and chip/MPI events. */
-       TX_Q = 3,               /* Handles outbound completions. */
-       RX_Q = 4,               /* Handles inbound completions. */
-};
-
 struct qlge_page_chunk {
        struct page *page;
        void *va; /* virt addr including offset */
@@ -1468,7 +1459,6 @@ struct rx_ring {
        struct qlge_bq sbq;
 
        /* Misc. handler elements. */
-       u32 type;               /* Type of queue, tx, rx. */
        u32 irq;                /* Which vector this ring is assigned. */
        u32 cpu;                /* Which CPU this should run on. */
        char name[IFNAMSIZ + 5];
index e8ad8209d4878a080aef1ef83795a1f82c166734..81fbee7f2af6d311de860118119b1c96991a6e5a 100644 (file)
@@ -1730,16 +1730,24 @@ void ql_dump_cqicb(struct cqicb *cqicb)
               le16_to_cpu(cqicb->sbq_len));
 }
 
+static const char *qlge_rx_ring_type_name(struct rx_ring *rx_ring)
+{
+       struct ql_adapter *qdev = rx_ring->qdev;
+
+       if (rx_ring->cq_id < qdev->rss_ring_count)
+               return "RX COMPLETION";
+       else
+               return "TX COMPLETION";
+};
+
 void ql_dump_rx_ring(struct rx_ring *rx_ring)
 {
        if (rx_ring == NULL)
                return;
        pr_err("===================== Dumping rx_ring %d ===============\n",
               rx_ring->cq_id);
-       pr_err("Dumping rx_ring %d, type = %s%s%s\n",
-              rx_ring->cq_id, rx_ring->type == DEFAULT_Q ? "DEFAULT" : "",
-              rx_ring->type == TX_Q ? "OUTBOUND COMPLETIONS" : "",
-              rx_ring->type == RX_Q ? "INBOUND_COMPLETIONS" : "");
+       pr_err("Dumping rx_ring %d, type = %s\n", rx_ring->cq_id,
+              qlge_rx_ring_type_name(rx_ring));
        pr_err("rx_ring->cqicb = %p\n", &rx_ring->cqicb);
        pr_err("rx_ring->cq_base = %p\n", rx_ring->cq_base);
        pr_err("rx_ring->cq_base_dma = %llx\n",
index 609a87804a940817b80a2da7b92321372b5dd456..0e304a7ac22f55c522c71f2b65aa0ce221a43803 100644 (file)
@@ -2785,14 +2785,10 @@ static void ql_free_rx_buffers(struct ql_adapter *qdev)
 
 static void ql_alloc_rx_buffers(struct ql_adapter *qdev)
 {
-       struct rx_ring *rx_ring;
        int i;
 
-       for (i = 0; i < qdev->rx_ring_count; i++) {
-               rx_ring = &qdev->rx_ring[i];
-               if (rx_ring->type != TX_Q)
-                       ql_update_buffer_queues(rx_ring);
-       }
+       for (i = 0; i < qdev->rss_ring_count; i++)
+               ql_update_buffer_queues(&qdev->rx_ring[i]);
 }
 
 static int qlge_init_bq(struct qlge_bq *bq)
@@ -3071,12 +3067,7 @@ static int ql_start_rx_ring(struct ql_adapter *qdev, struct rx_ring *rx_ring)
                rx_ring->sbq.clean_idx = 0;
                rx_ring->sbq.free_cnt = rx_ring->sbq.len;
        }
-       switch (rx_ring->type) {
-       case TX_Q:
-               cqicb->irq_delay = cpu_to_le16(qdev->tx_coalesce_usecs);
-               cqicb->pkt_delay = cpu_to_le16(qdev->tx_max_coalesced_frames);
-               break;
-       case RX_Q:
+       if (rx_ring->cq_id < qdev->rss_ring_count) {
                /* Inbound completion handling rx_rings run in
                 * separate NAPI contexts.
                 */
@@ -3084,10 +3075,9 @@ static int ql_start_rx_ring(struct ql_adapter *qdev, struct rx_ring *rx_ring)
                               64);
                cqicb->irq_delay = cpu_to_le16(qdev->rx_coalesce_usecs);
                cqicb->pkt_delay = cpu_to_le16(qdev->rx_max_coalesced_frames);
-               break;
-       default:
-               netif_printk(qdev, ifup, KERN_DEBUG, qdev->ndev,
-                            "Invalid rx_ring->type = %d.\n", rx_ring->type);
+       } else {
+               cqicb->irq_delay = cpu_to_le16(qdev->tx_coalesce_usecs);
+               cqicb->pkt_delay = cpu_to_le16(qdev->tx_max_coalesced_frames);
        }
        err = ql_write_cfg(qdev, cqicb, sizeof(struct cqicb),
                           CFG_LCQ, rx_ring->cq_id);
@@ -3444,12 +3434,7 @@ static int ql_request_irq(struct ql_adapter *qdev)
                                goto err_irq;
 
                        netif_err(qdev, ifup, qdev->ndev,
-                                 "Hooked intr %d, queue type %s, with name %s.\n",
-                                 i,
-                                 qdev->rx_ring[0].type == DEFAULT_Q ?
-                                 "DEFAULT_Q" :
-                                 qdev->rx_ring[0].type == TX_Q ? "TX_Q" :
-                                 qdev->rx_ring[0].type == RX_Q ? "RX_Q" : "",
+                                 "Hooked intr 0, queue type RX_Q, with name %s.\n",
                                  intr_context->name);
                }
                intr_context->hooked = 1;
@@ -4012,7 +3997,6 @@ static int ql_configure_rings(struct ql_adapter *qdev)
                        rx_ring->sbq.type = QLGE_SB;
                        rx_ring->sbq.len = NUM_SMALL_BUFFERS;
                        rx_ring->sbq.size = rx_ring->sbq.len * sizeof(__le64);
-                       rx_ring->type = RX_Q;
                } else {
                        /*
                         * Outbound queue handles outbound completions only.
@@ -4025,7 +4009,6 @@ static int ql_configure_rings(struct ql_adapter *qdev)
                        rx_ring->lbq.size = 0;
                        rx_ring->sbq.len = 0;
                        rx_ring->sbq.size = 0;
-                       rx_ring->type = TX_Q;
                }
        }
        return 0;