[dpdk-dev] [PATCH 1/5] ixgbe: make txq_ops const

Bruce Richardson bruce.richardson at intel.com
Mon Mar 9 14:31:43 CET 2015


On Fri, Mar 06, 2015 at 06:23:20PM -0800, Stephen Hemminger wrote:
> All virtual function tables should be const so they are put
> in text segment rather than data.
> 
> Signed-off-by: Stephen Hemminger <stephen at networkplumber.org>
Acked-by: Bruce Richardson <bruce.richardson at intel.com>

> ---
>  lib/librte_pmd_ixgbe/ixgbe_rxtx.c     | 2 +-
>  lib/librte_pmd_ixgbe/ixgbe_rxtx.h     | 2 +-
>  lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c | 2 +-
>  3 files changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/lib/librte_pmd_ixgbe/ixgbe_rxtx.c b/lib/librte_pmd_ixgbe/ixgbe_rxtx.c
> index 9ecf3e5..e6aec8f 100644
> --- a/lib/librte_pmd_ixgbe/ixgbe_rxtx.c
> +++ b/lib/librte_pmd_ixgbe/ixgbe_rxtx.c
> @@ -1754,7 +1754,7 @@ ixgbe_reset_tx_queue(struct igb_tx_queue *txq)
>  		IXGBE_CTX_NUM * sizeof(struct ixgbe_advctx_info));
>  }
>  
> -static struct ixgbe_txq_ops def_txq_ops = {
> +static const struct ixgbe_txq_ops def_txq_ops = {
>  	.release_mbufs = ixgbe_tx_queue_release_mbufs,
>  	.free_swring = ixgbe_tx_free_swring,
>  	.reset = ixgbe_reset_tx_queue,
> diff --git a/lib/librte_pmd_ixgbe/ixgbe_rxtx.h b/lib/librte_pmd_ixgbe/ixgbe_rxtx.h
> index 329007c..a85839e 100644
> --- a/lib/librte_pmd_ixgbe/ixgbe_rxtx.h
> +++ b/lib/librte_pmd_ixgbe/ixgbe_rxtx.h
> @@ -211,7 +211,7 @@ struct igb_tx_queue {
>  	uint32_t            ctx_curr;      /**< Hardware context states. */
>  	/** Hardware context0 history. */
>  	struct ixgbe_advctx_info ctx_cache[IXGBE_CTX_NUM];
> -	struct ixgbe_txq_ops *ops;          /**< txq ops */
> +	const struct ixgbe_txq_ops *ops;       /**< txq ops */
>  	uint8_t             tx_deferred_start; /**< not in global dev start. */
>  };
>  
> diff --git a/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c b/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c
> index 1f46f0f..11e9f12 100644
> --- a/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c
> +++ b/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c
> @@ -723,7 +723,7 @@ ixgbe_reset_tx_queue(struct igb_tx_queue *txq)
>  		IXGBE_CTX_NUM * sizeof(struct ixgbe_advctx_info));
>  }
>  
> -static struct ixgbe_txq_ops vec_txq_ops = {
> +static const struct ixgbe_txq_ops vec_txq_ops = {
>  	.release_mbufs = ixgbe_tx_queue_release_mbufs,
>  	.free_swring = ixgbe_tx_free_swring,
>  	.reset = ixgbe_reset_tx_queue,
> -- 
> 2.1.4
> 


More information about the dev mailing list