net/enetc: reorder BDR structure
authorAlex Marginean <alexandru.marginean@nxp.com>
Mon, 2 Mar 2020 14:32:05 +0000 (20:02 +0530)
committerFerruh Yigit <ferruh.yigit@intel.com>
Wed, 18 Mar 2020 09:21:41 +0000 (10:21 +0100)
Reorder the members of the structure so that the ones used on datapath
fit in a single cache line, to slightly reduce pressure on cache and
miss rate.

Signed-off-by: Alex Marginean <alexandru.marginean@nxp.com>
Acked-by: Gagandeep Singh <g.singh@nxp.com>
drivers/net/enetc/enetc.h

index 8c830a5..14ef3bc 100644 (file)
@@ -53,23 +53,23 @@ struct enetc_swbd {
 };
 
 struct enetc_bdr {
-       struct rte_eth_dev *ndev;
-       struct rte_mempool *mb_pool;   /* mbuf pool to populate RX ring. */
        void *bd_base;                  /* points to Rx or Tx BD ring */
+       struct enetc_swbd *q_swbd;
        union {
                void *tcir;
                void *rcir;
        };
-       uint16_t index;
        int bd_count; /* # of BDs */
        int next_to_use;
        int next_to_clean;
-       struct enetc_swbd *q_swbd;
+       uint16_t index;
+       uint8_t crc_len; /* 0 if CRC stripped, 4 otherwise */
        union {
                void *tcisr; /* Tx */
                int next_to_alloc; /* Rx */
        };
-       uint8_t crc_len; /* 0 if CRC stripped, 4 otherwise */
+       struct rte_mempool *mb_pool;   /* mbuf pool to populate RX ring. */
+       struct rte_eth_dev *ndev;
 };
 
 /*