#include <string.h>
+#include <rte_string_fns.h>
#include <rte_eal.h>
#include <rte_eal_memconfig.h>
#include <rte_memory.h>
member_list = RTE_TAILQ_CAST(rte_member_tailq.head, rte_member_list);
- rte_rwlock_read_lock(RTE_EAL_TAILQ_RWLOCK);
+ rte_mcfg_tailq_read_lock();
TAILQ_FOREACH(te, member_list, next) {
setsum = (struct rte_member_setsum *) te->data;
if (strncmp(name, setsum->name, RTE_MEMBER_NAMESIZE) == 0)
break;
}
- rte_rwlock_read_unlock(RTE_EAL_TAILQ_RWLOCK);
+ rte_mcfg_tailq_read_unlock();
if (te == NULL) {
rte_errno = ENOENT;
if (setsum == NULL)
return;
member_list = RTE_TAILQ_CAST(rte_member_tailq.head, rte_member_list);
- rte_rwlock_write_lock(RTE_EAL_TAILQ_RWLOCK);
+ rte_mcfg_tailq_write_lock();
TAILQ_FOREACH(te, member_list, next) {
if (te->data == (void *)setsum)
break;
}
if (te == NULL) {
- rte_rwlock_write_unlock(RTE_EAL_TAILQ_RWLOCK);
+ rte_mcfg_tailq_write_unlock();
return;
}
TAILQ_REMOVE(member_list, te, next);
- rte_rwlock_write_unlock(RTE_EAL_TAILQ_RWLOCK);
+ rte_mcfg_tailq_write_unlock();
switch (setsum->type) {
case RTE_MEMBER_TYPE_HT:
member_list = RTE_TAILQ_CAST(rte_member_tailq.head, rte_member_list);
- rte_rwlock_write_lock(RTE_EAL_TAILQ_RWLOCK);
+ rte_mcfg_tailq_write_lock();
TAILQ_FOREACH(te, member_list, next) {
- setsum = (struct rte_member_setsum *) te->data;
+ setsum = te->data;
if (strncmp(params->name, setsum->name,
RTE_MEMBER_NAMESIZE) == 0)
break;
}
/* Create a new setsum structure */
- setsum = (struct rte_member_setsum *) rte_zmalloc_socket(params->name,
+ setsum = rte_zmalloc_socket(params->name,
sizeof(struct rte_member_setsum), RTE_CACHE_LINE_SIZE,
params->socket_id);
if (setsum == NULL) {
RTE_MEMBER_LOG(ERR, "Create setsummary failed\n");
goto error_unlock_exit;
}
- snprintf(setsum->name, sizeof(setsum->name), "%s", params->name);
+ strlcpy(setsum->name, params->name, sizeof(setsum->name));
setsum->type = params->type;
setsum->socket_id = params->socket_id;
setsum->key_len = params->key_len;
te->data = (void *)setsum;
TAILQ_INSERT_TAIL(member_list, te, next);
- rte_rwlock_write_unlock(RTE_EAL_TAILQ_RWLOCK);
+ rte_mcfg_tailq_write_unlock();
return setsum;
error_unlock_exit:
- rte_rwlock_write_unlock(RTE_EAL_TAILQ_RWLOCK);
- rte_member_free(setsum);
+ rte_free(te);
+ rte_free(setsum);
+ rte_mcfg_tailq_write_unlock();
return NULL;
}
}
}
-RTE_INIT(librte_member_init_log);
-
-static void
-librte_member_init_log(void)
+RTE_INIT(librte_member_init_log)
{
- librte_member_logtype = rte_log_register("librte.member");
+ librte_member_logtype = rte_log_register("lib.member");
if (librte_member_logtype >= 0)
rte_log_set_level(librte_member_logtype, RTE_LOG_DEBUG);
}