bpf: promote library as stable
The BPF lib was introduced in 18.05. There were no changes in its public API since 19.11. It should be mature enough to remove its 'experimental' tag. RTE_BPF_XTYPE_NUM is also being dropped from rte_bpf_xtype to avoid possible ABI problems in the future. Signed-off-by: Conor Walsh <conor.walsh@intel.com> Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
This commit is contained in:
parent
f484baeeb6
commit
dc18be1d8b
@ -1474,7 +1474,7 @@ F: app/test/test_telemetry*
|
||||
F: usertools/dpdk-telemetry*
|
||||
F: doc/guides/howto/telemetry.rst
|
||||
|
||||
BPF - EXPERIMENTAL
|
||||
BPF
|
||||
M: Konstantin Ananyev <konstantin.ananyev@intel.com>
|
||||
F: lib/librte_bpf/
|
||||
F: examples/bpf/
|
||||
|
@ -100,6 +100,8 @@ API Changes
|
||||
and the function ``rte_rawdev_queue_conf_get()``
|
||||
from ``void`` to ``int`` allowing the return of error codes from drivers.
|
||||
|
||||
* bpf: ``RTE_BPF_XTYPE_NUM`` has been dropped from ``rte_bpf_xtype``.
|
||||
|
||||
|
||||
ABI Changes
|
||||
-----------
|
||||
|
@ -10,10 +10,6 @@
|
||||
*
|
||||
* RTE BPF support.
|
||||
*
|
||||
* @warning
|
||||
* @b EXPERIMENTAL:
|
||||
* All functions in this file may be changed or removed without prior notice.
|
||||
*
|
||||
* librte_bpf provides a framework to load and execute eBPF bytecode
|
||||
* inside user-space dpdk based applications.
|
||||
* It supports basic set of features from eBPF spec
|
||||
@ -36,7 +32,7 @@ enum rte_bpf_arg_type {
|
||||
RTE_BPF_ARG_RAW, /**< scalar value */
|
||||
RTE_BPF_ARG_PTR = 0x10, /**< pointer to data buffer */
|
||||
RTE_BPF_ARG_PTR_MBUF, /**< pointer to rte_mbuf */
|
||||
RTE_BPF_ARG_RESERVED, /**< reserved for internal use */
|
||||
RTE_BPF_ARG_RESERVED /**< reserved for internal use */
|
||||
};
|
||||
|
||||
/**
|
||||
@ -63,8 +59,7 @@ struct rte_bpf_arg {
|
||||
*/
|
||||
enum rte_bpf_xtype {
|
||||
RTE_BPF_XTYPE_FUNC, /**< function */
|
||||
RTE_BPF_XTYPE_VAR, /**< variable */
|
||||
RTE_BPF_XTYPE_NUM
|
||||
RTE_BPF_XTYPE_VAR /**< variable */
|
||||
};
|
||||
|
||||
/**
|
||||
@ -117,7 +112,6 @@ struct rte_bpf;
|
||||
* @param bpf
|
||||
* BPF handle to destroy.
|
||||
*/
|
||||
__rte_experimental
|
||||
void
|
||||
rte_bpf_destroy(struct rte_bpf *bpf);
|
||||
|
||||
@ -133,7 +127,6 @@ rte_bpf_destroy(struct rte_bpf *bpf);
|
||||
* - EINVAL - invalid parameter passed to function
|
||||
* - ENOMEM - can't reserve enough memory
|
||||
*/
|
||||
__rte_experimental
|
||||
struct rte_bpf *
|
||||
rte_bpf_load(const struct rte_bpf_prm *prm);
|
||||
|
||||
@ -157,7 +150,6 @@ rte_bpf_load(const struct rte_bpf_prm *prm);
|
||||
* - EINVAL - invalid parameter passed to function
|
||||
* - ENOMEM - can't reserve enough memory
|
||||
*/
|
||||
__rte_experimental
|
||||
struct rte_bpf *
|
||||
rte_bpf_elf_load(const struct rte_bpf_prm *prm, const char *fname,
|
||||
const char *sname);
|
||||
@ -171,7 +163,6 @@ rte_bpf_elf_load(const struct rte_bpf_prm *prm, const char *fname,
|
||||
* @return
|
||||
* BPF execution return value.
|
||||
*/
|
||||
__rte_experimental
|
||||
uint64_t
|
||||
rte_bpf_exec(const struct rte_bpf *bpf, void *ctx);
|
||||
|
||||
@ -189,7 +180,6 @@ rte_bpf_exec(const struct rte_bpf *bpf, void *ctx);
|
||||
* @return
|
||||
* number of successfully processed inputs.
|
||||
*/
|
||||
__rte_experimental
|
||||
uint32_t
|
||||
rte_bpf_exec_burst(const struct rte_bpf *bpf, void *ctx[], uint64_t rc[],
|
||||
uint32_t num);
|
||||
@ -205,7 +195,6 @@ rte_bpf_exec_burst(const struct rte_bpf *bpf, void *ctx[], uint64_t rc[],
|
||||
* - -EINVAL if the parameters are invalid.
|
||||
* - Zero if operation completed successfully.
|
||||
*/
|
||||
__rte_experimental
|
||||
int
|
||||
rte_bpf_get_jit(const struct rte_bpf *bpf, struct rte_bpf_jit *jit);
|
||||
|
||||
|
@ -7,7 +7,6 @@
|
||||
|
||||
/**
|
||||
* @file rte_bpf_ethdev.h
|
||||
* @b EXPERIMENTAL: this API may change without prior notice
|
||||
*
|
||||
* API to install BPF filter as RX/TX callbacks for eth devices.
|
||||
* Note that right now:
|
||||
@ -45,7 +44,6 @@ enum {
|
||||
* @param queue
|
||||
* The identifier of the RX queue on the given port
|
||||
*/
|
||||
__rte_experimental
|
||||
void
|
||||
rte_bpf_eth_rx_unload(uint16_t port, uint16_t queue);
|
||||
|
||||
@ -58,7 +56,6 @@ rte_bpf_eth_rx_unload(uint16_t port, uint16_t queue);
|
||||
* @param queue
|
||||
* The identifier of the TX queue on the given port
|
||||
*/
|
||||
__rte_experimental
|
||||
void
|
||||
rte_bpf_eth_tx_unload(uint16_t port, uint16_t queue);
|
||||
|
||||
@ -82,7 +79,6 @@ rte_bpf_eth_tx_unload(uint16_t port, uint16_t queue);
|
||||
* @return
|
||||
* Zero on successful completion or negative error code otherwise.
|
||||
*/
|
||||
__rte_experimental
|
||||
int
|
||||
rte_bpf_eth_rx_elf_load(uint16_t port, uint16_t queue,
|
||||
const struct rte_bpf_prm *prm, const char *fname, const char *sname,
|
||||
@ -108,7 +104,6 @@ rte_bpf_eth_rx_elf_load(uint16_t port, uint16_t queue,
|
||||
* @return
|
||||
* Zero on successful completion or negative error code otherwise.
|
||||
*/
|
||||
__rte_experimental
|
||||
int
|
||||
rte_bpf_eth_tx_elf_load(uint16_t port, uint16_t queue,
|
||||
const struct rte_bpf_prm *prm, const char *fname, const char *sname,
|
||||
|
@ -1,4 +1,4 @@
|
||||
EXPERIMENTAL {
|
||||
DPDK_21 {
|
||||
global:
|
||||
|
||||
rte_bpf_destroy;
|
||||
|
Loading…
Reference in New Issue
Block a user