From: Thomas Monjalon <thomas@monjalon.net>
To: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
Cc: dev@dpdk.org, konstantin.ananyev@intel.com, conor.walsh@intel.com
Subject: Re: [dpdk-dev] [PATCH] fib: add rib extension size parameter
Date: Mon, 25 Oct 2021 19:23:37 +0200 [thread overview]
Message-ID: <8937505.KMVrHqqNeC@thomas> (raw)
In-Reply-To: <1630943759-362969-1-git-send-email-vladimir.medvedkin@intel.com>
06/09/2021 17:55, Vladimir Medvedkin:
> This patch adds a new parameter to the fib configuration to specify
> the size of the extension for internal RIB structure.
It looks to be an announced API change.
What happens if the new field is not initialized in the app?
At least it would deserve a note in the release notes in API changes I think.
> --- a/examples/l3fwd/l3fwd_fib.c
> +++ b/examples/l3fwd/l3fwd_fib.c
> @@ -426,6 +426,7 @@ setup_fib(const int socketid)
> /* Create the fib IPv4 table. */
> config_ipv4.type = RTE_FIB_DIR24_8;
> config_ipv4.max_routes = (1 << 16);
> + config_ipv4.rib_ext_sz = 0;
> config_ipv4.default_nh = FIB_DEFAULT_HOP;
> config_ipv4.dir24_8.nh_sz = RTE_FIB_DIR24_8_4B;
> config_ipv4.dir24_8.num_tbl8 = (1 << 15);
> @@ -475,6 +476,7 @@ setup_fib(const int socketid)
>
> config.type = RTE_FIB6_TRIE;
> config.max_routes = (1 << 16) - 1;
> + config.rib_ext_sz = 0;
> config.default_nh = FIB_DEFAULT_HOP;
> config.trie.nh_sz = RTE_FIB6_TRIE_4B;
> config.trie.num_tbl8 = (1 << 15);
> diff --git a/lib/fib/rte_fib.c b/lib/fib/rte_fib.c
> index b354d4b..6ca180d 100644
> --- a/lib/fib/rte_fib.c
> +++ b/lib/fib/rte_fib.c
> @@ -164,7 +164,7 @@ rte_fib_create(const char *name, int socket_id, struct rte_fib_conf *conf)
> return NULL;
> }
>
> - rib_conf.ext_sz = 0;
> + rib_conf.ext_sz = conf->rib_ext_sz;
> rib_conf.max_nodes = conf->max_routes * 2;
>
> rib = rte_rib_create(name, socket_id, &rib_conf);
> diff --git a/lib/fib/rte_fib.h b/lib/fib/rte_fib.h
> index acad209..570b4b6 100644
> --- a/lib/fib/rte_fib.h
> +++ b/lib/fib/rte_fib.h
> @@ -84,6 +84,8 @@ struct rte_fib_conf {
> /** Default value returned on lookup if there is no route */
> uint64_t default_nh;
> int max_routes;
> + /** Size of the node extension in the internal RIB struct */
> + unsigned int rib_ext_sz;
> union {
> struct {
> enum rte_fib_dir24_8_nh_sz nh_sz;
next prev parent reply other threads:[~2021-10-25 17:23 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-06 15:55 Vladimir Medvedkin
2021-09-08 16:59 ` Conor Walsh
2021-10-25 17:23 ` Thomas Monjalon [this message]
2021-10-26 20:30 ` Medvedkin, Vladimir
2021-10-27 8:28 ` Thomas Monjalon
2021-10-27 15:47 ` Medvedkin, Vladimir
2021-10-27 15:49 ` [dpdk-dev] [PATCH v2] " Vladimir Medvedkin
2021-11-04 11:36 ` Thomas Monjalon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=8937505.KMVrHqqNeC@thomas \
--to=thomas@monjalon.net \
--cc=conor.walsh@intel.com \
--cc=dev@dpdk.org \
--cc=konstantin.ananyev@intel.com \
--cc=vladimir.medvedkin@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).