[dpdk-dev] [PATCH v1 00/17] introduce global debug flag

Lukasz Wojciechowski l.wojciechow at partner.samsung.com
Fri Apr 17 23:57:22 CEST 2020


This set of patches introduces a global debug flag for dpdk.
This will allow easy switch to debug build configuration using a single
flag. In the debug mode a RTE_DEBUG macro is defined to 1
and can be used to place a debug code inside #ifdef #endif clauses.

It should be used for enabling debug code in all dpdk project
components. Using this flag allows to make additional checks or tests
and provide additional logs even in performance sensitive parts of code.

The build system a built-in meson "debug" flag to switch to debug build.


The set of patches introduces the global debug flag and replaces library
debug flags. It is split to many small patches for easier review
as it affects almost all libraries. Before merge it can be squash into
larger patches (if preferred by maintainers).

As a next step I plan to prepare patches for drivers as well.


Lukasz Wojciechowski (17):
  config: introduce global debug flag
  config: remove unused config flags
  ethdev: replace library debug flag with global one
  eventdev: replace library debug flag with global one
  fib: replace library debug flag with global one
  cmdline: replace library debug flag with global one
  hash: replace library debug flag with global one
  ip_frag: replace library debug flag with global one
  lpm: replace library debug flag with global one
  mbuf: replace library debug flag with global one
  mempool: replace library debug flag with global one
  power: replace library debug flag with global one
  rcu: replace library debug flag with global one
  timer: replace library debug flag with global one
  vhost: replace library debug flag with global one
  eal: replace library debug flag with global one
  sched: replace library debug flag with global one

 app/test/test_lpm.c                           |  2 +-
 app/test/test_malloc.c                        |  4 ++--
 app/test/test_mbuf.c                          |  2 +-
 app/test/test_timer_secondary.c               |  2 +-
 config/common_base                            | 19 ------------------
 config/meson.build                            |  4 ++++
 .../prog_guide/env_abstraction_layer.rst      |  5 +++--
 .../prog_guide/ip_fragment_reassembly_lib.rst |  4 ++--
 doc/guides/prog_guide/mbuf_lib.rst            |  2 +-
 doc/guides/prog_guide/mempool_lib.rst         |  7 ++++---
 doc/guides/prog_guide/rcu_lib.rst             |  8 ++++----
 drivers/net/atlantic/atl_rxtx.c               |  2 +-
 drivers/net/e1000/em_rxtx.c                   |  2 +-
 drivers/net/e1000/igb_rxtx.c                  |  2 +-
 drivers/net/ena/ena_ethdev.c                  |  2 +-
 drivers/net/enic/enic_rxtx.c                  |  2 +-
 drivers/net/fm10k/fm10k_rxtx.c                |  2 +-
 drivers/net/hinic/hinic_pmd_tx.c              |  2 +-
 drivers/net/hns3/hns3_rxtx.c                  |  2 +-
 drivers/net/i40e/i40e_rxtx.c                  |  2 +-
 drivers/net/iavf/iavf_rxtx.c                  |  2 +-
 drivers/net/ice/ice_rxtx.c                    |  2 +-
 drivers/net/ixgbe/ixgbe_rxtx.c                |  2 +-
 drivers/net/qede/qede_rxtx.c                  |  4 ++--
 drivers/net/softnic/rte_eth_softnic.c         |  2 +-
 drivers/net/softnic/rte_eth_softnic_thread.c  |  2 +-
 drivers/net/virtio/virtio_rxtx.c              |  2 +-
 drivers/net/vmxnet3/vmxnet3_rxtx.c            |  2 +-
 lib/librte_cmdline/cmdline_cirbuf.h           |  2 +-
 lib/librte_cmdline/cmdline_parse.c            |  2 +-
 lib/librte_cmdline/cmdline_parse_num.c        |  2 +-
 lib/librte_eal/common/malloc_elem.c           |  2 +-
 lib/librte_eal/common/malloc_elem.h           |  4 ++--
 lib/librte_eal/common/rte_malloc.c            |  2 +-
 lib/librte_ethdev/rte_ethdev.h                | 16 +++++++--------
 .../rte_event_eth_tx_adapter.h                |  2 +-
 lib/librte_eventdev/rte_event_timer_adapter.c |  6 +++---
 lib/librte_eventdev/rte_event_timer_adapter.h |  6 +++---
 lib/librte_eventdev/rte_eventdev.h            |  4 ++--
 lib/librte_eventdev/rte_eventdev_pmd.h        |  2 +-
 lib/librte_fib/rte_fib.c                      |  2 +-
 lib/librte_fib/rte_fib6.c                     |  2 +-
 lib/librte_hash/rte_cuckoo_hash.h             |  4 ++--
 lib/librte_ip_frag/ip_frag_common.h           |  4 ++--
 lib/librte_lpm/rte_lpm.c                      |  2 +-
 lib/librte_lpm/rte_lpm.h                      |  2 +-
 lib/librte_mbuf/rte_mbuf.h                    |  6 +++---
 lib/librte_mempool/rte_mempool.c              | 16 +++++++--------
 lib/librte_mempool/rte_mempool.h              | 20 +++++++++----------
 lib/librte_net/rte_net.h                      |  4 ++--
 lib/librte_power/power_acpi_cpufreq.c         |  2 +-
 lib/librte_power/power_pstate_cpufreq.c       |  2 +-
 lib/librte_rcu/rte_rcu_qsbr.h                 | 16 +++++++--------
 lib/librte_sched/rte_sched.c                  | 10 +++++-----
 lib/librte_timer/rte_timer.c                  | 12 +++++------
 lib/librte_timer/rte_timer.h                  |  2 +-
 lib/librte_vhost/vhost.h                      |  2 +-
 lib/librte_vhost/vhost_crypto.c               |  2 +-
 lib/librte_vhost/vhost_user.c                 |  2 +-
 59 files changed, 122 insertions(+), 135 deletions(-)

-- 
2.17.1



More information about the dev mailing list