[PATCH v2 02/32] net/sssnic: add log type and log macros
wanry at 3snic.com
wanry at 3snic.com
Thu Aug 31 11:56:20 CEST 2023
From: Renyong Wan <wanry at 3snic.com>
Adding log macros to print runtime messages and trace functions.
Signed-off-by: Steven Song <steven.song at 3snic.com>
Signed-off-by: Renyong Wan <wanry at 3snic.com>
---
drivers/net/sssnic/sssnic_ethdev.c | 13 ++++++++
drivers/net/sssnic/sssnic_log.h | 51 ++++++++++++++++++++++++++++++
2 files changed, 64 insertions(+)
create mode 100644 drivers/net/sssnic/sssnic_log.h
diff --git a/drivers/net/sssnic/sssnic_ethdev.c b/drivers/net/sssnic/sssnic_ethdev.c
index dcda01eeb8..0f1017af9d 100644
--- a/drivers/net/sssnic/sssnic_ethdev.c
+++ b/drivers/net/sssnic/sssnic_ethdev.c
@@ -5,11 +5,14 @@
#include <rte_common.h>
#include <ethdev_pci.h>
+#include "sssnic_log.h"
+
static int
sssnic_pci_probe(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev)
{
RTE_SET_USED(pci_drv);
RTE_SET_USED(pci_dev);
+ PMD_INIT_FUNC_TRACE();
return -EINVAL;
}
@@ -17,6 +20,7 @@ static int
sssnic_pci_remove(struct rte_pci_device *pci_dev)
{
RTE_SET_USED(pci_dev);
+ PMD_INIT_FUNC_TRACE();
return -EINVAL;
}
@@ -26,3 +30,12 @@ static struct rte_pci_driver sssnic_pmd = {
};
RTE_PMD_REGISTER_PCI(net_sssnic, sssnic_pmd);
+
+RTE_LOG_REGISTER_SUFFIX(sssnic_logtype_driver, driver, INFO);
+RTE_LOG_REGISTER_SUFFIX(sssnic_logtype_init, init, NOTICE);
+#ifdef RTE_ETHDEV_DEBUG_RX
+RTE_LOG_REGISTER_SUFFIX(sssnic_logtype_rx, rx, DEBUG);
+#endif /*RTE_ETHDEV_DEBUG_RX*/
+#ifdef RTE_ETHDEV_DEBUG_TX
+RTE_LOG_REGISTER_SUFFIX(sssnic_logtype_tx, tx, DEBUG);
+#endif /*RTE_ETHDEV_DEBUG_TX*/
diff --git a/drivers/net/sssnic/sssnic_log.h b/drivers/net/sssnic/sssnic_log.h
new file mode 100644
index 0000000000..629e12100c
--- /dev/null
+++ b/drivers/net/sssnic/sssnic_log.h
@@ -0,0 +1,51 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(c) 2018-2022 Shenzhen 3SNIC Information Technology Co., Ltd.
+ */
+
+#ifndef _SSSNIC_LOG_H_
+#define _SSSNIC_LOG_H_
+
+#include <rte_log.h>
+
+extern int sssnic_logtype_driver;
+extern int sssnic_logtype_init;
+
+#define SSSNIC_LOG_NAME "sssnic"
+#define PMD_DRV_LOG(level, fmt, args...) \
+ rte_log(RTE_LOG_##level, sssnic_logtype_driver, \
+ SSSNIC_LOG_NAME ": " fmt "\n", ##args)
+#define PMD_INIT_LOG(level, fmt, args...) \
+ rte_log(RTE_LOG_##level, sssnic_logtype_init, "%s(): " fmt "\n", \
+ __func__, ##args)
+
+#define SSSNIC_DEBUG(fmt, args...) \
+ PMD_DRV_LOG(DEBUG, "[%s():%d] " fmt, __func__, __LINE__, ##args)
+
+/*
+ * Trace driver init and uninit.
+ */
+#define PMD_INIT_FUNC_TRACE() PMD_INIT_LOG(DEBUG, " >>")
+
+#ifdef RTE_ETHDEV_DEBUG_RX
+extern int sssnic_logtype_rx;
+#define SSSNIC_RX_LOG(level, fmt, args...) \
+ rte_log(RTE_LOG_##level, sssnic_logtype_rx, \
+ "sssnic_rx: [%s():%d] " fmt "\n", __func__, __LINE__, ##args)
+#else
+#define SSSNIC_RX_LOG(level, fmt, args...) \
+ do { \
+ } while (0)
+#endif /*RTE_ETHDEV_DEBUG_RX*/
+
+#ifdef RTE_ETHDEV_DEBUG_TX
+extern int sssnic_logtype_tx;
+#define SSSNIC_TX_LOG(level, fmt, args...) \
+ rte_log(RTE_LOG_##level, sssnic_logtype_rx, \
+ "sssnic_tx: [%s():%d] " fmt "\n", __func__, __LINE__, ##args)
+#else
+#define SSSNIC_TX_LOG(level, fmt, args...) \
+ do { \
+ } while (0)
+#endif /*RTE_ETHDEV_DEBUG_TX*/
+
+#endif /*_SSSNIC_LOG_H_*/
--
2.27.0
More information about the dev
mailing list