From 29058550643267a554e0368806dece63b047c5cb Mon Sep 17 00:00:00 2001 From: Luca Boccassi Date: Mon, 19 Nov 2018 12:59:01 +0000 Subject: New upstream version 18.11-rc4 Change-Id: I861e1a2f7df210f57f44f1ad56b9ef789a4675e3 Signed-off-by: Luca Boccassi --- lib/librte_eal/common/eal_common_memalloc.c | 2 +- lib/librte_eal/common/eal_filesystem.h | 4 ---- lib/librte_eal/common/include/rte_version.h | 2 +- lib/librte_eal/common/malloc_elem.c | 6 ++++-- lib/librte_eal/linuxapp/eal/eal_dev.c | 12 ++++++++---- lib/librte_eal/linuxapp/eal/eal_memalloc.c | 3 --- lib/librte_eal/linuxapp/eal/eal_memory.c | 4 ---- lib/librte_efd/rte_efd.c | 3 ++- lib/librte_security/Makefile | 1 - lib/librte_security/meson.build | 1 - lib/librte_security/rte_security.c | 18 +++++++++--------- lib/librte_security/rte_security.h | 27 +++++++++++++-------------- lib/librte_security/rte_security_driver.h | 1 - lib/librte_security/rte_security_version.map | 2 +- 14 files changed, 39 insertions(+), 47 deletions(-) (limited to 'lib') diff --git a/lib/librte_eal/common/eal_common_memalloc.c b/lib/librte_eal/common/eal_common_memalloc.c index 1d41ea11..37127197 100644 --- a/lib/librte_eal/common/eal_common_memalloc.c +++ b/lib/librte_eal/common/eal_common_memalloc.c @@ -77,7 +77,7 @@ eal_memalloc_is_contig(const struct rte_memseg_list *msl, void *start, const struct rte_memseg *ms; /* for IOVA_VA, it's always contiguous */ - if (rte_eal_iova_mode() == RTE_IOVA_VA) + if (rte_eal_iova_mode() == RTE_IOVA_VA && !msl->external) return true; /* for legacy memory, it's always contiguous */ diff --git a/lib/librte_eal/common/eal_filesystem.h b/lib/librte_eal/common/eal_filesystem.h index b3e8ae5e..6e0331fd 100644 --- a/lib/librte_eal/common/eal_filesystem.h +++ b/lib/librte_eal/common/eal_filesystem.h @@ -25,10 +25,6 @@ int eal_create_runtime_dir(void); -/* returns runtime dir */ -const char * -rte_eal_get_runtime_dir(void); - #define RUNTIME_CONFIG_FNAME "config" static inline const char * eal_runtime_config_path(void) diff --git a/lib/librte_eal/common/include/rte_version.h b/lib/librte_eal/common/include/rte_version.h index fc26e97a..45b89430 100644 --- a/lib/librte_eal/common/include/rte_version.h +++ b/lib/librte_eal/common/include/rte_version.h @@ -49,7 +49,7 @@ extern "C" { * 0-15 = release candidates * 16 = release */ -#define RTE_VER_RELEASE 3 +#define RTE_VER_RELEASE 4 /** * Macro to compute a version number usable for comparisons diff --git a/lib/librte_eal/common/malloc_elem.c b/lib/librte_eal/common/malloc_elem.c index 1a74660d..9d3dcb6a 100644 --- a/lib/librte_eal/common/malloc_elem.c +++ b/lib/librte_eal/common/malloc_elem.c @@ -316,13 +316,15 @@ remove_elem(struct malloc_elem *elem) static int next_elem_is_adjacent(struct malloc_elem *elem) { - return elem->next == RTE_PTR_ADD(elem, elem->size); + return elem->next == RTE_PTR_ADD(elem, elem->size) && + elem->next->msl == elem->msl; } static int prev_elem_is_adjacent(struct malloc_elem *elem) { - return elem == RTE_PTR_ADD(elem->prev, elem->prev->size); + return elem == RTE_PTR_ADD(elem->prev, elem->prev->size) && + elem->prev->msl == elem->msl; } /* diff --git a/lib/librte_eal/linuxapp/eal/eal_dev.c b/lib/librte_eal/linuxapp/eal/eal_dev.c index d589c692..2830c868 100644 --- a/lib/librte_eal/linuxapp/eal/eal_dev.c +++ b/lib/librte_eal/linuxapp/eal/eal_dev.c @@ -258,7 +258,7 @@ dev_uev_handler(__rte_unused void *param) if (bus == NULL) { RTE_LOG(ERR, EAL, "Cannot find bus (%s)\n", busname); - return; + goto failure_handle_err; } dev = bus->find_device(NULL, cmp_dev_name, @@ -266,19 +266,23 @@ dev_uev_handler(__rte_unused void *param) if (dev == NULL) { RTE_LOG(ERR, EAL, "Cannot find device (%s) on " "bus (%s)\n", uevent.devname, busname); - return; + goto failure_handle_err; } ret = bus->hot_unplug_handler(dev); - rte_spinlock_unlock(&failure_handle_lock); if (ret) { RTE_LOG(ERR, EAL, "Can not handle hot-unplug " "for device (%s)\n", dev->name); - return; } + rte_spinlock_unlock(&failure_handle_lock); } rte_dev_event_callback_process(uevent.devname, uevent.type); } + + return; + +failure_handle_err: + rte_spinlock_unlock(&failure_handle_lock); } int __rte_experimental diff --git a/lib/librte_eal/linuxapp/eal/eal_memalloc.c b/lib/librte_eal/linuxapp/eal/eal_memalloc.c index 48b9c736..78493956 100644 --- a/lib/librte_eal/linuxapp/eal/eal_memalloc.c +++ b/lib/librte_eal/linuxapp/eal/eal_memalloc.c @@ -753,9 +753,6 @@ mapped: munmap(addr, alloc_sz); unmapped: flags = MAP_FIXED; -#ifdef RTE_ARCH_PPC_64 - flags |= MAP_HUGETLB; -#endif new_addr = eal_get_virtual_area(addr, &alloc_sz, alloc_sz, 0, flags); if (new_addr != addr) { if (new_addr != NULL) diff --git a/lib/librte_eal/linuxapp/eal/eal_memory.c b/lib/librte_eal/linuxapp/eal/eal_memory.c index 48b23ce1..6f94621d 100644 --- a/lib/librte_eal/linuxapp/eal/eal_memory.c +++ b/lib/librte_eal/linuxapp/eal/eal_memory.c @@ -847,10 +847,6 @@ alloc_va_space(struct rte_memseg_list *msl) void *addr; int flags = 0; -#ifdef RTE_ARCH_PPC_64 - flags |= MAP_HUGETLB; -#endif - page_sz = msl->page_sz; mem_sz = page_sz * msl->memseg_arr.len; diff --git a/lib/librte_efd/rte_efd.c b/lib/librte_efd/rte_efd.c index a780e2fe..e6e5cfda 100644 --- a/lib/librte_efd/rte_efd.c +++ b/lib/librte_efd/rte_efd.c @@ -692,7 +692,8 @@ rte_efd_create(const char *name, uint32_t max_num_rules, uint32_t key_len, offline_cpu_socket, 0); if (r == NULL) { RTE_LOG(ERR, EFD, "memory allocation failed\n"); - goto error_unlock_exit; + rte_efd_free(table); + return NULL; } /* Populate free slots ring. Entry zero is reserved for key misses. */ diff --git a/lib/librte_security/Makefile b/lib/librte_security/Makefile index 8daebea4..bd92343b 100644 --- a/lib/librte_security/Makefile +++ b/lib/librte_security/Makefile @@ -10,7 +10,6 @@ LIB = librte_security.a LIBABIVER := 1 # build flags -CFLAGS += -DALLOW_EXPERIMENTAL_API CFLAGS += -O3 CFLAGS += $(WERROR_FLAGS) LDLIBS += -lrte_eal -lrte_mempool diff --git a/lib/librte_security/meson.build b/lib/librte_security/meson.build index 4c85894c..532953fc 100644 --- a/lib/librte_security/meson.build +++ b/lib/librte_security/meson.build @@ -1,7 +1,6 @@ # SPDX-License-Identifier: BSD-3-Clause # Copyright(c) 2017 Intel Corporation -allow_experimental_apis = true sources = files('rte_security.c') headers = files('rte_security.h', 'rte_security_driver.h') deps += ['mempool', 'cryptodev'] diff --git a/lib/librte_security/rte_security.c b/lib/librte_security/rte_security.c index c6355de9..bc81ce15 100644 --- a/lib/librte_security/rte_security.c +++ b/lib/librte_security/rte_security.c @@ -10,7 +10,7 @@ #include "rte_security_driver.h" struct rte_security_session * -__rte_experimental rte_security_session_create(struct rte_security_ctx *instance, +rte_security_session_create(struct rte_security_ctx *instance, struct rte_security_session_conf *conf, struct rte_mempool *mp) { @@ -33,7 +33,7 @@ __rte_experimental rte_security_session_create(struct rte_security_ctx *instance return sess; } -int __rte_experimental +int rte_security_session_update(struct rte_security_ctx *instance, struct rte_security_session *sess, struct rte_security_session_conf *conf) @@ -42,14 +42,14 @@ rte_security_session_update(struct rte_security_ctx *instance, return instance->ops->session_update(instance->device, sess, conf); } -unsigned int __rte_experimental +unsigned int rte_security_session_get_size(struct rte_security_ctx *instance) { RTE_FUNC_PTR_OR_ERR_RET(*instance->ops->session_get_size, 0); return instance->ops->session_get_size(instance->device); } -int __rte_experimental +int rte_security_session_stats_get(struct rte_security_ctx *instance, struct rte_security_session *sess, struct rte_security_stats *stats) @@ -58,7 +58,7 @@ rte_security_session_stats_get(struct rte_security_ctx *instance, return instance->ops->session_stats_get(instance->device, sess, stats); } -int __rte_experimental +int rte_security_session_destroy(struct rte_security_ctx *instance, struct rte_security_session *sess) { @@ -76,7 +76,7 @@ rte_security_session_destroy(struct rte_security_ctx *instance, return ret; } -int __rte_experimental +int rte_security_set_pkt_metadata(struct rte_security_ctx *instance, struct rte_security_session *sess, struct rte_mbuf *m, void *params) @@ -86,7 +86,7 @@ rte_security_set_pkt_metadata(struct rte_security_ctx *instance, sess, m, params); } -void * __rte_experimental +void * rte_security_get_userdata(struct rte_security_ctx *instance, uint64_t md) { void *userdata = NULL; @@ -98,14 +98,14 @@ rte_security_get_userdata(struct rte_security_ctx *instance, uint64_t md) return userdata; } -const struct rte_security_capability * __rte_experimental +const struct rte_security_capability * rte_security_capabilities_get(struct rte_security_ctx *instance) { RTE_FUNC_PTR_OR_ERR_RET(*instance->ops->capabilities_get, NULL); return instance->ops->capabilities_get(instance->device); } -const struct rte_security_capability * __rte_experimental +const struct rte_security_capability * rte_security_capability_get(struct rte_security_ctx *instance, struct rte_security_capability_idx *idx) { diff --git a/lib/librte_security/rte_security.h b/lib/librte_security/rte_security.h index 1431b4df..e07b1328 100644 --- a/lib/librte_security/rte_security.h +++ b/lib/librte_security/rte_security.h @@ -8,7 +8,6 @@ /** * @file rte_security.h - * @b EXPERIMENTAL: this API may change without prior notice * * RTE Security Common Definitions * @@ -330,7 +329,7 @@ struct rte_security_session { * - On success, pointer to session * - On failure, NULL */ -struct rte_security_session * __rte_experimental +struct rte_security_session * rte_security_session_create(struct rte_security_ctx *instance, struct rte_security_session_conf *conf, struct rte_mempool *mp); @@ -345,7 +344,7 @@ rte_security_session_create(struct rte_security_ctx *instance, * - On success returns 0 * - On failure return errno */ -int __rte_experimental +int rte_security_session_update(struct rte_security_ctx *instance, struct rte_security_session *sess, struct rte_security_session_conf *conf); @@ -359,7 +358,7 @@ rte_security_session_update(struct rte_security_ctx *instance, * - Size of the private data, if successful * - 0 if device is invalid or does not support the operation. */ -unsigned int __rte_experimental +unsigned int rte_security_session_get_size(struct rte_security_ctx *instance); /** @@ -374,7 +373,7 @@ rte_security_session_get_size(struct rte_security_ctx *instance); * - -EINVAL if session is NULL. * - -EBUSY if not all device private data has been freed. */ -int __rte_experimental +int rte_security_session_destroy(struct rte_security_ctx *instance, struct rte_security_session *sess); @@ -391,7 +390,7 @@ rte_security_session_destroy(struct rte_security_ctx *instance, * - On success, zero. * - On failure, a negative value. */ -int __rte_experimental +int rte_security_set_pkt_metadata(struct rte_security_ctx *instance, struct rte_security_session *sess, struct rte_mbuf *mb, void *params); @@ -413,7 +412,7 @@ rte_security_set_pkt_metadata(struct rte_security_ctx *instance, * - On success, userdata * - On failure, NULL */ -void * __rte_experimental +void * rte_security_get_userdata(struct rte_security_ctx *instance, uint64_t md); /** @@ -422,7 +421,7 @@ rte_security_get_userdata(struct rte_security_ctx *instance, uint64_t md); * @param sym_op crypto operation * @param sess security session */ -static inline int __rte_experimental +static inline int __rte_security_attach_session(struct rte_crypto_sym_op *sym_op, struct rte_security_session *sess) { @@ -431,13 +430,13 @@ __rte_security_attach_session(struct rte_crypto_sym_op *sym_op, return 0; } -static inline void * __rte_experimental +static inline void * get_sec_session_private_data(const struct rte_security_session *sess) { return sess->sess_private_data; } -static inline void __rte_experimental +static inline void set_sec_session_private_data(struct rte_security_session *sess, void *private_data) { @@ -453,7 +452,7 @@ set_sec_session_private_data(struct rte_security_session *sess, * @param op crypto operation * @param sess security session */ -static inline int __rte_experimental +static inline int rte_security_attach_session(struct rte_crypto_op *op, struct rte_security_session *sess) { @@ -500,7 +499,7 @@ struct rte_security_stats { * - On success return 0 * - On failure errno */ -int __rte_experimental +int rte_security_session_stats_get(struct rte_security_ctx *instance, struct rte_security_session *sess, struct rte_security_stats *stats); @@ -608,7 +607,7 @@ struct rte_security_capability_idx { * - Returns array of security capabilities. * - Return NULL if no capabilities available. */ -const struct rte_security_capability * __rte_experimental +const struct rte_security_capability * rte_security_capabilities_get(struct rte_security_ctx *instance); /** @@ -622,7 +621,7 @@ rte_security_capabilities_get(struct rte_security_ctx *instance); * index criteria. * - Return NULL if the capability not matched on security instance. */ -const struct rte_security_capability * __rte_experimental +const struct rte_security_capability * rte_security_capability_get(struct rte_security_ctx *instance, struct rte_security_capability_idx *idx); diff --git a/lib/librte_security/rte_security_driver.h b/lib/librte_security/rte_security_driver.h index 42f42ffe..1b561f85 100644 --- a/lib/librte_security/rte_security_driver.h +++ b/lib/librte_security/rte_security_driver.h @@ -8,7 +8,6 @@ /** * @file rte_security_driver.h - * @b EXPERIMENTAL: this API may change without prior notice * * RTE Security Common Definitions * diff --git a/lib/librte_security/rte_security_version.map b/lib/librte_security/rte_security_version.map index 5a1c8ae3..a77ca4bc 100644 --- a/lib/librte_security/rte_security_version.map +++ b/lib/librte_security/rte_security_version.map @@ -1,4 +1,4 @@ -EXPERIMENTAL { +DPDK_18.11 { global: rte_security_attach_session; -- cgit 1.2.3-korg