From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 8DB41A0C57; Tue, 31 Aug 2021 23:49:42 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 54B5840141; Tue, 31 Aug 2021 23:49:42 +0200 (CEST) Received: from mail-pl1-f175.google.com (mail-pl1-f175.google.com [209.85.214.175]) by mails.dpdk.org (Postfix) with ESMTP id CA2264013F for ; Tue, 31 Aug 2021 23:49:41 +0200 (CEST) Received: by mail-pl1-f175.google.com with SMTP id e7so257420plh.8 for ; Tue, 31 Aug 2021 14:49:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=T8rAW4o/0YkncHZUq5jm0QMZVDujxDMQLo6qUc3I5q4=; b=vGWq2aVpqoacn71E4Dwf9t2dgVpSPjIs1xHrqLf4hEUqd8mrSVxG8wxCWhlNVmfV2+ QNoHVk2Goh+O6fZGz2xguT+4BAe3sobDo3yXRy0nd7ZFbSyG6UFQksd29AfnPE+lL5FH wFDCPFvPqDtlUetBUPOHF1FGRdMKq076VG2okYd0/tlLqJAB4QfnCyBGXmIHasX9Ghlf Lohx3D8JLGWFcEBhd/N3KumtdXgC8/NWPo/j/0Fb8EgObtEhScnYIvOptzsb2o5UBBil yATS3o6rHke0qNj4qftgRk1yps4oUA3wDmUSgALi6ISAbms4bAfT0eyqAiRiMZ+qlVr3 f1sA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=T8rAW4o/0YkncHZUq5jm0QMZVDujxDMQLo6qUc3I5q4=; b=as9FMbqA21qoRPFYs9iSZriqtQWQbMfRYhJn7GBtCorm8S4mzSEAL3BQg461CK1DFv qPjHqA+T6LRNenX2yroNLsMsPxDG3O/g+XaTyYRWcnjQBvanviGVwMFG/MF+FaMv9waR 6ZFkCfvNfSJT7iQ68arVfte09emt1EEGXsUAMvU6FgCza0G6Kq7UQrGZVc2Zdo7u78bF ZWvYIESv3FUnjSRcwxnUUwc3N+yNwlUllFgqTANvMEzpA6FhgXlc1+j5PHNKJIB0PtmG GJih0Z4C9WEMIh1JLa8PWHrN90zbA42JxPD5l5OEIzd5nGppf2XaY2aHr8t/mTKCsGxY Dhvw== X-Gm-Message-State: AOAM531jdFgf+2SZZXA9PoYbKhFgULt/gBTd4N+Q7O7ro7TJ6ZKjpTBt 2Kmxt+LtRgNKamP8omk8O+EwVg== X-Google-Smtp-Source: ABdhPJxIOblSRm+YLovW3riYalL+bHhhsLNVwUfGqyhxl6uE52Hyrq9Ot2FNViKFhsw6LoR/hSriLg== X-Received: by 2002:a17:90a:191:: with SMTP id 17mr7712368pjc.223.1630446580759; Tue, 31 Aug 2021 14:49:40 -0700 (PDT) Received: from hermes.local (204-195-33-123.wavecable.com. [204.195.33.123]) by smtp.gmail.com with ESMTPSA id s17sm11058938pfg.4.2021.08.31.14.49.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 31 Aug 2021 14:49:40 -0700 (PDT) From: Stephen Hemminger To: vladimir.medvedkin@intel.com Cc: dev@dpdk.org, Stephen Hemminger Date: Tue, 31 Aug 2021 14:49:38 -0700 Message-Id: <20210831214938.141861-1-stephen@networkplumber.org> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH] rib: promote experimental API's to stable X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" The rib and rib6 API's have been in since 19.11 and should be marked as stable. Signed-off-by: Stephen Hemminger --- lib/rib/rte_rib.h | 18 ------------------ lib/rib/rte_rib6.h | 18 ------------------ lib/rib/version.map | 2 +- 3 files changed, 1 insertion(+), 37 deletions(-) diff --git a/lib/rib/rte_rib.h b/lib/rib/rte_rib.h index ec97079c3565..bebb30f7d7cf 100644 --- a/lib/rib/rte_rib.h +++ b/lib/rib/rte_rib.h @@ -11,10 +11,6 @@ * * RTE RIB library. * - * @warning - * @b EXPERIMENTAL: - * All functions in this file may be changed or removed without prior notice. - * * Level compressed tree implementation for IPv4 Longest Prefix Match */ @@ -78,7 +74,6 @@ rte_rib_depth_to_mask(uint8_t depth) * pointer to struct rte_rib_node on success * NULL otherwise */ -__rte_experimental struct rte_rib_node * rte_rib_lookup(struct rte_rib *rib, uint32_t ip); @@ -92,7 +87,6 @@ rte_rib_lookup(struct rte_rib *rib, uint32_t ip); * less specific route on success * NULL otherwise */ -__rte_experimental struct rte_rib_node * rte_rib_lookup_parent(struct rte_rib_node *ent); @@ -109,7 +103,6 @@ rte_rib_lookup_parent(struct rte_rib_node *ent); * pointer to struct rte_rib_node on success * NULL otherwise */ -__rte_experimental struct rte_rib_node * rte_rib_lookup_exact(struct rte_rib *rib, uint32_t ip, uint8_t depth); @@ -136,7 +129,6 @@ rte_rib_lookup_exact(struct rte_rib *rib, uint32_t ip, uint8_t depth); * pointer to the next more specific prefix * NULL if there is no prefixes left */ -__rte_experimental struct rte_rib_node * rte_rib_get_nxt(struct rte_rib *rib, uint32_t ip, uint8_t depth, struct rte_rib_node *last, int flag); @@ -151,7 +143,6 @@ rte_rib_get_nxt(struct rte_rib *rib, uint32_t ip, uint8_t depth, * @param depth * prefix length */ -__rte_experimental void rte_rib_remove(struct rte_rib *rib, uint32_t ip, uint8_t depth); @@ -168,7 +159,6 @@ rte_rib_remove(struct rte_rib *rib, uint32_t ip, uint8_t depth); * pointer to new rte_rib_node on success * NULL otherwise */ -__rte_experimental struct rte_rib_node * rte_rib_insert(struct rte_rib *rib, uint32_t ip, uint8_t depth); @@ -183,7 +173,6 @@ rte_rib_insert(struct rte_rib *rib, uint32_t ip, uint8_t depth); * 0 on success. * -1 on failure with rte_errno indicating reason for failure. */ -__rte_experimental int rte_rib_get_ip(const struct rte_rib_node *node, uint32_t *ip); @@ -198,7 +187,6 @@ rte_rib_get_ip(const struct rte_rib_node *node, uint32_t *ip); * 0 on success. * -1 on failure with rte_errno indicating reason for failure. */ -__rte_experimental int rte_rib_get_depth(const struct rte_rib_node *node, uint8_t *depth); @@ -212,7 +200,6 @@ rte_rib_get_depth(const struct rte_rib_node *node, uint8_t *depth); * @return * pointer to the ext */ -__rte_experimental void * rte_rib_get_ext(struct rte_rib_node *node); @@ -227,7 +214,6 @@ rte_rib_get_ext(struct rte_rib_node *node); * 0 on success. * -1 on failure with rte_errno indicating reason for failure. */ -__rte_experimental int rte_rib_get_nh(const struct rte_rib_node *node, uint64_t *nh); @@ -242,7 +228,6 @@ rte_rib_get_nh(const struct rte_rib_node *node, uint64_t *nh); * 0 on success. * -1 on failure with rte_errno indicating reason for failure. */ -__rte_experimental int rte_rib_set_nh(struct rte_rib_node *node, uint64_t nh); @@ -259,7 +244,6 @@ rte_rib_set_nh(struct rte_rib_node *node, uint64_t nh); * Handle to RIB object on success * NULL otherwise with rte_errno indicating reason for failure. */ -__rte_experimental struct rte_rib * rte_rib_create(const char *name, int socket_id, const struct rte_rib_conf *conf); @@ -273,7 +257,6 @@ rte_rib_create(const char *name, int socket_id, * Pointer to RIB object on success * NULL otherwise with rte_errno indicating reason for failure. */ -__rte_experimental struct rte_rib * rte_rib_find_existing(const char *name); @@ -285,7 +268,6 @@ rte_rib_find_existing(const char *name); * @return * None */ -__rte_experimental void rte_rib_free(struct rte_rib *rib); diff --git a/lib/rib/rte_rib6.h b/lib/rib/rte_rib6.h index dbd52928a243..6f532265c657 100644 --- a/lib/rib/rte_rib6.h +++ b/lib/rib/rte_rib6.h @@ -11,10 +11,6 @@ * * RTE rib6 library. * - * @warning - * @b EXPERIMENTAL: - * All functions in this file may be changed or removed without prior notice. - * * Level compressed tree implementation for IPv6 Longest Prefix Match */ @@ -127,7 +123,6 @@ get_msk_part(uint8_t depth, int byte) { * pointer to struct rte_rib6_node on success * NULL otherwise */ -__rte_experimental struct rte_rib6_node * rte_rib6_lookup(struct rte_rib6 *rib, const uint8_t ip[RTE_RIB6_IPV6_ADDR_SIZE]); @@ -142,7 +137,6 @@ rte_rib6_lookup(struct rte_rib6 *rib, * less specific route on success * NULL otherwise */ -__rte_experimental struct rte_rib6_node * rte_rib6_lookup_parent(struct rte_rib6_node *ent); @@ -159,7 +153,6 @@ rte_rib6_lookup_parent(struct rte_rib6_node *ent); * pointer to struct rte_rib6_node on success * NULL otherwise */ -__rte_experimental struct rte_rib6_node * rte_rib6_lookup_exact(struct rte_rib6 *rib, const uint8_t ip[RTE_RIB6_IPV6_ADDR_SIZE], uint8_t depth); @@ -187,7 +180,6 @@ rte_rib6_lookup_exact(struct rte_rib6 *rib, * pointer to the next more specific prefix * NULL if there is no prefixes left */ -__rte_experimental struct rte_rib6_node * rte_rib6_get_nxt(struct rte_rib6 *rib, const uint8_t ip[RTE_RIB6_IPV6_ADDR_SIZE], @@ -203,7 +195,6 @@ rte_rib6_get_nxt(struct rte_rib6 *rib, * @param depth * prefix length */ -__rte_experimental void rte_rib6_remove(struct rte_rib6 *rib, const uint8_t ip[RTE_RIB6_IPV6_ADDR_SIZE], uint8_t depth); @@ -221,7 +212,6 @@ rte_rib6_remove(struct rte_rib6 *rib, * pointer to new rte_rib6_node on success * NULL otherwise */ -__rte_experimental struct rte_rib6_node * rte_rib6_insert(struct rte_rib6 *rib, const uint8_t ip[RTE_RIB6_IPV6_ADDR_SIZE], uint8_t depth); @@ -237,7 +227,6 @@ rte_rib6_insert(struct rte_rib6 *rib, * 0 on success * -1 on failure with rte_errno indicating reason for failure. */ -__rte_experimental int rte_rib6_get_ip(const struct rte_rib6_node *node, uint8_t ip[RTE_RIB6_IPV6_ADDR_SIZE]); @@ -253,7 +242,6 @@ rte_rib6_get_ip(const struct rte_rib6_node *node, * 0 on success * -1 on failure with rte_errno indicating reason for failure. */ -__rte_experimental int rte_rib6_get_depth(const struct rte_rib6_node *node, uint8_t *depth); @@ -267,7 +255,6 @@ rte_rib6_get_depth(const struct rte_rib6_node *node, uint8_t *depth); * @return * pointer to the ext */ -__rte_experimental void * rte_rib6_get_ext(struct rte_rib6_node *node); @@ -282,7 +269,6 @@ rte_rib6_get_ext(struct rte_rib6_node *node); * 0 on success * -1 on failure, with rte_errno indicating reason for failure. */ -__rte_experimental int rte_rib6_get_nh(const struct rte_rib6_node *node, uint64_t *nh); @@ -297,7 +283,6 @@ rte_rib6_get_nh(const struct rte_rib6_node *node, uint64_t *nh); * 0 on success * -1 on failure, with rte_errno indicating reason for failure. */ -__rte_experimental int rte_rib6_set_nh(struct rte_rib6_node *node, uint64_t nh); @@ -314,7 +299,6 @@ rte_rib6_set_nh(struct rte_rib6_node *node, uint64_t nh); * Pointer to RIB object on success * NULL otherwise with rte_errno indicating reason for failure. */ -__rte_experimental struct rte_rib6 * rte_rib6_create(const char *name, int socket_id, const struct rte_rib6_conf *conf); @@ -328,7 +312,6 @@ rte_rib6_create(const char *name, int socket_id, * Pointer to RIB object on success * NULL otherwise with rte_errno indicating reason for failure. */ -__rte_experimental struct rte_rib6 * rte_rib6_find_existing(const char *name); @@ -340,7 +323,6 @@ rte_rib6_find_existing(const char *name); * @return * None */ -__rte_experimental void rte_rib6_free(struct rte_rib6 *rib); diff --git a/lib/rib/version.map b/lib/rib/version.map index 9b6161a09238..6eb1252acb12 100644 --- a/lib/rib/version.map +++ b/lib/rib/version.map @@ -1,4 +1,4 @@ -EXPERIMENTAL { +DPDK_22 { global: rte_rib_create; -- 2.30.2