[00/32] Remove use and definition of RTE_STD_C11 macro

Message ID 1691792567-10805-1-git-send-email-roretzla@linux.microsoft.com (mailing list archive)
Headers
Series Remove use and definition of RTE_STD_C11 macro |

Message

Tyler Retzlaff Aug. 11, 2023, 10:22 p.m. UTC
  We now document C11 conformant compiler as a minimum, it's not necessary
to mark C11 feature use with __extension__ to avoid warnings.

Tyler Retzlaff (32):
  timer: remove use of RTE STD C11 macro
  stack: remove use of RTE STD C11 macro
  security: remove use of RTE STD C11 macro
  sched: remove use of RTE STD C11 macro
  ring: remove use of RTE STD C11 macro
  regexdev: remove use of RTE STD C11 macro
  rawdev: remove use of RTE STD C11 macro
  power: remove use of RTE STD C11 macro
  pipeline: remove use of RTE STD C11 macro
  net: remove use of RTE STD C11 macro
  mldev: remove use of RTE STD C11 macro
  mempool: remove use of RTE STD C11 macro
  mbuf: remove use of RTE STD C11 macro
  ip_frag: remove use of RTE STD C11 macro
  hash: remove use of RTE STD C11 macro
  graph: remove use of RTE STD C11 macro
  eventdev: remove use of RTE STD C11 macro
  ethdev: remove use of RTE STD C11 macro
  dmadev: remove use of RTE STD C11 macro
  cryptodev: remove use of RTE STD C11 macro
  examples/ipsec-secgw: remove use of RTE STD C11 macro
  examples/ip_pipeline: remove use of RTE STD C11 macro
  net/sfc: remove use of RTE STD C11 macro
  net/octeontx: remove use of RTE STD C11 macro
  net/mlx5: remove use of RTE STD C11 macro
  net/mlx4: remove use of RTE STD C11 macro
  net/igc: remove use of RTE STD C11 macro
  net/avp: remove use of RTE STD C11 macro
  dma/idxd: remove use of RTE STD C11 macro
  common/mlx5: remove use of RTE STD C11 macro
  common/cnxk: remove use of RTE STD C11 macro
  eal: remove use and definition of RTE STD C11 macro

 drivers/common/cnxk/hw/nix.h            |  7 -------
 drivers/common/cnxk/roc_nix.h           |  1 -
 drivers/common/cnxk/roc_npc.h           |  3 ---
 drivers/common/cnxk/roc_platform.h      |  1 -
 drivers/common/mlx5/mlx5_common_mp.h    |  2 --
 drivers/dma/idxd/idxd_hw_defs.h         |  1 -
 drivers/net/avp/rte_avp_common.h        |  2 --
 drivers/net/igc/igc_ethdev.h            |  2 --
 drivers/net/mlx4/mlx4.h                 |  1 -
 drivers/net/mlx5/mlx5.h                 |  4 ----
 drivers/net/octeontx/octeontx_rxtx.h    |  2 --
 drivers/net/sfc/sfc_flow.h              |  2 --
 drivers/net/sfc/sfc_mae.h               |  1 -
 drivers/net/sfc/sfc_stats.h             |  1 -
 examples/ip_pipeline/pipeline.h         |  2 --
 examples/ip_pipeline/thread.c           |  2 --
 examples/ipsec-secgw/event_helper.h     |  2 --
 examples/ipsec-secgw/flow.c             |  1 -
 lib/cryptodev/cryptodev_pmd.h           |  2 +-
 lib/cryptodev/rte_crypto_asym.h         |  4 ----
 lib/cryptodev/rte_crypto_sym.h          |  3 ---
 lib/cryptodev/rte_cryptodev.h           |  2 --
 lib/dmadev/rte_dmadev.h                 |  1 -
 lib/eal/common/eal_common_proc.c        |  1 -
 lib/eal/common/eal_interrupts.h         |  1 -
 lib/eal/common/malloc_mp.h              |  2 --
 lib/eal/include/generic/rte_atomic.h    |  2 --
 lib/eal/include/rte_common.h            |  7 -------
 lib/eal/include/rte_devargs.h           |  1 -
 lib/eal/include/rte_memory.h            |  2 --
 lib/eal/include/rte_memzone.h           |  1 -
 lib/eal/linux/eal_vfio.h                |  1 -
 lib/eal/x86/include/rte_atomic_32.h     |  1 -
 lib/eal/x86/include/rte_cycles.h        |  1 -
 lib/ethdev/rte_flow.h                   | 11 -----------
 lib/ethdev/rte_mtr.h                    |  1 -
 lib/ethdev/rte_tm.h                     |  3 ---
 lib/eventdev/event_timer_adapter_pmd.h  |  1 -
 lib/eventdev/eventdev_pmd.h             |  2 --
 lib/eventdev/rte_event_eth_rx_adapter.c |  1 -
 lib/eventdev/rte_event_timer_adapter.h  |  2 --
 lib/eventdev/rte_eventdev.h             |  1 -
 lib/graph/rte_graph.h                   |  3 ---
 lib/graph/rte_graph_worker_common.h     |  4 ----
 lib/hash/rte_thash.h                    |  2 --
 lib/ip_frag/ip_reassembly.h             |  1 -
 lib/mbuf/rte_mbuf_core.h                |  4 ----
 lib/mempool/rte_mempool.h               |  1 -
 lib/mldev/rte_mldev.h                   |  1 -
 lib/net/rte_ecpri.h                     |  3 ---
 lib/net/rte_higig.h                     |  1 -
 lib/net/rte_l2tpv2.h                    |  2 --
 lib/pipeline/rte_pipeline.h             |  1 -
 lib/pipeline/rte_swx_ipsec.h            |  1 -
 lib/pipeline/rte_table_action.h         |  4 ----
 lib/power/rte_power.h                   |  2 --
 lib/rawdev/rte_rawdev.h                 |  1 -
 lib/regexdev/rte_regexdev.h             |  4 ----
 lib/ring/rte_ring_core.h                |  3 ---
 lib/sched/rte_sched.c                   |  2 --
 lib/security/rte_security.h             |  5 -----
 lib/stack/rte_stack.h                   |  1 -
 lib/timer/rte_timer.h                   |  1 -
 63 files changed, 1 insertion(+), 137 deletions(-)
  

