X-Git-Url: https://git.octo.it/?p=collectd.git;a=blobdiff_plain;f=src%2Fdpdkevents.c;h=4c8196aed48e7a4df708a1dbb2a719eb19260cb4;hp=6fd642ba669dba66fef6ec4f003608e9de7d877c;hb=48efd3deb4c9139fd060ff3d289896e9031bcc7c;hpb=d486225f89ea52d8ed2b4242eba2ad94c409f837 diff --git a/src/dpdkevents.c b/src/dpdkevents.c index 6fd642ba..4c8196ae 100644 --- a/src/dpdkevents.c +++ b/src/dpdkevents.c @@ -32,12 +32,12 @@ #include "collectd.h" -#include "common.h" #include "plugin.h" +#include "utils/common/common.h" #include "semaphore.h" #include "sys/mman.h" -#include "utils_dpdk.h" +#include "utils/dpdk/dpdk.h" #include "utils_time.h" #include @@ -419,8 +419,12 @@ static int dpdk_events_config(oconfig_item_t *ci) { static int dpdk_helper_link_status_get(dpdk_helper_ctx_t *phc) { dpdk_events_ctx_t *ec = DPDK_EVENTS_CTX_GET(phc); - /* get Link Status values from DPDK */ +/* get Link Status values from DPDK */ +#if RTE_VERSION < RTE_VERSION_NUM(18, 05, 0, 0) uint8_t nb_ports = rte_eth_dev_count(); +#else + uint8_t nb_ports = rte_eth_dev_count_avail(); +#endif if (nb_ports == 0) { DPDK_CHILD_LOG("dpdkevent-helper: No DPDK ports available. " "Check bound devices to DPDK driver.\n"); @@ -428,7 +432,7 @@ static int dpdk_helper_link_status_get(dpdk_helper_ctx_t *phc) { } ec->nb_ports = nb_ports > RTE_MAX_ETHPORTS ? RTE_MAX_ETHPORTS : nb_ports; - for (int i = 0; i < ec->nb_ports; i++) { + for (unsigned int i = 0; i < ec->nb_ports; i++) { if (ec->config.link_status.enabled_port_mask & (1 << i)) { struct rte_eth_link link; ec->link_info[i].read_time = cdtime(); @@ -497,7 +501,7 @@ static int dpdk_events_link_status_dispatch(dpdk_helper_ctx_t *phc) { ec->nb_ports); /* dispatch Link Status values to collectd */ - for (int i = 0; i < ec->nb_ports; i++) { + for (unsigned int i = 0; i < ec->nb_ports; i++) { if (ec->config.link_status.enabled_port_mask & (1 << i)) { if (!ec->config.link_status.send_updated || ec->link_info[i].status_updated) { @@ -507,17 +511,17 @@ static int dpdk_events_link_status_dispatch(dpdk_helper_ctx_t *phc) { char dev_name[DATA_MAX_NAME_LEN]; if (ec->config.link_status.port_name[i][0] != 0) { - snprintf(dev_name, sizeof(dev_name), "%s", - ec->config.link_status.port_name[i]); + ssnprintf(dev_name, sizeof(dev_name), "%s", + ec->config.link_status.port_name[i]); } else { - snprintf(dev_name, sizeof(dev_name), "port.%d", i); + ssnprintf(dev_name, sizeof(dev_name), "port.%d", i); } if (ec->config.link_status.notify) { int sev = ec->link_info[i].link_status ? NOTIF_OKAY : NOTIF_WARNING; char msg[DATA_MAX_NAME_LEN]; - snprintf(msg, sizeof(msg), "Link Status: %s", - ec->link_info[i].link_status ? "UP" : "DOWN"); + ssnprintf(msg, sizeof(msg), "Link Status: %s", + ec->link_info[i].link_status ? "UP" : "DOWN"); dpdk_events_notification_dispatch(sev, dev_name, ec->link_info[i].read_time, msg); } else { @@ -553,7 +557,7 @@ static void dpdk_events_keep_alive_dispatch(dpdk_helper_ctx_t *phc) { } char core_name[DATA_MAX_NAME_LEN]; - snprintf(core_name, sizeof(core_name), "lcore%u", i); + ssnprintf(core_name, sizeof(core_name), "lcore%u", i); if (!ec->config.keep_alive.send_updated || (ec->core_info[i].lcore_state != @@ -568,34 +572,34 @@ static void dpdk_events_keep_alive_dispatch(dpdk_helper_ctx_t *phc) { switch (ec->config.keep_alive.shm->core_state[i]) { case RTE_KA_STATE_ALIVE: sev = NOTIF_OKAY; - snprintf(msg, sizeof(msg), "lcore %u Keep Alive Status: ALIVE", i); + ssnprintf(msg, sizeof(msg), "lcore %u Keep Alive Status: ALIVE", i); break; case RTE_KA_STATE_MISSING: - snprintf(msg, sizeof(msg), "lcore %u Keep Alive Status: MISSING", i); + ssnprintf(msg, sizeof(msg), "lcore %u Keep Alive Status: MISSING", i); sev = NOTIF_WARNING; break; case RTE_KA_STATE_DEAD: - snprintf(msg, sizeof(msg), "lcore %u Keep Alive Status: DEAD", i); + ssnprintf(msg, sizeof(msg), "lcore %u Keep Alive Status: DEAD", i); sev = NOTIF_FAILURE; break; case RTE_KA_STATE_UNUSED: - snprintf(msg, sizeof(msg), "lcore %u Keep Alive Status: UNUSED", i); + ssnprintf(msg, sizeof(msg), "lcore %u Keep Alive Status: UNUSED", i); sev = NOTIF_OKAY; break; case RTE_KA_STATE_GONE: - snprintf(msg, sizeof(msg), "lcore %u Keep Alive Status: GONE", i); + ssnprintf(msg, sizeof(msg), "lcore %u Keep Alive Status: GONE", i); sev = NOTIF_FAILURE; break; case RTE_KA_STATE_DOZING: - snprintf(msg, sizeof(msg), "lcore %u Keep Alive Status: DOZING", i); + ssnprintf(msg, sizeof(msg), "lcore %u Keep Alive Status: DOZING", i); sev = NOTIF_OKAY; break; case RTE_KA_STATE_SLEEP: - snprintf(msg, sizeof(msg), "lcore %u Keep Alive Status: SLEEP", i); + ssnprintf(msg, sizeof(msg), "lcore %u Keep Alive Status: SLEEP", i); sev = NOTIF_OKAY; break; default: - snprintf(msg, sizeof(msg), "lcore %u Keep Alive Status: UNKNOWN", i); + ssnprintf(msg, sizeof(msg), "lcore %u Keep Alive Status: UNKNOWN", i); sev = NOTIF_FAILURE; }