All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stephen Hemminger <stephen@networkplumber.org>
To: dev@dpdk.org
Cc: Stephen Hemminger <stephen@networkplumber.org>
Subject: [PATCH 07/11] nfp: implement dynamic logging
Date: Mon, 18 Dec 2017 22:38:36 -0800	[thread overview]
Message-ID: <20171219063840.18981-8-stephen@networkplumber.org> (raw)
In-Reply-To: <20171219063840.18981-1-stephen@networkplumber.org>

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
 config/common_base             |  3 ++-
 drivers/net/nfp/nfp_net.c      | 14 ++++++++++++++
 drivers/net/nfp/nfp_net_logs.h | 22 ++++++----------------
 3 files changed, 22 insertions(+), 17 deletions(-)

diff --git a/config/common_base b/config/common_base
index 3695fbe5de27..8d18b3c81db8 100644
--- a/config/common_base
+++ b/config/common_base
@@ -267,7 +267,8 @@ CONFIG_RTE_LIBRTE_ENIC_DEBUG_FLOW=n
 # Compile burst-oriented Netronome NFP PMD driver
 #
 CONFIG_RTE_LIBRTE_NFP_PMD=n
-CONFIG_RTE_LIBRTE_NFP_DEBUG=n
+CONFIG_RTE_LIBRTE_NFP_DEBUG_TX=n
+CONFIG_RTE_LIBRTE_NFP_DEBUG_RX=n
 
 #
 # Compile Marvell PMD driver
diff --git a/drivers/net/nfp/nfp_net.c b/drivers/net/nfp/nfp_net.c
index 0501156bacb7..b9055e1030fa 100644
--- a/drivers/net/nfp/nfp_net.c
+++ b/drivers/net/nfp/nfp_net.c
@@ -2984,6 +2984,9 @@ static int nfp_pf_pci_probe(struct rte_pci_driver *pci_drv __rte_unused,
 	return ret;
 }
 