Comments

Bruce Richardson Aug. 14, 2023, 8:40 a.m. UTC | #1
On Fri, Aug 11, 2023 at 03:22:15PM -0700, Tyler Retzlaff wrote:
> We now document C11 conformant compiler as a minimum, it's not necessary
> to mark C11 feature use with __extension__ to avoid warnings.
> 
> Tyler Retzlaff (32):
>   timer: remove use of RTE STD C11 macro
>   stack: remove use of RTE STD C11 macro
>   security: remove use of RTE STD C11 macro
>   sched: remove use of RTE STD C11 macro
>   ring: remove use of RTE STD C11 macro
>   regexdev: remove use of RTE STD C11 macro
>   rawdev: remove use of RTE STD C11 macro
>   power: remove use of RTE STD C11 macro
>   pipeline: remove use of RTE STD C11 macro
>   net: remove use of RTE STD C11 macro
>   mldev: remove use of RTE STD C11 macro
>   mempool: remove use of RTE STD C11 macro
>   mbuf: remove use of RTE STD C11 macro
>   ip_frag: remove use of RTE STD C11 macro
>   hash: remove use of RTE STD C11 macro
>   graph: remove use of RTE STD C11 macro
>   eventdev: remove use of RTE STD C11 macro
>   ethdev: remove use of RTE STD C11 macro
>   dmadev: remove use of RTE STD C11 macro
>   cryptodev: remove use of RTE STD C11 macro
>   examples/ipsec-secgw: remove use of RTE STD C11 macro
>   examples/ip_pipeline: remove use of RTE STD C11 macro
>   net/sfc: remove use of RTE STD C11 macro
>   net/octeontx: remove use of RTE STD C11 macro
>   net/mlx5: remove use of RTE STD C11 macro
>   net/mlx4: remove use of RTE STD C11 macro
>   net/igc: remove use of RTE STD C11 macro
>   net/avp: remove use of RTE STD C11 macro
>   dma/idxd: remove use of RTE STD C11 macro
>   common/mlx5: remove use of RTE STD C11 macro
>   common/cnxk: remove use of RTE STD C11 macro
>   eal: remove use and definition of RTE STD C11 macro
> 
Series-acked-by: Bruce Richardson <bruce.richardson@intel.com>
  
