From: Lukasz Wojciechowski <l.wojciechow@partner.samsung.com>
To: Thomas Monjalon <thomas@monjalon.net>,
Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>,
John McNamara <john.mcnamara@intel.com>,
Marko Kovacevic <marko.kovacevic@intel.com>
Cc: dev@dpdk.org
Subject: [dpdk-dev] [PATCH v1 13/17] rcu: replace library debug flag with global one
Date: Fri, 17 Apr 2020 23:57:35 +0200 [thread overview]
Message-ID: <20200417215739.23180-14-l.wojciechow@partner.samsung.com> (raw)
In-Reply-To: <20200417215739.23180-1-l.wojciechow@partner.samsung.com>
Use global debug flag RTE_DEBUG instead of RTE_LIBRTE_RCU_DEBUG.
The old define is completely removed from source code and config.
Documentation was also updated.
Signed-off-by: Lukasz Wojciechowski <l.wojciechow@partner.samsung.com>
---
config/common_base | 1 -
doc/guides/prog_guide/rcu_lib.rst | 8 ++++----
lib/librte_rcu/rte_rcu_qsbr.h | 16 ++++++++--------
3 files changed, 12 insertions(+), 13 deletions(-)
diff --git a/config/common_base b/config/common_base
index 5863b4327..c22e9a6fe 100644
--- a/config/common_base
+++ b/config/common_base
@@ -915,7 +915,6 @@ CONFIG_RTE_LIBRTE_TELEMETRY=n
# Compile librte_rcu
#
CONFIG_RTE_LIBRTE_RCU=y
-CONFIG_RTE_LIBRTE_RCU_DEBUG=n
#
# Compile librte_rib
diff --git a/doc/guides/prog_guide/rcu_lib.rst b/doc/guides/prog_guide/rcu_lib.rst
index 9b0bf138f..ecdea9c9c 100644
--- a/doc/guides/prog_guide/rcu_lib.rst
+++ b/doc/guides/prog_guide/rcu_lib.rst
@@ -186,7 +186,7 @@ they entered a quiescent state. This API checks if a writer has triggered a
quiescent state query and update the state accordingly.
The ``rte_rcu_qsbr_lock()`` and ``rte_rcu_qsbr_unlock()`` are empty functions.
-However, when ``CONFIG_RTE_LIBRTE_RCU_DEBUG`` is enabled, these APIs aid
-in debugging issues. One can mark the access to shared data structures on the
-reader side using these APIs. The ``rte_rcu_qsbr_quiescent()`` will check if
-all the locks are unlocked.
+However, when ``RTE_DEBUG`` is enabled, these APIs aid in debugging issues.
+One can mark the access to shared data structures on the reader side using
+these APIs. The ``rte_rcu_qsbr_quiescent()`` will check if all the locks
+are unlocked.
diff --git a/lib/librte_rcu/rte_rcu_qsbr.h b/lib/librte_rcu/rte_rcu_qsbr.h
index 0b5585925..bc8ab102c 100644
--- a/lib/librte_rcu/rte_rcu_qsbr.h
+++ b/lib/librte_rcu/rte_rcu_qsbr.h
@@ -45,7 +45,7 @@ extern int rte_rcu_log_type;
#define __RTE_RCU_DP_LOG(level, fmt, args...)
#endif
-#if defined(RTE_LIBRTE_RCU_DEBUG)
+#ifdef RTE_DEBUG
#define __RTE_RCU_IS_LOCK_CNT_ZERO(v, thread_id, level, fmt, args...) do {\
if (v->qsbr_cnt[thread_id].lock_cnt) \
rte_log(RTE_LOG_ ## level, rte_rcu_log_type, \
@@ -78,7 +78,7 @@ struct rte_rcu_qsbr_cnt {
* changes to various APIs.
*/
uint32_t lock_cnt;
- /**< Lock counter. Used when CONFIG_RTE_LIBRTE_RCU_DEBUG is enabled */
+ /**< Lock counter. Used when RTE_DEBUG is enabled */
} __rte_cache_aligned;
#define __RTE_QSBR_CNT_THR_OFFLINE 0
@@ -323,11 +323,11 @@ rte_rcu_qsbr_thread_offline(struct rte_rcu_qsbr *v, unsigned int thread_id)
* This API is provided to aid debugging. This should be called before
* accessing a shared data structure.
*
- * When CONFIG_RTE_LIBRTE_RCU_DEBUG is enabled a lock counter is incremented.
+ * When RTE_DEBUG is enabled a lock counter is incremented.
* Similarly rte_rcu_qsbr_unlock will decrement the counter. When the
* rte_rcu_qsbr_check API will verify that this counter is 0.
*
- * When CONFIG_RTE_LIBRTE_RCU_DEBUG is disabled, this API will do nothing.
+ * When RTE_DEBUG is disabled, this API will do nothing.
*
* @param v
* QS variable
@@ -341,7 +341,7 @@ rte_rcu_qsbr_lock(__rte_unused struct rte_rcu_qsbr *v,
{
RTE_ASSERT(v != NULL && thread_id < v->max_threads);
-#if defined(RTE_LIBRTE_RCU_DEBUG)
+#ifdef RTE_DEBUG
/* Increment the lock counter */
__atomic_fetch_add(&v->qsbr_cnt[thread_id].lock_cnt,
1, __ATOMIC_ACQUIRE);
@@ -360,11 +360,11 @@ rte_rcu_qsbr_lock(__rte_unused struct rte_rcu_qsbr *v,
* This API is provided to aid debugging. This should be called after
* accessing a shared data structure.
*
- * When CONFIG_RTE_LIBRTE_RCU_DEBUG is enabled, rte_rcu_qsbr_unlock will
+ * When RTE_DEBUG is enabled, rte_rcu_qsbr_unlock will
* decrement a lock counter. rte_rcu_qsbr_check API will verify that this
* counter is 0.
*
- * When CONFIG_RTE_LIBRTE_RCU_DEBUG is disabled, this API will do nothing.
+ * When RTE_DEBUG is disabled, this API will do nothing.
*
* @param v
* QS variable
@@ -378,7 +378,7 @@ rte_rcu_qsbr_unlock(__rte_unused struct rte_rcu_qsbr *v,
{
RTE_ASSERT(v != NULL && thread_id < v->max_threads);
-#if defined(RTE_LIBRTE_RCU_DEBUG)
+#ifdef RTE_DEBUG
/* Decrement the lock counter */
__atomic_fetch_sub(&v->qsbr_cnt[thread_id].lock_cnt,
1, __ATOMIC_RELEASE);
--
2.17.1
next prev parent reply other threads:[~2020-04-17 22:00 UTC|newest]
Thread overview: 74+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CGME20200417215755eucas1p25660167c57c26ef04a82a8bb981e07b5@eucas1p2.samsung.com>
2020-04-17 21:57 ` [dpdk-dev] [PATCH v1 00/17] introduce global debug flag Lukasz Wojciechowski
[not found] ` <CGME20200417215756eucas1p107941824d555cdc91899d529d3c4ee67@eucas1p1.samsung.com>
2020-04-17 21:57 ` [dpdk-dev] [PATCH v1 01/17] config: " Lukasz Wojciechowski
[not found] ` <CGME20200417215756eucas1p13a995889338901b81bf2a59a5a4f1260@eucas1p1.samsung.com>
2020-04-17 21:57 ` [dpdk-dev] [PATCH v1 02/17] config: remove unused config flags Lukasz Wojciechowski
[not found] ` <CGME20200417215759eucas1p1c0fcc3046d87dc9de1d15572ba6b7caa@eucas1p1.samsung.com>
2020-04-17 21:57 ` [dpdk-dev] [PATCH v1 03/17] ethdev: replace library debug flag with global one Lukasz Wojciechowski
2020-04-20 9:04 ` Dumitrescu, Cristian
2020-04-20 13:37 ` Ananyev, Konstantin
2020-04-20 14:21 ` Bruce Richardson
2020-04-20 14:43 ` Lukasz Wojciechowski
2020-04-20 17:11 ` Bruce Richardson
2020-04-20 17:21 ` Thomas Monjalon
2020-04-20 17:30 ` Bruce Richardson
2020-04-20 17:34 ` Lukasz Wojciechowski
2023-06-12 16:23 ` Stephen Hemminger
2020-04-20 17:35 ` Thomas Monjalon
2020-04-20 18:57 ` Bruce Richardson
2020-04-21 0:32 ` Ananyev, Konstantin
2020-04-21 20:58 ` Lukasz Wojciechowski
2020-04-21 21:38 ` Thomas Monjalon
2020-04-22 10:41 ` Lukasz Wojciechowski
2020-04-22 10:55 ` Bruce Richardson
2020-04-22 11:02 ` Thomas Monjalon
2020-04-22 11:16 ` Bruce Richardson
2020-04-22 11:29 ` Ananyev, Konstantin
2020-04-22 12:24 ` Thomas Monjalon
2020-07-09 14:09 ` Lukasz Wojciechowski
2020-07-14 10:30 ` Ananyev, Konstantin
2020-04-22 11:52 ` Lukasz Wojciechowski
2020-04-22 12:44 ` Bruce Richardson
2020-04-20 17:24 ` Bruce Richardson
[not found] ` <CGME20200417215800eucas1p2f3a71aaf69584fc37c9c4a47c3a2d39d@eucas1p2.samsung.com>
2020-04-17 21:57 ` [dpdk-dev] [PATCH v1 04/17] eventdev: " Lukasz Wojciechowski
2020-04-18 9:41 ` [dpdk-dev] [EXT] " Jerin Jacob Kollanukkaran
2020-04-18 9:53 ` Thomas Monjalon
2020-04-18 10:05 ` Jerin Jacob
2020-04-18 13:22 ` Thomas Monjalon
[not found] ` <CGME20200417215801eucas1p28aefc04e119aa5de16a7f0771bb0e268@eucas1p2.samsung.com>
2020-04-17 21:57 ` [dpdk-dev] [PATCH v1 05/17] fib: " Lukasz Wojciechowski
[not found] ` <CGME20200417215801eucas1p25e56a60eda9b741ba26e686b90ed8e28@eucas1p2.samsung.com>
2020-04-17 21:57 ` [dpdk-dev] [PATCH v1 06/17] cmdline: " Lukasz Wojciechowski
[not found] ` <CGME20200417215802eucas1p27d4041768b717226b7161d0b896c3261@eucas1p2.samsung.com>
2020-04-17 21:57 ` [dpdk-dev] [PATCH v1 07/17] hash: " Lukasz Wojciechowski
[not found] ` <CGME20200417215803eucas1p16013610674ce6ac58189259f2632f562@eucas1p1.samsung.com>
2020-04-17 21:57 ` [dpdk-dev] [PATCH v1 08/17] ip_frag: " Lukasz Wojciechowski
[not found] ` <CGME20200417215804eucas1p2c04d6f2141be07b25f0d346c73d4f965@eucas1p2.samsung.com>
2020-04-17 21:57 ` [dpdk-dev] [PATCH v1 09/17] lpm: " Lukasz Wojciechowski
[not found] ` <CGME20200417215805eucas1p114b3286afa16d6f12916048234f3a159@eucas1p1.samsung.com>
2020-04-17 21:57 ` [dpdk-dev] [PATCH v1 10/17] mbuf: " Lukasz Wojciechowski
[not found] ` <CGME20200417215805eucas1p2530efed5c5a73df8cc5fb613b11dfdde@eucas1p2.samsung.com>
2020-04-17 21:57 ` [dpdk-dev] [PATCH v1 11/17] mempool: " Lukasz Wojciechowski
[not found] ` <CGME20200417215806eucas1p1df0cf8a6cfe65dd687dde9056854bbad@eucas1p1.samsung.com>
2020-04-17 21:57 ` [dpdk-dev] [PATCH v1 12/17] power: " Lukasz Wojciechowski
[not found] ` <CGME20200417215807eucas1p14de926321e5a683224f7550ae902af5b@eucas1p1.samsung.com>
2020-04-17 21:57 ` Lukasz Wojciechowski [this message]
[not found] ` <CGME20200417215808eucas1p26bb784466131275eeccff018ecac83ca@eucas1p2.samsung.com>
2020-04-17 21:57 ` [dpdk-dev] [PATCH v1 14/17] timer: " Lukasz Wojciechowski
[not found] ` <CGME20200417215808eucas1p1aa9a24a464a4470d27b6c770d2e8c297@eucas1p1.samsung.com>
2020-04-17 21:57 ` [dpdk-dev] [PATCH v1 15/17] vhost: " Lukasz Wojciechowski
[not found] ` <CGME20200417215809eucas1p1d826c921a9880007af4ee4282dda5d32@eucas1p1.samsung.com>
2020-04-17 21:57 ` [dpdk-dev] [PATCH v1 16/17] eal: " Lukasz Wojciechowski
[not found] ` <CGME20200417215810eucas1p17a63d33a4d49c8866733a33ce717484b@eucas1p1.samsung.com>
2020-04-17 21:57 ` [dpdk-dev] [PATCH v1 17/17] sched: " Lukasz Wojciechowski
2020-04-20 9:04 ` Dumitrescu, Cristian
[not found] ` <CGME20200422214613eucas1p153ed981de395ef1b800364a003da85e5@eucas1p1.samsung.com>
2020-04-22 21:45 ` [dpdk-dev] [PATCH v2 0/3] introduce global debug flag Lukasz Wojciechowski
[not found] ` <CGME20200422214614eucas1p1044184e60bcb04469783ef0dd95091c1@eucas1p1.samsung.com>
2020-04-22 21:45 ` [dpdk-dev] [PATCH v2 1/3] config: introduce global rte " Lukasz Wojciechowski
2020-06-26 16:56 ` Bruce Richardson
2020-06-28 8:40 ` Andrew Rybchenko
2020-07-09 13:51 ` Lukasz Wojciechowski
2020-07-09 14:09 ` Bruce Richardson
2020-07-09 14:13 ` Lukasz Wojciechowski
[not found] ` <CGME20200422214614eucas1p2ad5c7a54972cf47f182f51ba3346027b@eucas1p2.samsung.com>
2020-04-22 21:45 ` [dpdk-dev] [PATCH v2 2/3] config: remove unused config flags Lukasz Wojciechowski
2020-06-26 16:56 ` Bruce Richardson
[not found] ` <CGME20200422214615eucas1p2a50ce20695a77b5b2888fd4521296094@eucas1p2.samsung.com>
2020-04-22 21:45 ` [dpdk-dev] [PATCH v2 3/3] mbuf: standardize library debug flag Lukasz Wojciechowski
2020-06-26 17:00 ` Bruce Richardson
2020-07-09 13:50 ` Lukasz Wojciechowski
2020-04-24 9:09 ` [dpdk-dev] [PATCH v2 0/3] introduce global " Bruce Richardson
2020-04-24 10:14 ` Lukasz Wojciechowski
[not found] ` <CGME20200709134846eucas1p193d963c3f21f0d5c4985024b6d015042@eucas1p1.samsung.com>
2020-07-09 13:48 ` [dpdk-dev] [PATCH v3 0/4] " Lukasz Wojciechowski
[not found] ` <CGME20200709134847eucas1p2698cc0b2de3751aba984d306beb9d8f1@eucas1p2.samsung.com>
2020-07-09 13:48 ` [dpdk-dev] [PATCH v3 1/4] config: introduce global rte " Lukasz Wojciechowski
[not found] ` <CGME20200709134847eucas1p2c772544e09360a0b05e95e20c36fb0b8@eucas1p2.samsung.com>
2020-07-09 13:48 ` [dpdk-dev] [PATCH v3 2/4] config: remove unused config flags Lukasz Wojciechowski
2020-07-16 7:43 ` David Marchand
2020-07-16 8:41 ` Ruifeng Wang
[not found] ` <CGME20200709134848eucas1p1b78c9b2d4556ae3047d52e9d6e41b11c@eucas1p1.samsung.com>
2020-07-09 13:48 ` [dpdk-dev] [PATCH v3 3/4] mbuf: standardize library debug flag Lukasz Wojciechowski
[not found] ` <CGME20200709134848eucas1p27b4f137a91aa805e84f981802da2a226@eucas1p2.samsung.com>
2020-07-09 13:48 ` [dpdk-dev] [PATCH v3 4/4] app/test: add mbuf perf tests Lukasz Wojciechowski
2020-07-11 15:11 ` [dpdk-dev] [PATCH v3 0/4] introduce global debug flag Thomas Monjalon
2020-07-13 9:04 ` Bruce Richardson
2020-07-13 22:44 ` Lukasz Wojciechowski
2020-07-13 22:39 ` Lukasz Wojciechowski
2020-07-14 1:23 ` Stephen Hemminger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200417215739.23180-14-l.wojciechow@partner.samsung.com \
--to=l.wojciechow@partner.samsung.com \
--cc=dev@dpdk.org \
--cc=honnappa.nagarahalli@arm.com \
--cc=john.mcnamara@intel.com \
--cc=marko.kovacevic@intel.com \
--cc=thomas@monjalon.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).