From: Stephen Hemminger <stephen@networkplumber.org>
To: dev@dpdk.org
Cc: Stephen Hemminger <stephen@networkplumber.org>,
Cristian Dumitrescu <cristian.dumitrescu@intel.com>
Subject: [RFC v2 16/17] sched: replace RTE_LOGTYPE_SCHED with dynamic type
Date: Tue, 7 Feb 2023 15:04:37 -0800 [thread overview]
Message-ID: <20230207230438.1617331-17-stephen@networkplumber.org> (raw)
In-Reply-To: <20230207230438.1617331-1-stephen@networkplumber.org>
Also can remove unused RTE_LOGTYPE_METER
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
lib/eal/common/eal_common_log.c | 2 -
lib/eal/include/rte_log.h | 4 +-
lib/sched/rte_pie.c | 16 +-
lib/sched/rte_sched.c | 297 +++++++++++++-------------------
lib/sched/rte_sched_log.h | 11 ++
5 files changed, 140 insertions(+), 190 deletions(-)
create mode 100644 lib/sched/rte_sched_log.h
diff --git a/lib/eal/common/eal_common_log.c b/lib/eal/common/eal_common_log.c
index 97120543d808..212ccda0a6e8 100644
--- a/lib/eal/common/eal_common_log.c
+++ b/lib/eal/common/eal_common_log.c
@@ -350,8 +350,6 @@ struct logtype {
static const struct logtype logtype_strings[] = {
{RTE_LOGTYPE_EAL, "lib.eal"},
{RTE_LOGTYPE_PMD, "pmd"},
- {RTE_LOGTYPE_METER, "lib.meter"},
- {RTE_LOGTYPE_SCHED, "lib.sched"},
{RTE_LOGTYPE_PORT, "lib.port"},
{RTE_LOGTYPE_TABLE, "lib.table"},
{RTE_LOGTYPE_PIPELINE, "lib.pipeline"},
diff --git a/lib/eal/include/rte_log.h b/lib/eal/include/rte_log.h
index afbd67d55b45..a1549b372767 100644
--- a/lib/eal/include/rte_log.h
+++ b/lib/eal/include/rte_log.h
@@ -37,8 +37,8 @@ extern "C" {
/* was RTE_LOGTYPE_KNI */
/* was RTE_LOGTYPE_ACL */
/* was RTE_LOGTYPE_POWER */
-#define RTE_LOGTYPE_METER 11 /**< Log related to QoS meter. */
-#define RTE_LOGTYPE_SCHED 12 /**< Log related to QoS port scheduler. */
+ /* was RTE_LOGTYPE_METER */
+ /* was RTE_LOGTYPE_SCHED */
#define RTE_LOGTYPE_PORT 13 /**< Log related to port. */
#define RTE_LOGTYPE_TABLE 14 /**< Log related to table. */
#define RTE_LOGTYPE_PIPELINE 15 /**< Log related to pipeline. */
diff --git a/lib/sched/rte_pie.c b/lib/sched/rte_pie.c
index 947e2a059f6f..28ed01e8f11d 100644
--- a/lib/sched/rte_pie.c
+++ b/lib/sched/rte_pie.c
@@ -6,6 +6,8 @@
#include <stdlib.h>
#include <string.h>
+#include "rte_sched_log.h"
+
#include "rte_pie.h"
#ifdef __INTEL_COMPILER
@@ -16,7 +18,7 @@ int
rte_pie_rt_data_init(struct rte_pie *pie)
{
if (pie == NULL) {
- RTE_LOG(ERR, SCHED, "%s: Invalid addr for pie\n", __func__);
+ SCHED_LOG(ERR, "Invalid addr for pie");
return -EINVAL;
}
@@ -38,26 +40,22 @@ rte_pie_config_init(struct rte_pie_config *pie_cfg,
return -1;
if (qdelay_ref <= 0) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for qdelay_ref\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for qdelay_ref");
return -EINVAL;
}
if (dp_update_interval <= 0) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for dp_update_interval\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for dp_update_interval");
return -EINVAL;
}
if (max_burst <= 0) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for max_burst\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for max_burst");
return -EINVAL;
}
if (tailq_th <= 0) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for tailq_th\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for tailq_th");
return -EINVAL;
}
diff --git a/lib/sched/rte_sched.c b/lib/sched/rte_sched.c
index c91697131d3e..fd5bd38070fa 100644
--- a/lib/sched/rte_sched.c
+++ b/lib/sched/rte_sched.c
@@ -6,7 +6,6 @@
#include <string.h>
#include <rte_common.h>
-#include <rte_log.h>
#include <rte_malloc.h>
#include <rte_cycles.h>
#include <rte_prefetch.h>
@@ -17,6 +16,7 @@
#include "rte_sched.h"
#include "rte_sched_common.h"
+#include "rte_sched_log.h"
#include "rte_approx.h"
#ifdef __INTEL_COMPILER
@@ -324,23 +324,20 @@ pipe_profile_check(struct rte_sched_pipe_params *params,
/* Pipe parameters */
if (params == NULL) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for parameter params\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for parameter params");
return -EINVAL;
}
/* TB rate: non-zero, not greater than port rate */
if (params->tb_rate == 0 ||
params->tb_rate > rate) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for tb rate\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for tb rate");
return -EINVAL;
}
/* TB size: non-zero */
if (params->tb_size == 0) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for tb size\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for tb size");
return -EINVAL;
}
@@ -349,38 +346,33 @@ pipe_profile_check(struct rte_sched_pipe_params *params,
if ((qsize[i] == 0 && params->tc_rate[i] != 0) ||
(qsize[i] != 0 && (params->tc_rate[i] == 0 ||
params->tc_rate[i] > params->tb_rate))) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for qsize or tc_rate\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for qsize or tc_rate");
return -EINVAL;
}
}
if (params->tc_rate[RTE_SCHED_TRAFFIC_CLASS_BE] == 0 ||
qsize[RTE_SCHED_TRAFFIC_CLASS_BE] == 0) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for be traffic class rate\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for be traffic class rate");
return -EINVAL;
}
/* TC period: non-zero */
if (params->tc_period == 0) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for tc period\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for tc period");
return -EINVAL;
}
/* Best effort tc oversubscription weight: non-zero */
if (params->tc_ov_weight == 0) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for tc ov weight\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for tc ov weight");
return -EINVAL;
}
/* Queue WRR weights: non-zero */
for (i = 0; i < RTE_SCHED_BE_QUEUES_PER_PIPE; i++) {
if (params->wrr_weights[i] == 0) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for wrr weight\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for wrr weight");
return -EINVAL;
}
}
@@ -396,20 +388,17 @@ subport_profile_check(struct rte_sched_subport_profile_params *params,
/* Check user parameters */
if (params == NULL) {
- RTE_LOG(ERR, SCHED, "%s: "
- "Incorrect value for parameter params\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for parameter params");
return -EINVAL;
}
if (params->tb_rate == 0 || params->tb_rate > rate) {
- RTE_LOG(ERR, SCHED, "%s: "
- "Incorrect value for tb rate\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for tb rate");
return -EINVAL;
}
if (params->tb_size == 0) {
- RTE_LOG(ERR, SCHED, "%s: "
- "Incorrect value for tb size\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for tb size");
return -EINVAL;
}
@@ -417,21 +406,18 @@ subport_profile_check(struct rte_sched_subport_profile_params *params,
uint64_t tc_rate = params->tc_rate[i];
if (tc_rate == 0 || (tc_rate > params->tb_rate)) {
- RTE_LOG(ERR, SCHED, "%s: "
- "Incorrect value for tc rate\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for tc rate");
return -EINVAL;
}
}
if (params->tc_rate[RTE_SCHED_TRAFFIC_CLASS_BE] == 0) {
- RTE_LOG(ERR, SCHED, "%s: "
- "Incorrect tc rate(best effort)\n", __func__);
+ SCHED_LOG(ERR, "Incorrect tc rate(best effort)");
return -EINVAL;
}
if (params->tc_period == 0) {
- RTE_LOG(ERR, SCHED, "%s: "
- "Incorrect value for tc period\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for tc period");
return -EINVAL;
}
@@ -444,29 +430,25 @@ rte_sched_port_check_params(struct rte_sched_port_params *params)
uint32_t i;
if (params == NULL) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for parameter params\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for parameter params");
return -EINVAL;
}
/* socket */
if (params->socket < 0) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for socket id\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for socket id");
return -EINVAL;
}
/* rate */
if (params->rate == 0) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for rate\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for rate");
return -EINVAL;
}
/* mtu */
if (params->mtu == 0) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for mtu\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for mtu");
return -EINVAL;
}
@@ -474,8 +456,7 @@ rte_sched_port_check_params(struct rte_sched_port_params *params)
if (params->n_subports_per_port == 0 ||
params->n_subports_per_port > 1u << 16 ||
!rte_is_power_of_2(params->n_subports_per_port)) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for number of subports\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for number of subports");
return -EINVAL;
}
@@ -483,8 +464,7 @@ rte_sched_port_check_params(struct rte_sched_port_params *params)
params->n_subport_profiles == 0 ||
params->n_max_subport_profiles == 0 ||
params->n_subport_profiles > params->n_max_subport_profiles) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for subport profiles\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for subport profiles");
return -EINVAL;
}
@@ -495,9 +475,8 @@ rte_sched_port_check_params(struct rte_sched_port_params *params)
status = subport_profile_check(p, params->rate);
if (status != 0) {
- RTE_LOG(ERR, SCHED,
- "%s: subport profile check failed(%d)\n",
- __func__, status);
+ SCHED_LOG(ERR, "subport profile check failed(%d)",
+ status);
return -EINVAL;
}
}
@@ -505,8 +484,7 @@ rte_sched_port_check_params(struct rte_sched_port_params *params)
/* n_pipes_per_subport: non-zero, power of 2 */
if (params->n_pipes_per_subport == 0 ||
!rte_is_power_of_2(params->n_pipes_per_subport)) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for maximum pipes number\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for maximum pipes number");
return -EINVAL;
}
@@ -605,14 +583,15 @@ rte_sched_port_log_pipe_profile(struct rte_sched_subport *subport, uint32_t i)
{
struct rte_sched_pipe_profile *p = subport->pipe_profiles + i;
- RTE_LOG(DEBUG, SCHED, "Low level config for pipe profile %u:\n"
+ SCHED_LOG(DEBUG,
+ "Low level config for pipe profile %u:\n"
" Token bucket: period = %"PRIu64", credits per period = %"PRIu64", size = %"PRIu64"\n"
" Traffic classes: period = %"PRIu64",\n"
" credits per period = [%"PRIu64", %"PRIu64", %"PRIu64", %"PRIu64
", %"PRIu64", %"PRIu64", %"PRIu64", %"PRIu64", %"PRIu64", %"PRIu64
", %"PRIu64", %"PRIu64", %"PRIu64"]\n"
" Best-effort traffic class oversubscription: weight = %hhu\n"
- " WRR cost: [%hhu, %hhu, %hhu, %hhu]\n",
+ " WRR cost: [%hhu, %hhu, %hhu, %hhu]",
i,
/* Token bucket */
@@ -648,35 +627,36 @@ rte_sched_port_log_subport_profile(struct rte_sched_port *port, uint32_t i)
{
struct rte_sched_subport_profile *p = port->subport_profiles + i;
- RTE_LOG(DEBUG, SCHED, "Low level config for subport profile %u:\n"
- "Token bucket: period = %"PRIu64", credits per period = %"PRIu64","
- "size = %"PRIu64"\n"
- "Traffic classes: period = %"PRIu64",\n"
- "credits per period = [%"PRIu64", %"PRIu64", %"PRIu64", %"PRIu64
- " %"PRIu64", %"PRIu64", %"PRIu64", %"PRIu64", %"PRIu64", %"PRIu64
- " %"PRIu64", %"PRIu64", %"PRIu64"]\n",
- i,
-
- /* Token bucket */
- p->tb_period,
- p->tb_credits_per_period,
- p->tb_size,
-
- /* Traffic classes */
- p->tc_period,
- p->tc_credits_per_period[0],
- p->tc_credits_per_period[1],
- p->tc_credits_per_period[2],
- p->tc_credits_per_period[3],
- p->tc_credits_per_period[4],
- p->tc_credits_per_period[5],
- p->tc_credits_per_period[6],
- p->tc_credits_per_period[7],
- p->tc_credits_per_period[8],
- p->tc_credits_per_period[9],
- p->tc_credits_per_period[10],
- p->tc_credits_per_period[11],
- p->tc_credits_per_period[12]);
+ SCHED_LOG(DEBUG,
+ "Low level config for subport profile %u:\n"
+ "Token bucket: period = %"PRIu64", credits per period = %"PRIu64","
+ "size = %"PRIu64"\n"
+ "Traffic classes: period = %"PRIu64",\n"
+ "credits per period = [%"PRIu64", %"PRIu64", %"PRIu64", %"PRIu64
+ " %"PRIu64", %"PRIu64", %"PRIu64", %"PRIu64", %"PRIu64", %"PRIu64
+ " %"PRIu64", %"PRIu64", %"PRIu64"]",
+ i,
+
+ /* Token bucket */
+ p->tb_period,
+ p->tb_credits_per_period,
+ p->tb_size,
+
+ /* Traffic classes */
+ p->tc_period,
+ p->tc_credits_per_period[0],
+ p->tc_credits_per_period[1],
+ p->tc_credits_per_period[2],
+ p->tc_credits_per_period[3],
+ p->tc_credits_per_period[4],
+ p->tc_credits_per_period[5],
+ p->tc_credits_per_period[6],
+ p->tc_credits_per_period[7],
+ p->tc_credits_per_period[8],
+ p->tc_credits_per_period[9],
+ p->tc_credits_per_period[10],
+ p->tc_credits_per_period[11],
+ p->tc_credits_per_period[12]);
}
static inline uint64_t
@@ -829,8 +809,7 @@ rte_sched_subport_check_params(struct rte_sched_subport_params *params,
/* Check user parameters */
if (params == NULL) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for parameter params\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for parameter params");
return -EINVAL;
}
@@ -841,14 +820,13 @@ rte_sched_subport_check_params(struct rte_sched_subport_params *params,
uint16_t qsize = params->qsize[i];
if (qsize != 0 && !rte_is_power_of_2(qsize)) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for qsize\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for qsize");
return -EINVAL;
}
}
if (params->qsize[RTE_SCHED_TRAFFIC_CLASS_BE] == 0) {
- RTE_LOG(ERR, SCHED, "%s: Incorrect qsize\n", __func__);
+ SCHED_LOG(ERR, "Incorrect qsize");
return -EINVAL;
}
@@ -856,8 +834,7 @@ rte_sched_subport_check_params(struct rte_sched_subport_params *params,
if (params->n_pipes_per_subport_enabled == 0 ||
params->n_pipes_per_subport_enabled > n_max_pipes_per_subport ||
!rte_is_power_of_2(params->n_pipes_per_subport_enabled)) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for pipes number\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for pipes number");
return -EINVAL;
}
@@ -866,8 +843,7 @@ rte_sched_subport_check_params(struct rte_sched_subport_params *params,
params->n_pipe_profiles == 0 ||
params->n_max_pipe_profiles == 0 ||
params->n_pipe_profiles > params->n_max_pipe_profiles) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for pipe profiles\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for pipe profiles");
return -EINVAL;
}
@@ -877,8 +853,7 @@ rte_sched_subport_check_params(struct rte_sched_subport_params *params,
status = pipe_profile_check(p, rate, ¶ms->qsize[0]);
if (status != 0) {
- RTE_LOG(ERR, SCHED,
- "%s: Pipe profile check failed(%d)\n", __func__, status);
+ SCHED_LOG(ERR, "Pipe profile check failed(%d)", status);
return -EINVAL;
}
}
@@ -895,9 +870,9 @@ rte_sched_port_get_memory_footprint(struct rte_sched_port_params *port_params,
status = rte_sched_port_check_params(port_params);
if (status != 0) {
- RTE_LOG(ERR, SCHED,
- "%s: Port scheduler port params check failed (%d)\n",
- __func__, status);
+ SCHED_LOG(ERR,
+ "Port scheduler port params check failed (%d)",
+ status);
return 0;
}
@@ -909,9 +884,9 @@ rte_sched_port_get_memory_footprint(struct rte_sched_port_params *port_params,
port_params->n_pipes_per_subport,
port_params->rate);
if (status != 0) {
- RTE_LOG(ERR, SCHED,
- "%s: Port scheduler subport params check failed (%d)\n",
- __func__, status);
+ SCHED_LOG(ERR,
+ "Port scheduler subport params check failed (%d)",
+ status);
return 0;
}
@@ -940,8 +915,7 @@ rte_sched_port_config(struct rte_sched_port_params *params)
status = rte_sched_port_check_params(params);
if (status != 0) {
- RTE_LOG(ERR, SCHED,
- "%s: Port scheduler params check failed (%d)\n",
+ SCHED_LOG(ERR, "Port scheduler params check failed (%d)\n",
__func__, status);
return NULL;
}
@@ -955,7 +929,7 @@ rte_sched_port_config(struct rte_sched_port_params *params)
port = rte_zmalloc_socket("qos_params", size0 + size1,
RTE_CACHE_LINE_SIZE, params->socket);
if (port == NULL) {
- RTE_LOG(ERR, SCHED, "%s: Memory allocation fails\n", __func__);
+ SCHED_LOG(ERR, "Memory allocation fails");
return NULL;
}
@@ -964,7 +938,7 @@ rte_sched_port_config(struct rte_sched_port_params *params)
port->subport_profiles = rte_zmalloc_socket("subport_profile", size2,
RTE_CACHE_LINE_SIZE, params->socket);
if (port->subport_profiles == NULL) {
- RTE_LOG(ERR, SCHED, "%s: Memory allocation fails\n", __func__);
+ SCHED_LOG(ERR, "Memory allocation fails");
rte_free(port);
return NULL;
}
@@ -1106,8 +1080,7 @@ rte_sched_red_config(struct rte_sched_port *port,
params->cman_params->red_params[i][j].maxp_inv) != 0) {
rte_sched_free_memory(port, n_subports);
- RTE_LOG(NOTICE, SCHED,
- "%s: RED configuration init fails\n", __func__);
+ SCHED_LOG(NOTICE, "RED configuration init fails");
return -EINVAL;
}
}
@@ -1126,8 +1099,7 @@ rte_sched_pie_config(struct rte_sched_port *port,
for (i = 0; i < RTE_SCHED_TRAFFIC_CLASSES_PER_PIPE; i++) {
if (params->cman_params->pie_params[i].tailq_th > params->qsize[i]) {
- RTE_LOG(NOTICE, SCHED,
- "%s: PIE tailq threshold incorrect\n", __func__);
+ SCHED_LOG(NOTICE, "PIE tailq threshold incorrect");
return -EINVAL;
}
@@ -1138,8 +1110,7 @@ rte_sched_pie_config(struct rte_sched_port *port,
params->cman_params->pie_params[i].tailq_th) != 0) {
rte_sched_free_memory(port, n_subports);
- RTE_LOG(NOTICE, SCHED,
- "%s: PIE configuration init fails\n", __func__);
+ SCHED_LOG(NOTICE, "PIE configuration init fails");
return -EINVAL;
}
}
@@ -1170,14 +1141,12 @@ rte_sched_subport_tc_ov_config(struct rte_sched_port *port,
struct rte_sched_subport *s;
if (port == NULL) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for parameter port\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for parameter port");
return -EINVAL;
}
if (subport_id >= port->n_subports_per_port) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for parameter subport id\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for parameter subport id");
return -EINVAL;
}
@@ -1203,22 +1172,19 @@ rte_sched_subport_config(struct rte_sched_port *port,
/* Check user parameters */
if (port == NULL) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for parameter port\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for parameter port");
return 0;
}
if (subport_id >= port->n_subports_per_port) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for subport id\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for subport id");
ret = -EINVAL;
goto out;
}
if (subport_profile_id >= port->n_max_subport_profiles) {
- RTE_LOG(ERR, SCHED, "%s: "
- "Number of subport profile exceeds the max limit\n",
- __func__);
+ SCHED_LOG(ERR,
+ "Number of subport profile exceeds the max limit");
ret = -EINVAL;
goto out;
}
@@ -1233,9 +1199,9 @@ rte_sched_subport_config(struct rte_sched_port *port,
port->n_pipes_per_subport,
port->rate);
if (status != 0) {
- RTE_LOG(NOTICE, SCHED,
- "%s: Port scheduler params check failed (%d)\n",
- __func__, status);
+ SCHED_LOG(NOTICE,
+ "Port scheduler params check failed (%d)",
+ status);
ret = -EINVAL;
goto out;
}
@@ -1249,8 +1215,7 @@ rte_sched_subport_config(struct rte_sched_port *port,
s = rte_zmalloc_socket("subport_params", size0 + size1,
RTE_CACHE_LINE_SIZE, port->socket);
if (s == NULL) {
- RTE_LOG(ERR, SCHED,
- "%s: Memory allocation fails\n", __func__);
+ SCHED_LOG(ERR, "Memory allocation fails");
ret = -ENOMEM;
goto out;
}
@@ -1281,8 +1246,8 @@ rte_sched_subport_config(struct rte_sched_port *port,
s->cman_enabled = true;
status = rte_sched_cman_config(port, s, params, n_subports);
if (status) {
- RTE_LOG(NOTICE, SCHED,
- "%s: CMAN configuration fails\n", __func__);
+ SCHED_LOG(NOTICE,
+ "CMAN configuration fails");
return status;
}
} else {
@@ -1329,8 +1294,7 @@ rte_sched_subport_config(struct rte_sched_port *port,
s->bmp = rte_bitmap_init(n_subport_pipe_queues, s->bmp_array,
bmp_mem_size);
if (s->bmp == NULL) {
- RTE_LOG(ERR, SCHED,
- "%s: Subport bitmap init error\n", __func__);
+ SCHED_LOG(ERR, "Subport bitmap init error");
ret = -EINVAL;
goto out;
}
@@ -1399,29 +1363,25 @@ rte_sched_pipe_config(struct rte_sched_port *port,
deactivate = (pipe_profile < 0);
if (port == NULL) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for parameter port\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for parameter port");
return -EINVAL;
}
if (subport_id >= port->n_subports_per_port) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for parameter subport id\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for parameter subport id");
ret = -EINVAL;
goto out;
}
s = port->subports[subport_id];
if (pipe_id >= s->n_pipes_per_subport_enabled) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for parameter pipe id\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for parameter pipe id");
ret = -EINVAL;
goto out;
}
if (!deactivate && profile >= s->n_pipe_profiles) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for parameter pipe profile\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for parameter pipe profile");
ret = -EINVAL;
goto out;
}
@@ -1446,9 +1406,9 @@ rte_sched_pipe_config(struct rte_sched_port *port,
s->tc_ov = s->tc_ov_rate > subport_tc_be_rate;
if (s->tc_ov != tc_be_ov) {
- RTE_LOG(DEBUG, SCHED,
- "Subport %u Best-effort TC oversubscription is OFF (%.4lf >= %.4lf)\n",
- subport_id, subport_tc_be_rate, s->tc_ov_rate);
+ SCHED_LOG(DEBUG,
+ "Subport %u Best-effort TC oversubscription is OFF (%.4lf >= %.4lf)",
+ subport_id, subport_tc_be_rate, s->tc_ov_rate);
}
/* Reset the pipe */
@@ -1488,8 +1448,8 @@ rte_sched_pipe_config(struct rte_sched_port *port,
s->tc_ov = s->tc_ov_rate > subport_tc_be_rate;
if (s->tc_ov != tc_be_ov) {
- RTE_LOG(DEBUG, SCHED,
- "Subport %u Best effort TC oversubscription is ON (%.4lf < %.4lf)\n",
+ SCHED_LOG(DEBUG,
+ "Subport %u Best effort TC oversubscription is ON (%.4lf < %.4lf)",
subport_id, subport_tc_be_rate, s->tc_ov_rate);
}
p->tc_ov_period_id = s->tc_ov_period_id;
@@ -1517,15 +1477,13 @@ rte_sched_subport_pipe_profile_add(struct rte_sched_port *port,
/* Port */
if (port == NULL) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for parameter port\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for parameter port");
return -EINVAL;
}
/* Subport id not exceeds the max limit */
if (subport_id > port->n_subports_per_port) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for subport id\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for subport id");
return -EINVAL;
}
@@ -1533,16 +1491,14 @@ rte_sched_subport_pipe_profile_add(struct rte_sched_port *port,
/* Pipe profiles exceeds the max limit */
if (s->n_pipe_profiles >= s->n_max_pipe_profiles) {
- RTE_LOG(ERR, SCHED,
- "%s: Number of pipe profiles exceeds the max limit\n", __func__);
+ SCHED_LOG(ERR, "Number of pipe profiles exceeds the max limit");
return -EINVAL;
}
/* Pipe params */
status = pipe_profile_check(params, port->rate, &s->qsize[0]);
if (status != 0) {
- RTE_LOG(ERR, SCHED,
- "%s: Pipe profile check failed(%d)\n", __func__, status);
+ SCHED_LOG(ERR, "Pipe profile check failed(%d)", status);
return -EINVAL;
}
@@ -1552,8 +1508,7 @@ rte_sched_subport_pipe_profile_add(struct rte_sched_port *port,
/* Pipe profile should not exists */
for (i = 0; i < s->n_pipe_profiles; i++)
if (memcmp(s->pipe_profiles + i, pp, sizeof(*pp)) == 0) {
- RTE_LOG(ERR, SCHED,
- "%s: Pipe profile exists\n", __func__);
+ SCHED_LOG(ERR, "Pipe profile exists");
return -EINVAL;
}
@@ -1580,21 +1535,18 @@ rte_sched_port_subport_profile_add(struct rte_sched_port *port,
/* Port */
if (port == NULL) {
- RTE_LOG(ERR, SCHED, "%s: "
- "Incorrect value for parameter port\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for parameter port");
return -EINVAL;
}
if (params == NULL) {
- RTE_LOG(ERR, SCHED, "%s: "
- "Incorrect value for parameter profile\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for parameter profile");
return -EINVAL;
}
if (subport_profile_id == NULL) {
- RTE_LOG(ERR, SCHED, "%s: "
- "Incorrect value for parameter subport_profile_id\n",
- __func__);
+ SCHED_LOG(ERR,
+ "Incorrect value for parameter subport_profile_id");
return -EINVAL;
}
@@ -1602,16 +1554,14 @@ rte_sched_port_subport_profile_add(struct rte_sched_port *port,
/* Subport profiles exceeds the max limit */
if (port->n_subport_profiles >= port->n_max_subport_profiles) {
- RTE_LOG(ERR, SCHED, "%s: "
- "Number of subport profiles exceeds the max limit\n",
- __func__);
+ SCHED_LOG(ERR,
+ "Number of subport profiles exceeds the max limit");
return -EINVAL;
}
status = subport_profile_check(params, port->rate);
if (status != 0) {
- RTE_LOG(ERR, SCHED,
- "%s: subport profile check failed(%d)\n", __func__, status);
+ SCHED_LOG(ERR, "subport profile check failed", status);
return -EINVAL;
}
@@ -1621,8 +1571,7 @@ rte_sched_port_subport_profile_add(struct rte_sched_port *port,
for (i = 0; i < port->n_subport_profiles; i++)
if (memcmp(port->subport_profiles + i,
dst, sizeof(*dst)) == 0) {
- RTE_LOG(ERR, SCHED,
- "%s: subport profile exists\n", __func__);
+ SCHED_LOG(ERR, "subport profile exists");
return -EINVAL;
}
@@ -1694,26 +1643,22 @@ rte_sched_subport_read_stats(struct rte_sched_port *port,
/* Check user parameters */
if (port == NULL) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for parameter port\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for parameter port");
return -EINVAL;
}
if (subport_id >= port->n_subports_per_port) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for subport id\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for subport id");
return -EINVAL;
}
if (stats == NULL) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for parameter stats\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for parameter stats");
return -EINVAL;
}
if (tc_ov == NULL) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for tc_ov\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for tc_ov");
return -EINVAL;
}
@@ -1742,26 +1687,22 @@ rte_sched_queue_read_stats(struct rte_sched_port *port,
/* Check user parameters */
if (port == NULL) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for parameter port\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for parameter port");
return -EINVAL;
}
if (queue_id >= rte_sched_port_queues_per_port(port)) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for queue id\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for queue id");
return -EINVAL;
}
if (stats == NULL) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for parameter stats\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for parameter stats");
return -EINVAL;
}
if (qlen == NULL) {
- RTE_LOG(ERR, SCHED,
- "%s: Incorrect value for parameter qlen\n", __func__);
+ SCHED_LOG(ERR, "Incorrect value for parameter qlen");
return -EINVAL;
}
subport_qmask = port->n_pipes_per_subport_log2 + 4;
@@ -3002,3 +2943,5 @@ rte_sched_port_dequeue(struct rte_sched_port *port, struct rte_mbuf **pkts, uint
return count;
}
+
+RTE_LOG_REGISTER_SUFFIX(sched_logtype, "sched", INFO);
diff --git a/lib/sched/rte_sched_log.h b/lib/sched/rte_sched_log.h
new file mode 100644
index 000000000000..cbf577faf2cb
--- /dev/null
+++ b/lib/sched/rte_sched_log.h
@@ -0,0 +1,11 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(c) 2010-2014 Intel Corporation
+ */
+
+#include <rte_log.h>
+
+extern int sched_logtype;
+
+#define SCHED_LOG(level, fmt, args...) \
+ rte_log(RTE_LOG_ ## level, sched_logtype, \
+ "%s(): " fmt "\n", __func__, ##args)
--
2.39.1
next prev parent reply other threads:[~2023-02-07 23:07 UTC|newest]
Thread overview: 255+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-07 20:41 [RFC 00/13] Replace static logtypes with static Stephen Hemminger
2023-02-07 20:41 ` [RFC 01/13] doc: document intention to deprecate RTE_LOGTYPE_USER* Stephen Hemminger
2023-02-07 20:41 ` [RFC 02/13] gso: remove logtype Stephen Hemminger
2023-02-07 20:41 ` [RFC 03/13] log: drop unused RTE_LOGTYPE_TIMER Stephen Hemminger
2023-02-07 20:41 ` [RFC 04/13] efd: replace RTE_LOGTYPE_EFD with local type Stephen Hemminger
2023-02-07 20:41 ` [RFC 05/13] mbuf: replace RTE_LOGTYPE_MBUF with dynamic type Stephen Hemminger
2023-02-07 20:41 ` [RFC 06/13] acl: replace LOGTYPE_ACL " Stephen Hemminger
2023-02-07 20:41 ` [RFC 07/13] power: replace RTE_LOGTYPE_POWER " Stephen Hemminger
2023-02-07 20:41 ` [RFC 08/13] ring: replace RTE_LOGTYPE_RING " Stephen Hemminger
2023-02-07 20:41 ` [RFC 09/13] mempool: replace RTE_LOGTYPE_MEMPOOL " Stephen Hemminger
2023-02-07 20:41 ` [RFC 10/13] lpm: replace RTE_LOGTYPE_LPM with dynamic types Stephen Hemminger
2023-02-07 20:41 ` [RFC 11/13] kni: replace RTE_LOGTYPE_KNI with dynamic type Stephen Hemminger
2023-02-07 20:41 ` [RFC 12/13] hash: replace RTE_LOGTYPE_HASH " Stephen Hemminger
2023-02-07 20:41 ` [RFC 13/13] sched: replace RTE_LOGTYPE_SCHED " Stephen Hemminger
2023-02-07 23:04 ` [RFC v2 00/17] static logtype removal Stephen Hemminger
2023-02-07 23:04 ` [RFC v2 01/17] doc: document intention to deprecate RTE_LOGTYPE_USER* Stephen Hemminger
2023-02-07 23:04 ` [RFC v2 02/17] ip_frag: use a dynamic logtype Stephen Hemminger
2023-02-07 23:04 ` [RFC v2 03/17] reorder: " Stephen Hemminger
2023-02-07 23:04 ` [RFC v2 04/17] latencystats: use " Stephen Hemminger
2023-02-07 23:04 ` [RFC v2 05/17] gso: remove logtype Stephen Hemminger
2023-02-07 23:04 ` [RFC v2 06/17] log: drop unused RTE_LOGTYPE_TIMER Stephen Hemminger
2023-02-07 23:04 ` [RFC v2 07/17] efd: replace RTE_LOGTYPE_EFD with local type Stephen Hemminger
2023-02-07 23:04 ` [RFC v2 08/17] mbuf: replace RTE_LOGTYPE_MBUF with dynamic type Stephen Hemminger
2023-02-07 23:04 ` [RFC v2 09/17] acl: replace LOGTYPE_ACL " Stephen Hemminger
2023-02-07 23:04 ` [RFC v2 10/17] power: replace RTE_LOGTYPE_POWER " Stephen Hemminger
2023-02-07 23:04 ` [RFC v2 11/17] ring: replace RTE_LOGTYPE_RING " Stephen Hemminger
2023-02-07 23:04 ` [RFC v2 12/17] mempool: replace RTE_LOGTYPE_MEMPOOL " Stephen Hemminger
2023-02-07 23:04 ` [RFC v2 13/17] lpm: replace RTE_LOGTYPE_LPM with dynamic types Stephen Hemminger
2023-02-07 23:04 ` [RFC v2 14/17] kni: replace RTE_LOGTYPE_KNI with dynamic type Stephen Hemminger
2023-02-07 23:04 ` [RFC v2 15/17] hash: replace RTE_LOGTYPE_HASH " Stephen Hemminger
2023-02-07 23:04 ` Stephen Hemminger [this message]
2023-02-07 23:04 ` [RFC v2 17/17] port: replace RTE_LOGTYPE_PORT " Stephen Hemminger
2023-02-10 1:07 ` [PATCH v3 00/16] Replace use of static logtypes Stephen Hemminger
2023-02-10 1:07 ` [PATCH v3 01/16] gso: remove logtype Stephen Hemminger
2023-02-10 1:47 ` fengchengwen
2023-02-10 2:29 ` Hu, Jiayu
2023-02-10 2:46 ` Stephen Hemminger
2023-02-10 1:07 ` [PATCH v3 02/16] log: drop unused RTE_LOGTYPE_TIMER Stephen Hemminger
2023-02-10 1:07 ` [PATCH v3 03/16] efd: replace RTE_LOGTYPE_EFD with local type Stephen Hemminger
2023-02-10 2:03 ` fengchengwen
2023-02-10 2:47 ` Stephen Hemminger
2023-02-10 1:07 ` [PATCH v3 04/16] mbuf: replace RTE_LOGTYPE_MBUF with dynamic type Stephen Hemminger
2023-02-10 1:07 ` [PATCH v3 05/16] acl: replace LOGTYPE_ACL " Stephen Hemminger
2023-02-10 1:07 ` [PATCH v3 06/16] power: replace RTE_LOGTYPE_POWER " Stephen Hemminger
2023-02-10 1:07 ` [PATCH v3 07/16] ring: replace RTE_LOGTYPE_RING " Stephen Hemminger
2023-02-10 1:07 ` [PATCH v3 08/16] mempool: replace RTE_LOGTYPE_MEMPOOL " Stephen Hemminger
2023-02-10 1:07 ` [PATCH v3 09/16] lpm: replace RTE_LOGTYPE_LPM with dynamic types Stephen Hemminger
2023-02-10 1:07 ` [PATCH v3 10/16] kni: replace RTE_LOGTYPE_KNI with dynamic type Stephen Hemminger
2023-02-10 1:07 ` [PATCH v3 11/16] hash: replace RTE_LOGTYPE_HASH " Stephen Hemminger
2023-02-10 1:07 ` [PATCH v3 12/16] sched: replace RTE_LOGTYPE_SCHED " Stephen Hemminger
2023-02-10 1:07 ` [PATCH v3 13/16] port: replace RTE_LOGTYPE_PORT " Stephen Hemminger
2023-02-10 1:07 ` [PATCH v3 14/16] table: convert RTE_LOGTYPE_TABLE to dynamic logtype Stephen Hemminger
2023-02-10 1:07 ` [PATCH v3 15/16] app/test: remove use of RTE_LOGTYPE_PIPELINE Stephen Hemminger
2023-02-10 1:07 ` [PATCH v3 16/16] pipeline: replace RTE_LOGTYPE_PIPELINE with dynamic log type Stephen Hemminger
2023-02-13 19:55 ` [PATCH v4 00/19] Replace use of static logtypes Stephen Hemminger
2023-02-13 19:55 ` [PATCH v4 01/19] gso: don't log message on non TCP/UDP Stephen Hemminger
2023-02-13 19:55 ` [PATCH v4 02/19] eal: drop no longer used GSO logtype Stephen Hemminger
2023-02-13 19:55 ` [PATCH v4 03/19] log: drop unused RTE_LOGTYPE_TIMER Stephen Hemminger
2023-02-13 19:55 ` [PATCH v4 04/19] efd: replace RTE_LOGTYPE_EFD with dynamic type Stephen Hemminger
2023-02-13 19:55 ` [PATCH v4 05/19] mbuf: replace RTE_LOGTYPE_MBUF " Stephen Hemminger
2023-02-13 19:55 ` [PATCH v4 06/19] acl: replace LOGTYPE_ACL " Stephen Hemminger
2023-02-13 19:55 ` [PATCH v4 07/19] power: replace RTE_LOGTYPE_POWER " Stephen Hemminger
2023-02-13 19:55 ` [PATCH v4 08/19] ring: replace RTE_LOGTYPE_RING " Stephen Hemminger
2023-02-13 19:55 ` [PATCH v4 09/19] mempool: replace RTE_LOGTYPE_MEMPOOL " Stephen Hemminger
2023-02-13 19:55 ` [PATCH v4 10/19] lpm: replace RTE_LOGTYPE_LPM with dynamic types Stephen Hemminger
2023-02-13 19:55 ` [PATCH v4 11/19] kni: replace RTE_LOGTYPE_KNI with dynamic type Stephen Hemminger
2023-02-13 19:55 ` [PATCH v4 12/19] sched: replace RTE_LOGTYPE_SCHED " Stephen Hemminger
2023-02-13 19:55 ` [PATCH v4 13/19] port: replace RTE_LOGTYPE_PORT " Stephen Hemminger
2023-02-13 19:55 ` [PATCH v4 14/19] table: convert RTE_LOGTYPE_TABLE to dynamic logtype Stephen Hemminger
2023-02-13 19:55 ` [PATCH v4 15/19] app/test: remove use of RTE_LOGTYPE_PIPELINE Stephen Hemminger
2023-02-13 19:55 ` [PATCH v4 16/19] pipeline: replace RTE_LOGTYPE_PIPELINE with dynamic type Stephen Hemminger
2023-02-13 19:55 ` [PATCH v4 17/19] hash: move rte_thash_gfni stubs out of header file Stephen Hemminger
2023-02-13 19:55 ` [PATCH v4 18/19] hash: move rte_hash_set_alg out header Stephen Hemminger
2023-02-13 19:55 ` [PATCH v4 19/19] hash: convert RTE_LOGTYPE_HASH to dynamic type Stephen Hemminger
2023-02-14 2:18 ` [PATCH v5 00/22] Replace us of static logtypes Stephen Hemminger
2023-02-14 2:18 ` [PATCH v5 01/22] gso: don't log message on non TCP/UDP Stephen Hemminger
2023-02-14 2:18 ` [PATCH v5 02/22] eal: drop no longer used GSO logtype Stephen Hemminger
2023-02-14 2:18 ` [PATCH v5 03/22] log: drop unused RTE_LOGTYPE_TIMER Stephen Hemminger
2023-02-14 2:18 ` [PATCH v5 04/22] efd: replace RTE_LOGTYPE_EFD with dynamic type Stephen Hemminger
2023-02-14 2:18 ` [PATCH v5 05/22] mbuf: replace RTE_LOGTYPE_MBUF " Stephen Hemminger
2023-02-14 2:18 ` [PATCH v5 06/22] acl: replace LOGTYPE_ACL " Stephen Hemminger
2023-02-14 2:18 ` [PATCH v5 07/22] examples/power: replace use of RTE_LOGTYPE_POWER Stephen Hemminger
2023-02-14 2:18 ` [PATCH v5 08/22] examples/l3fwd-power: " Stephen Hemminger
2023-02-14 2:18 ` [PATCH v5 09/22] power: replace RTE_LOGTYPE_POWER with dynamic type Stephen Hemminger
2023-02-14 2:18 ` [PATCH v5 10/22] ring: replace RTE_LOGTYPE_RING " Stephen Hemminger
2023-02-14 2:18 ` [PATCH v5 11/22] mempool: replace RTE_LOGTYPE_MEMPOOL " Stephen Hemminger
2023-02-14 2:18 ` [PATCH v5 12/22] lpm: replace RTE_LOGTYPE_LPM with dynamic types Stephen Hemminger
2023-02-14 2:18 ` [PATCH v5 13/22] kni: replace RTE_LOGTYPE_KNI with dynamic type Stephen Hemminger
2023-02-14 2:19 ` [PATCH v5 14/22] sched: replace RTE_LOGTYPE_SCHED " Stephen Hemminger
2023-02-14 2:19 ` [PATCH v5 15/22] examples/ipsecgw: replace RTE_LOGTYPE_PORT Stephen Hemminger
2023-02-14 2:19 ` [PATCH v5 16/22] port: replace RTE_LOGTYPE_PORT with dynamic type Stephen Hemminger
2023-02-14 2:19 ` [PATCH v5 17/22] table: convert RTE_LOGTYPE_TABLE to dynamic logtype Stephen Hemminger
2023-02-14 2:19 ` [PATCH v5 18/22] app/test: remove use of RTE_LOGTYPE_PIPELINE Stephen Hemminger
2023-02-14 2:19 ` [PATCH v5 19/22] pipeline: replace RTE_LOGTYPE_PIPELINE with dynamic type Stephen Hemminger
2023-02-14 2:19 ` [PATCH v5 20/22] hash: move rte_thash_gfni stubs out of header file Stephen Hemminger
2023-02-14 2:19 ` [PATCH v5 21/22] hash: move rte_hash_set_alg out header Stephen Hemminger
2023-02-14 2:19 ` [PATCH v5 22/22] hash: convert RTE_LOGTYPE_HASH to dynamic type Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 00/22] Replace use of static logtypes in libraries Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 01/22] gso: don't log message on non TCP/UDP Stephen Hemminger
2023-02-15 7:26 ` Hu, Jiayu
2023-02-15 17:12 ` Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 02/22] eal: drop no longer used GSO logtype Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 03/22] log: drop unused RTE_LOGTYPE_TIMER Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 04/22] efd: replace RTE_LOGTYPE_EFD with dynamic type Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 05/22] mbuf: replace RTE_LOGTYPE_MBUF " Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 06/22] acl: replace LOGTYPE_ACL " Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 07/22] examples/power: replace use of RTE_LOGTYPE_POWER Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 08/22] examples/l3fwd-power: " Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 09/22] power: replace RTE_LOGTYPE_POWER with dynamic type Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 10/22] ring: replace RTE_LOGTYPE_RING " Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 11/22] mempool: replace RTE_LOGTYPE_MEMPOOL " Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 12/22] lpm: replace RTE_LOGTYPE_LPM with dynamic types Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 13/22] kni: replace RTE_LOGTYPE_KNI with dynamic type Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 14/22] sched: replace RTE_LOGTYPE_SCHED " Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 15/22] examples/ipsecgw: replace RTE_LOGTYPE_PORT Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 16/22] port: replace RTE_LOGTYPE_PORT with dynamic type Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 17/22] table: convert RTE_LOGTYPE_TABLE to dynamic logtype Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 18/22] app/test: remove use of RTE_LOGTYPE_PIPELINE Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 19/22] pipeline: replace RTE_LOGTYPE_PIPELINE with dynamic type Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 20/22] hash: move rte_thash_gfni stubs out of header file Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 21/22] hash: move rte_hash_set_alg out header Stephen Hemminger
2023-02-14 22:47 ` [PATCH v6 22/22] hash: convert RTE_LOGTYPE_HASH to dynamic type Stephen Hemminger
2023-02-15 17:23 ` [PATCH v7 00/22] Replace use of static logtypes in libraries Stephen Hemminger
2023-02-15 17:23 ` [PATCH v7 01/22] gso: don't log message on non TCP/UDP Stephen Hemminger
2023-02-16 1:23 ` Hu, Jiayu
2023-02-15 17:23 ` [PATCH v7 02/22] eal: drop no longer used GSO logtype Stephen Hemminger
2023-02-15 17:23 ` [PATCH v7 03/22] log: drop unused RTE_LOGTYPE_TIMER Stephen Hemminger
2023-02-15 17:23 ` [PATCH v7 04/22] efd: replace RTE_LOGTYPE_EFD with dynamic type Stephen Hemminger
2023-02-15 17:23 ` [PATCH v7 05/22] mbuf: replace RTE_LOGTYPE_MBUF " Stephen Hemminger
2023-02-15 17:23 ` [PATCH v7 06/22] acl: replace LOGTYPE_ACL " Stephen Hemminger
2023-02-15 17:23 ` [PATCH v7 07/22] examples/power: replace use of RTE_LOGTYPE_POWER Stephen Hemminger
2023-02-15 17:23 ` [PATCH v7 08/22] examples/l3fwd-power: " Stephen Hemminger
2023-02-15 17:23 ` [PATCH v7 09/22] power: replace RTE_LOGTYPE_POWER with dynamic type Stephen Hemminger
2023-02-22 16:34 ` Hunt, David
2023-02-15 17:23 ` [PATCH v7 10/22] ring: replace RTE_LOGTYPE_RING " Stephen Hemminger
2023-02-15 17:23 ` [PATCH v7 11/22] mempool: replace RTE_LOGTYPE_MEMPOOL " Stephen Hemminger
2023-02-15 17:23 ` [PATCH v7 12/22] lpm: replace RTE_LOGTYPE_LPM with dynamic types Stephen Hemminger
2023-02-15 17:23 ` [PATCH v7 13/22] kni: replace RTE_LOGTYPE_KNI with dynamic type Stephen Hemminger
2023-02-15 17:23 ` [PATCH v7 14/22] sched: replace RTE_LOGTYPE_SCHED " Stephen Hemminger
2023-02-15 17:23 ` [PATCH v7 15/22] examples/ipsecgw: replace RTE_LOGTYPE_PORT Stephen Hemminger
2023-02-15 17:23 ` [PATCH v7 16/22] port: replace RTE_LOGTYPE_PORT with dynamic type Stephen Hemminger
2023-02-15 17:23 ` [PATCH v7 17/22] table: convert RTE_LOGTYPE_TABLE to dynamic logtype Stephen Hemminger
2023-02-15 17:23 ` [PATCH v7 18/22] app/test: remove use of RTE_LOGTYPE_PIPELINE Stephen Hemminger
2023-02-15 17:23 ` [PATCH v7 19/22] pipeline: replace RTE_LOGTYPE_PIPELINE with dynamic type Stephen Hemminger
2023-02-15 17:23 ` [PATCH v7 20/22] hash: move rte_thash_gfni stubs out of header file Stephen Hemminger
2023-02-15 19:14 ` Medvedkin, Vladimir
2023-02-15 17:23 ` [PATCH v7 21/22] hash: move rte_hash_set_alg out header Stephen Hemminger
2023-02-15 17:23 ` [PATCH v7 22/22] hash: convert RTE_LOGTYPE_HASH to dynamic type Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 00/22] Convert static logtypes in libraries Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 01/22] gso: don't log message on non TCP/UDP Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 02/22] eal: drop no longer used GSO logtype Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 03/22] log: drop unused RTE_LOGTYPE_TIMER Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 04/22] efd: replace RTE_LOGTYPE_EFD with dynamic type Stephen Hemminger
2023-02-21 14:55 ` David Marchand
2023-02-21 17:07 ` Stephen Hemminger
2023-03-29 23:31 ` Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 05/22] mbuf: replace RTE_LOGTYPE_MBUF " Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 06/22] acl: replace LOGTYPE_ACL " Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 07/22] examples/power: replace use of RTE_LOGTYPE_POWER Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 08/22] examples/l3fwd-power: " Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 09/22] power: replace RTE_LOGTYPE_POWER with dynamic type Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 10/22] ring: replace RTE_LOGTYPE_RING " Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 11/22] mempool: replace RTE_LOGTYPE_MEMPOOL " Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 12/22] lpm: replace RTE_LOGTYPE_LPM with dynamic types Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 13/22] kni: replace RTE_LOGTYPE_KNI with dynamic type Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 14/22] sched: replace RTE_LOGTYPE_SCHED " Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 15/22] examples/ipsecgw: replace RTE_LOGTYPE_PORT Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 16/22] port: replace RTE_LOGTYPE_PORT with dynamic type Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 17/22] table: convert RTE_LOGTYPE_TABLE to dynamic logtype Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 18/22] app/test: remove use of RTE_LOGTYPE_PIPELINE Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 19/22] pipeline: replace RTE_LOGTYPE_PIPELINE with dynamic type Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 20/22] hash: move rte_thash_gfni stubs out of header file Stephen Hemminger
2023-02-20 23:35 ` [PATCH v8 21/22] hash: move rte_hash_set_alg out header Stephen Hemminger
2023-02-21 15:02 ` David Marchand
2023-02-21 15:10 ` David Marchand
2023-02-20 23:35 ` [PATCH v8 22/22] hash: convert RTE_LOGTYPE_HASH to dynamic type Stephen Hemminger
2023-02-21 19:01 ` [PATCH v9 00/22] Convert static logtypes in libraries Stephen Hemminger
2023-02-21 19:01 ` [PATCH v9 01/22] gso: don't log message on non TCP/UDP Stephen Hemminger
2023-02-21 19:01 ` [PATCH v9 02/22] eal: drop no longer used GSO logtype Stephen Hemminger
2023-02-21 19:01 ` [PATCH v9 03/22] log: drop unused RTE_LOGTYPE_TIMER Stephen Hemminger
2023-02-21 19:01 ` [PATCH v9 04/22] efd: replace RTE_LOGTYPE_EFD with dynamic type Stephen Hemminger
2023-02-21 19:01 ` [PATCH v9 05/22] mbuf: replace RTE_LOGTYPE_MBUF " Stephen Hemminger
2023-02-21 19:01 ` [PATCH v9 06/22] acl: replace LOGTYPE_ACL " Stephen Hemminger
2023-02-21 19:01 ` [PATCH v9 07/22] examples/power: replace use of RTE_LOGTYPE_POWER Stephen Hemminger
2023-02-22 16:34 ` Hunt, David
2023-02-21 19:01 ` [PATCH v9 08/22] examples/l3fwd-power: " Stephen Hemminger
2023-02-22 16:33 ` Hunt, David
2023-02-21 19:01 ` [PATCH v9 09/22] power: replace RTE_LOGTYPE_POWER with dynamic type Stephen Hemminger
2023-02-22 16:32 ` Hunt, David
2023-02-21 19:01 ` [PATCH v9 10/22] ring: replace RTE_LOGTYPE_RING " Stephen Hemminger
2023-02-21 19:01 ` [PATCH v9 11/22] mempool: replace RTE_LOGTYPE_MEMPOOL " Stephen Hemminger
2023-02-21 19:01 ` [PATCH v9 12/22] lpm: replace RTE_LOGTYPE_LPM with dynamic types Stephen Hemminger
2023-02-21 19:01 ` [PATCH v9 13/22] kni: replace RTE_LOGTYPE_KNI with dynamic type Stephen Hemminger
2023-02-21 19:02 ` [PATCH v9 14/22] sched: replace RTE_LOGTYPE_SCHED " Stephen Hemminger
2023-02-21 19:02 ` [PATCH v9 15/22] examples/ipsecgw: replace RTE_LOGTYPE_PORT Stephen Hemminger
2023-02-22 7:37 ` [EXT] " Akhil Goyal
2023-02-21 19:02 ` [PATCH v9 16/22] port: replace RTE_LOGTYPE_PORT with dynamic type Stephen Hemminger
2023-02-21 19:02 ` [PATCH v9 17/22] table: convert RTE_LOGTYPE_TABLE to dynamic logtype Stephen Hemminger
2023-02-21 19:02 ` [PATCH v9 18/22] app/test: remove use of RTE_LOGTYPE_PIPELINE Stephen Hemminger
2023-02-21 19:02 ` [PATCH v9 19/22] pipeline: replace RTE_LOGTYPE_PIPELINE with dynamic type Stephen Hemminger
2023-02-21 19:02 ` [PATCH v9 20/22] hash: move rte_thash_gfni stubs out of header file Stephen Hemminger
2023-02-21 19:02 ` [PATCH v9 21/22] hash: move rte_hash_set_alg out header Stephen Hemminger
2023-02-21 19:02 ` [PATCH v9 22/22] hash: convert RTE_LOGTYPE_HASH to dynamic type Stephen Hemminger
2023-02-22 16:07 ` [PATCH v10 00/22] Convert static log type values in libraries Stephen Hemminger
2023-02-22 16:07 ` [PATCH v10 01/22] gso: don't log message on non TCP/UDP Stephen Hemminger
2023-02-22 16:07 ` [PATCH v10 02/22] eal: drop no longer used GSO logtype Stephen Hemminger
2023-02-22 16:07 ` [PATCH v10 03/22] log: drop unused RTE_LOGTYPE_TIMER Stephen Hemminger
2023-02-22 16:07 ` [PATCH v10 04/22] efd: replace RTE_LOGTYPE_EFD with dynamic type Stephen Hemminger
2023-02-22 16:07 ` [PATCH v10 05/22] mbuf: replace RTE_LOGTYPE_MBUF " Stephen Hemminger
2023-02-22 16:07 ` [PATCH v10 06/22] acl: replace LOGTYPE_ACL " Stephen Hemminger
2023-02-22 16:07 ` [PATCH v10 07/22] examples/power: replace use of RTE_LOGTYPE_POWER Stephen Hemminger
2023-02-22 16:36 ` Hunt, David
2023-02-22 16:07 ` [PATCH v10 08/22] examples/l3fwd-power: " Stephen Hemminger
2023-02-22 16:36 ` Hunt, David
2023-02-22 16:07 ` [PATCH v10 09/22] power: replace RTE_LOGTYPE_POWER with dynamic type Stephen Hemminger
2023-02-22 16:35 ` Hunt, David
2023-02-22 16:07 ` [PATCH v10 10/22] ring: replace RTE_LOGTYPE_RING " Stephen Hemminger
2023-02-22 16:07 ` [PATCH v10 11/22] mempool: replace RTE_LOGTYPE_MEMPOOL " Stephen Hemminger
2023-02-22 16:07 ` [PATCH v10 12/22] lpm: replace RTE_LOGTYPE_LPM with dynamic types Stephen Hemminger
2023-02-22 16:07 ` [PATCH v10 13/22] kni: replace RTE_LOGTYPE_KNI with dynamic type Stephen Hemminger
2023-02-22 16:07 ` [PATCH v10 14/22] sched: replace RTE_LOGTYPE_SCHED " Stephen Hemminger
2023-02-22 16:07 ` [PATCH v10 15/22] examples/ipsecgw: replace RTE_LOGTYPE_PORT Stephen Hemminger
2023-02-22 16:07 ` [PATCH v10 16/22] port: replace RTE_LOGTYPE_PORT with dynamic type Stephen Hemminger
2023-02-22 16:07 ` [PATCH v10 17/22] table: convert RTE_LOGTYPE_TABLE to dynamic logtype Stephen Hemminger
2023-02-22 16:07 ` [PATCH v10 18/22] app/test: remove use of RTE_LOGTYPE_PIPELINE Stephen Hemminger
2023-02-22 16:07 ` [PATCH v10 19/22] pipeline: replace RTE_LOGTYPE_PIPELINE with dynamic type Stephen Hemminger
2023-02-22 16:08 ` [PATCH v10 20/22] hash: move rte_thash_gfni stubs out of header file Stephen Hemminger
2023-02-22 16:08 ` [PATCH v10 21/22] hash: move rte_hash_set_alg out header Stephen Hemminger
2023-02-22 16:08 ` [PATCH v10 22/22] hash: convert RTE_LOGTYPE_HASH to dynamic type Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 00/22] Convert static log type values in libraries Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 01/22] gso: don't log message on non TCP/UDP Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 02/22] eal: drop no longer used GSO logtype Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 03/22] log: drop unused RTE_LOGTYPE_TIMER Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 04/22] efd: replace RTE_LOGTYPE_EFD with dynamic type Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 05/22] mbuf: replace RTE_LOGTYPE_MBUF " Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 06/22] acl: replace LOGTYPE_ACL " Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 07/22] examples/power: replace use of RTE_LOGTYPE_POWER Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 08/22] examples/l3fwd-power: " Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 09/22] power: replace RTE_LOGTYPE_POWER with dynamic type Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 10/22] ring: replace RTE_LOGTYPE_RING " Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 11/22] mempool: replace RTE_LOGTYPE_MEMPOOL " Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 12/22] lpm: replace RTE_LOGTYPE_LPM with dynamic types Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 13/22] kni: replace RTE_LOGTYPE_KNI with dynamic type Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 14/22] sched: replace RTE_LOGTYPE_SCHED " Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 15/22] examples/ipsecgw: replace RTE_LOGTYPE_PORT Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 16/22] port: replace RTE_LOGTYPE_PORT with dynamic type Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 17/22] table: convert RTE_LOGTYPE_TABLE to dynamic logtype Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 18/22] app/test: remove use of RTE_LOGTYPE_PIPELINE Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 19/22] pipeline: replace RTE_LOGTYPE_PIPELINE with dynamic type Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 20/22] hash: move rte_thash_gfni stubs out of header file Stephen Hemminger
2023-02-22 21:55 ` [PATCH v11 21/22] hash: move rte_hash_set_alg out header Stephen Hemminger
2023-02-23 7:11 ` Ruifeng Wang
2023-02-23 7:27 ` Ruifeng Wang
2023-02-24 9:45 ` Ruifeng Wang
2023-02-22 21:55 ` [PATCH v11 22/22] hash: convert RTE_LOGTYPE_HASH to dynamic type 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=20230207230438.1617331-17-stephen@networkplumber.org \
--to=stephen@networkplumber.org \
--cc=cristian.dumitrescu@intel.com \
--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 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).