Morten Brørup Aug. 14, 2023, 8:45 a.m. UTC | #2
> From: Tyler Retzlaff [mailto:roretzla@linux.microsoft.com]
> Sent: Saturday, 12 August 2023 00.22
> 
> We now document C11 conformant compiler as a minimum, it's not necessary
> to mark C11 feature use with __extension__ to avoid warnings.

This was an easy one to review. :-)

Reviewed-by: Morten Brørup <mb@smartsharesystems.com>
  
Morten Brørup Aug. 14, 2023, 8:47 a.m. UTC | #3
> From: Morten Brørup
> Sent: Monday, 14 August 2023 10.45
> 
> > From: Tyler Retzlaff [mailto:roretzla@linux.microsoft.com]
> > Sent: Saturday, 12 August 2023 00.22
> >
> > We now document C11 conformant compiler as a minimum, it's not necessary
> > to mark C11 feature use with __extension__ to avoid warnings.
> 
> This was an easy one to review. :-)
> 
> Reviewed-by: Morten Brørup <mb@smartsharesystems.com>

By that, I obviously meant:

Series-Reviewed-by: Morten Brørup <mb@smartsharesystems.com>
  
David Marchand Aug. 16, 2023, 4:32 p.m. UTC | #4
On Sat, Aug 12, 2023 at 12:23 AM Tyler Retzlaff
<roretzla@linux.microsoft.com> wrote:
>
> We now document C11 conformant compiler as a minimum, it's not necessary
> to mark C11 feature use with __extension__ to avoid warnings.
>
> Tyler Retzlaff (32):
>   timer: remove use of RTE STD C11 macro
>   stack: remove use of RTE STD C11 macro
>   security: remove use of RTE STD C11 macro
>   sched: remove use of RTE STD C11 macro
>   ring: remove use of RTE STD C11 macro
>   regexdev: remove use of RTE STD C11 macro
>   rawdev: remove use of RTE STD C11 macro
>   power: remove use of RTE STD C11 macro
>   pipeline: remove use of RTE STD C11 macro
>   net: remove use of RTE STD C11 macro
>   mldev: remove use of RTE STD C11 macro
>   mempool: remove use of RTE STD C11 macro
>   mbuf: remove use of RTE STD C11 macro
>   ip_frag: remove use of RTE STD C11 macro
>   hash: remove use of RTE STD C11 macro
>   graph: remove use of RTE STD C11 macro
>   eventdev: remove use of RTE STD C11 macro
>   ethdev: remove use of RTE STD C11 macro
>   dmadev: remove use of RTE STD C11 macro
>   cryptodev: remove use of RTE STD C11 macro
>   examples/ipsec-secgw: remove use of RTE STD C11 macro
>   examples/ip_pipeline: remove use of RTE STD C11 macro
>   net/sfc: remove use of RTE STD C11 macro
>   net/octeontx: remove use of RTE STD C11 macro
>   net/mlx5: remove use of RTE STD C11 macro
>   net/mlx4: remove use of RTE STD C11 macro
>   net/igc: remove use of RTE STD C11 macro
>   net/avp: remove use of RTE STD C11 macro
>   dma/idxd: remove use of RTE STD C11 macro
>   common/mlx5: remove use of RTE STD C11 macro
>   common/cnxk: remove use of RTE STD C11 macro
>   eal: remove use and definition of RTE STD C11 macro
>
>  drivers/common/cnxk/hw/nix.h            |  7 -------
>  drivers/common/cnxk/roc_nix.h           |  1 -
>  drivers/common/cnxk/roc_npc.h           |  3 ---
>  drivers/common/cnxk/roc_platform.h      |  1 -
>  drivers/common/mlx5/mlx5_common_mp.h    |  2 --
>  drivers/dma/idxd/idxd_hw_defs.h         |  1 -
>  drivers/net/avp/rte_avp_common.h        |  2 --
>  drivers/net/igc/igc_ethdev.h            |  2 --
>  drivers/net/mlx4/mlx4.h                 |  1 -
>  drivers/net/mlx5/mlx5.h                 |  4 ----
>  drivers/net/octeontx/octeontx_rxtx.h    |  2 --
>  drivers/net/sfc/sfc_flow.h              |  2 --
>  drivers/net/sfc/sfc_mae.h               |  1 -
>  drivers/net/sfc/sfc_stats.h             |  1 -
>  examples/ip_pipeline/pipeline.h         |  2 --
>  examples/ip_pipeline/thread.c           |  2 --
>  examples/ipsec-secgw/event_helper.h     |  2 --
>  examples/ipsec-secgw/flow.c             |  1 -
>  lib/cryptodev/cryptodev_pmd.h           |  2 +-
>  lib/cryptodev/rte_crypto_asym.h         |  4 ----
>  lib/cryptodev/rte_crypto_sym.h          |  3 ---
>  lib/cryptodev/rte_cryptodev.h           |  2 --
>  lib/dmadev/rte_dmadev.h                 |  1 -
>  lib/eal/common/eal_common_proc.c        |  1 -
>  lib/eal/common/eal_interrupts.h         |  1 -
>  lib/eal/common/malloc_mp.h              |  2 --
>  lib/eal/include/generic/rte_atomic.h    |  2 --
>  lib/eal/include/rte_common.h            |  7 -------
>  lib/eal/include/rte_devargs.h           |  1 -
>  lib/eal/include/rte_memory.h            |  2 --
>  lib/eal/include/rte_memzone.h           |  1 -
>  lib/eal/linux/eal_vfio.h                |  1 -
>  lib/eal/x86/include/rte_atomic_32.h     |  1 -
>  lib/eal/x86/include/rte_cycles.h        |  1 -
>  lib/ethdev/rte_flow.h                   | 11 -----------
>  lib/ethdev/rte_mtr.h                    |  1 -
>  lib/ethdev/rte_tm.h                     |  3 ---
>  lib/eventdev/event_timer_adapter_pmd.h  |  1 -
>  lib/eventdev/eventdev_pmd.h             |  2 --
>  lib/eventdev/rte_event_eth_rx_adapter.c |  1 -
>  lib/eventdev/rte_event_timer_adapter.h  |  2 --
>  lib/eventdev/rte_eventdev.h             |  1 -
>  lib/graph/rte_graph.h                   |  3 ---
>  lib/graph/rte_graph_worker_common.h     |  4 ----
>  lib/hash/rte_thash.h                    |  2 --
>  lib/ip_frag/ip_reassembly.h             |  1 -
>  lib/mbuf/rte_mbuf_core.h                |  4 ----
>  lib/mempool/rte_mempool.h               |  1 -
>  lib/mldev/rte_mldev.h                   |  1 -
>  lib/net/rte_ecpri.h                     |  3 ---
>  lib/net/rte_higig.h                     |  1 -
>  lib/net/rte_l2tpv2.h                    |  2 --
>  lib/pipeline/rte_pipeline.h             |  1 -
>  lib/pipeline/rte_swx_ipsec.h            |  1 -
>  lib/pipeline/rte_table_action.h         |  4 ----
>  lib/power/rte_power.h                   |  2 --
>  lib/rawdev/rte_rawdev.h                 |  1 -
>  lib/regexdev/rte_regexdev.h             |  4 ----
>  lib/ring/rte_ring_core.h                |  3 ---
>  lib/sched/rte_sched.c                   |  2 --
>  lib/security/rte_security.h             |  5 -----
>  lib/stack/rte_stack.h                   |  1 -
>  lib/timer/rte_timer.h                   |  1 -
>  63 files changed, 1 insertion(+), 137 deletions(-)

Thanks for the cleanup Tyler.
Applied.
  
Thomas Monjalon Aug. 30, 2023, 5:34 p.m. UTC | #5
12/08/2023 00:22, Tyler Retzlaff:
> We now document C11 conformant compiler as a minimum, it's not necessary
> to mark C11 feature use with __extension__ to avoid warnings.

Did you check the occurences of __extension__?
I remember at least the case of bit-fields.
Is there any C standard allowing them?
  
Tyler Retzlaff Aug. 31, 2023, 11:12 p.m. UTC | #6
On Wed, Aug 30, 2023 at 07:34:03PM +0200, Thomas Monjalon wrote:
> 12/08/2023 00:22, Tyler Retzlaff:
> > We now document C11 conformant compiler as a minimum, it's not necessary
> > to mark C11 feature use with __extension__ to avoid warnings.
> 
> Did you check the occurences of __extension__?

i'm aware there is more cleanup to do of __extension__ when it was used
directly instead of via the macro.

> I remember at least the case of bit-fields.
> Is there any C standard allowing them?

i'd have to see the specific example but bit-fields are often things
avoided in the standard text.

the cleanups to use C11 features will be an ongoing work in progress

ty