> From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Shahaf Shuler
> Sent: Thursday, April 13, 2017 6:29 AM
> To: thomas.monja...@6wind.com
> Cc: adrien.mazarg...@6wind.com; nelio.laranje...@6wind.com; dev@dpdk.org
> Subject: [dpdk-dev] [PATCH] ethdev: fix compilation issue with strict flags
> 
> Compilation error seen while compiling mlx5 in debug mode
> under RHEL 7.3:
> 
> rte_ethdev.h:1670:7: error: type of bit-field 'state' is a GCC extension
>     [-Werror=pedantic]
> 
> Address it by removing the unnecessary bit-field width limitation.
> 
> Fixes: d52268a8b24b ("ethdev: expose device states")
> 
> Signed-off-by: Shahaf Shuler <shah...@mellanox.com>
> ---
>  lib/librte_ether/rte_ethdev.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h
> index d07253874..2d1bc12aa 100644
> --- a/lib/librte_ether/rte_ethdev.h
> +++ b/lib/librte_ether/rte_ethdev.h
> @@ -1667,7 +1667,7 @@ struct rte_eth_dev {
>        * received packets before passing them to the driver for transmission.
>        */
>       struct rte_eth_rxtx_callback *pre_tx_burst_cbs[RTE_MAX_QUEUES_PER_PORT];
> -     enum rte_eth_dev_state state:8; /**< Flag indicating the port state */
> +     enum rte_eth_dev_state state; /**< Flag indicating the port state */
>  } __rte_cache_aligned;
> 
>  struct rte_eth_dev_sriov {


What is the guidelines of changing ABI of an @internal structure?

If I understand correctly, this @internal structure shouldn't be allocated in 
the app - so we can extend it at the end without breaking ABI.

Since the state is at the end of the struct, I think this change is safe.

ABI Validate tool with GCC 5.4.0 says ABI compatible, so

Acked-by: Harry van Haaren <harry.van.haa...@intel.com>

Reply via email to