+int nfp_logtype_init;
+int nfp_logtype_driver;
+
 static const struct rte_pci_id pci_id_nfp_pf_net_map[] = {
 	{
 		RTE_PCI_DEVICE(PCI_VENDOR_ID_NETRONOME,
@@ -3057,6 +3060,17 @@ RTE_PMD_REGISTER_PCI_TABLE(net_nfp_vf, pci_id_nfp_vf_net_map);
 RTE_PMD_REGISTER_KMOD_DEP(net_nfp_pf, "* igb_uio | uio_pci_generic | vfio");
 RTE_PMD_REGISTER_KMOD_DEP(net_nfp_vf, "* igb_uio | uio_pci_generic | vfio");
 
+RTE_INIT(nfp_init_log);
+static void
+nfp_init_log(void)
+{
+	nfp_logtype_init = rte_log_register("pmd.nfp.init");
+	if (nfp_logtype_init >= 0)
+		rte_log_set_level(nfp_logtype_init, RTE_LOG_NOTICE);
+	nfp_logtype_driver = rte_log_register("pmd.nfp.driver");
+	if (nfp_logtype_driver >= 0)
+		rte_log_set_level(nfp_logtype_driver, RTE_LOG_NOTICE);
+}
 /*
  * Local variables:
  * c-file-style: "Linux"
diff --git a/drivers/net/nfp/nfp_net_logs.h b/drivers/net/nfp/nfp_net_logs.h
index 0b966e431f7b..618aaca1d31e 100644
--- a/drivers/net/nfp/nfp_net_logs.h
+++ b/drivers/net/nfp/nfp_net_logs.h
@@ -36,14 +36,10 @@
 
 #define RTE_LIBRTE_NFP_NET_DEBUG_INIT 1
 
-#ifdef RTE_LIBRTE_NFP_NET_DEBUG_INIT
+extern int nfp_logtype_init;
 #define PMD_INIT_LOG(level, fmt, args...) \
 	RTE_LOG(level, PMD, "%s(): " fmt "\n", __func__, ## args)
 #define PMD_INIT_FUNC_TRACE() PMD_INIT_LOG(DEBUG, " >>")
-#else
-#define PMD_INIT_LOG(level, fmt, args...) do { } while (0)
-#define PMD_INIT_FUNC_TRACE() do { } while (0)
-#endif
 
 #ifdef RTE_LIBRTE_NFP_NET_DEBUG_RX
 #define PMD_RX_LOG(level, fmt, args...) \
@@ -55,21 +51,15 @@
 #ifdef RTE_LIBRTE_NFP_NET_DEBUG_TX
 #define PMD_TX_LOG(level, fmt, args...) \
 	RTE_LOG(level, PMD, "%s() tx: " fmt, __func__, ## args)
+#define ASSERT(x) if (!(x)) rte_panic("NFP_NET: x")
 #else
 #define PMD_TX_LOG(level, fmt, args...) do { } while (0)
+#define ASSERT(x) do { } while (0)
 #endif
 
-#ifdef RTE_LIBRTE_NFP_NET_DEBUG_DRIVER
+extern int nfp_logtype_driver;
 #define PMD_DRV_LOG(level, fmt, args...) \
-	RTE_LOG(level, PMD, "%s(): " fmt, __func__, ## args)
-#else
-#define PMD_DRV_LOG(level, fmt, args...) do { } while (0)
-#endif
-
-#ifdef RTE_LIBRTE_NFP_NET_DEBUG_INIT
-#define ASSERT(x) if (!(x)) rte_panic("NFP_NET: x")
-#else
-#define ASSERT(x) do { } while (0)
-#endif
+	rte_log(RTE_LOG_ ## level, nfp_logtype_driver, \
+		"%s(): " fmt, __func__, ## args)
 
 #endif /* _NFP_NET_LOGS_H_ */
-- 
2.11.0

  parent reply	other threads:[~2017-12-19  6:38 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-19  6:38 [PATCH 00/11] Dynamic logging (just do it) Stephen Hemminger
2017-12-19  6:38 ` [PATCH 01/11] avp: implement dynamic logging Stephen Hemminger
2017-12-20  1:53   ` Ferruh Yigit
2017-12-20 18:58     ` Stephen Hemminger
2017-12-21 18:02       ` Ferruh Yigit
2017-12-22 13:45         ` Olivier MATZ
2017-12-19  6:38 ` [PATCH 02/11] bnx2x: " Stephen Hemminger
2017-12-20  1:51   ` Ferruh Yigit
2017-12-20 18:58     ` Stephen Hemminger
2017-12-19  6:38 ` [PATCH 03/11] vmxnet3: " Stephen Hemminger
2017-12-19  6:38 ` [PATCH 04/11] ixgbe: " Stephen Hemminger
2017-12-19  6:38 ` [PATCH 05/11] e1000: " Stephen Hemminger
2017-12-19  6:38 ` [PATCH 06/11] virtio: " Stephen Hemminger
2018-01-09  9:18   ` Maxime Coquelin
2017-12-19  6:38 ` Stephen Hemminger [this message]
2017-12-20  1:52   ` [PATCH 07/11] nfp: " Ferruh Yigit
2017-12-19  6:38 ` [PATCH 08/11] fm10k: " Stephen Hemminger
2017-12-19  6:38 ` [PATCH 09/11] ena: " Stephen Hemminger
2017-12-19  6:38 ` [PATCH 10/11] qede: " Stephen Hemminger
2017-12-19  6:38 ` [PATCH 11/11] lio: " Stephen Hemminger
2017-12-20  1:51 ` [PATCH 00/11] Dynamic logging (just do it) Ferruh Yigit
2017-12-20 18:59   ` Stephen Hemminger
2018-01-09 12:10 ` [PATCH v2 01/12] net/avp: implement dynamic logging Ferruh Yigit
2018-01-09 12:10   ` [PATCH v2 02/12] net/bnx2x: " Ferruh Yigit
2018-01-09 12:10   ` [PATCH v2 03/12] net/vmxnet3: " Ferruh Yigit
2018-01-09 12:10   ` [PATCH v2 04/12] net/ixgbe: " Ferruh Yigit
2018-01-09 12:10   ` [PATCH v2 05/12] net/e1000: " Ferruh Yigit
2018-01-09 12:10   ` [PATCH v2 06/12] net/virtio: " Ferruh Yigit
2018-01-09 12:10   ` [PATCH v2 07/12] net/nfp: fix build when debug enabled Ferruh Yigit
2018-01-10 12:09     ` Ferruh Yigit
2018-01-09 12:10   ` [PATCH v2 08/12] net/nfp: implement dynamic logging Ferruh Yigit
2018-01-09 12:10   ` [PATCH v2 09/12] net/fm10k: " Ferruh Yigit
2018-01-09 12:10   ` [PATCH v2 10/12] net/ena: " Ferruh Yigit
2018-01-09 12:10   ` [PATCH v2 11/12] net/qede: " Ferruh Yigit
2018-01-09 12:10   ` [PATCH v2 12/12] net/liquidio: " Ferruh Yigit
2018-01-09 12:23   ` [PATCH v2 01/12] net/avp: " Ferruh Yigit

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=20171219063840.18981-8-stephen@networkplumber.org \
    --to=stephen@networkplumber.org \
    --cc=dev@dpdk.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.