From: Stephen Hemminger <stephen@networkplumber.org>
To: Robin Jarry <rjarry@redhat.com>
Cc: dev@dpdk.org
Subject: Re: [PATCH dpdk v2 03/16] net: add structure for ipv6 addresses
Date: Thu, 3 Oct 2024 16:18:40 -0700 [thread overview]
Message-ID: <20241003161840.4177a172@hermes.local> (raw)
In-Reply-To: <20241001081728.301272-4-rjarry@redhat.com>
On Tue, 1 Oct 2024 10:17:15 +0200
Robin Jarry <rjarry@redhat.com> wrote:
> There is currently no structure defined for IPv6 addresses. Introduce
> one that is simply a uint8_t array of 16 elements without any union. The
> idea is to ensure this structure alignment is 1 so that it can be mapped
> directly on unaligned packet memory.
>
> Signed-off-by: Robin Jarry <rjarry@redhat.com>
> ---
> lib/net/rte_ip6.h | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/lib/net/rte_ip6.h b/lib/net/rte_ip6.h
> index 5ad1dd25db08..52c41088681e 100644
> --- a/lib/net/rte_ip6.h
> +++ b/lib/net/rte_ip6.h
> @@ -35,6 +35,16 @@
> extern "C" {
> #endif
>
> +#define RTE_IPV6_ADDR_SIZE 16
> +#define RTE_IPV6_MAX_DEPTH 128
> +
> +/**
> + * IPv6 Address
> + */
> +struct rte_ipv6_addr {
> + unsigned char a[RTE_IPV6_ADDR_SIZE];
> +};
> +
Why is RTE_IPV6_MAX_DEPTH here, it is not really a property
of the address itself.
Not sure if using a union (like struct in6_addr does) might be better
to encourage compiler alignment and allow simpler faster comparison.
next prev parent reply other threads:[~2024-10-03 23:24 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-08-21 16:25 [PATCH dpdk v1 00/15] IPv6 APIs overhaul Robin Jarry
2024-08-21 16:25 ` [PATCH dpdk v1 01/15] net: split raw checksum functions in separate header Robin Jarry
2024-08-21 16:25 ` [PATCH dpdk v1 02/15] net: split ipv6 symbols " Robin Jarry
2024-08-21 16:25 ` [PATCH dpdk v1 03/15] net: add structure for ipv6 addresses Robin Jarry
2024-08-21 16:25 ` [PATCH dpdk v1 04/15] net: use ipv6 structure for header addresses Robin Jarry
2024-08-21 16:25 ` [PATCH dpdk v1 05/15] fib6,rib6,lpm6: use ipv6 addr struct Robin Jarry
2024-08-21 16:25 ` [PATCH dpdk v1 06/15] net: add ipv6 address utilities Robin Jarry
2024-08-21 16:25 ` [PATCH dpdk v1 07/15] fib6,rib6,lpm6: use ipv6 utils Robin Jarry
2024-08-21 16:25 ` [PATCH dpdk v1 08/15] graph,node: use ipv6 addr struct and utils Robin Jarry
2024-08-21 16:25 ` [PATCH dpdk v1 09/15] pipeline: use ipv6 addr struct Robin Jarry
2024-08-21 16:25 ` [PATCH dpdk v1 10/15] ipsec: " Robin Jarry
2024-08-21 16:25 ` [PATCH dpdk v1 11/15] thash: " Robin Jarry
2024-08-21 16:25 ` [PATCH dpdk v1 12/15] gro: " Robin Jarry
2024-08-21 16:25 ` [PATCH dpdk v1 13/15] rte_flow: " Robin Jarry
2024-08-21 16:25 ` [PATCH dpdk v1 14/15] rib6,fib6,lpm6: remove duplicate constants Robin Jarry
2024-08-21 16:25 ` [PATCH dpdk v1 15/15] net: add utilities for well known ipv6 address types Robin Jarry
2024-08-21 22:28 ` [PATCH dpdk v1 00/15] IPv6 APIs overhaul Morten Brørup
2024-08-22 14:13 ` Stephen Hemminger
2024-08-22 15:13 ` Morten Brørup
2024-08-22 15:27 ` Robin Jarry
2024-08-22 18:41 ` Morten Brørup
2024-08-22 15:14 ` Robin Jarry
2024-08-22 15:16 ` Robin Jarry
2024-10-01 8:17 ` [PATCH dpdk v2 00/16] " Robin Jarry
2024-10-01 8:17 ` [PATCH dpdk v2 01/16] net: split raw checksum functions in separate header Robin Jarry
2024-10-03 23:12 ` Stephen Hemminger
2024-10-01 8:17 ` [PATCH dpdk v2 02/16] net: split ipv6 symbols " Robin Jarry
2024-10-03 23:15 ` Stephen Hemminger
2024-10-01 8:17 ` [PATCH dpdk v2 03/16] net: add structure for ipv6 addresses Robin Jarry
2024-10-03 23:18 ` Stephen Hemminger [this message]
2024-10-04 11:59 ` Robin Jarry
2024-10-01 8:17 ` [PATCH dpdk v2 04/16] net: use ipv6 structure for header addresses Robin Jarry
2024-10-03 23:20 ` Stephen Hemminger
2024-10-04 18:01 ` Ferruh Yigit
2024-10-04 20:04 ` Robin Jarry
2024-10-01 8:17 ` [PATCH dpdk v2 05/16] fib6,rib6,lpm6: use ipv6 addr struct Robin Jarry
2024-10-03 23:21 ` Stephen Hemminger
2024-10-01 8:17 ` [PATCH dpdk v2 06/16] net: add ipv6 address utilities Robin Jarry
2024-10-01 15:35 ` Stephen Hemminger
2024-10-03 23:22 ` Stephen Hemminger
2024-10-01 8:17 ` [PATCH dpdk v2 07/16] fib6,rib6,lpm6: use ipv6 utils Robin Jarry
2024-10-01 8:17 ` [PATCH dpdk v2 08/16] graph,node: use ipv6 addr struct and utils Robin Jarry
2024-10-01 8:17 ` [PATCH dpdk v2 09/16] pipeline: use ipv6 addr struct Robin Jarry
2024-10-03 23:23 ` Stephen Hemminger
2024-10-04 11:55 ` Robin Jarry
2024-10-01 8:17 ` [PATCH dpdk v2 10/16] ipsec: " Robin Jarry
2024-10-01 8:17 ` [PATCH dpdk v2 11/16] thash: " Robin Jarry
2024-10-01 8:17 ` [PATCH dpdk v2 12/16] gro: " Robin Jarry
2024-10-01 8:17 ` [PATCH dpdk v2 13/16] rte_flow: " Robin Jarry
2024-10-01 8:17 ` [PATCH dpdk v2 14/16] rib6,fib6,lpm6: remove duplicate constants Robin Jarry
2024-10-03 23:12 ` Stephen Hemminger
2024-10-04 11:54 ` Robin Jarry
2024-10-04 16:16 ` Stephen Hemminger
2024-10-01 8:17 ` [PATCH dpdk v2 15/16] net: add utilities for well known ipv6 address types Robin Jarry
2024-10-03 23:24 ` Stephen Hemminger
2024-10-01 8:17 ` [PATCH dpdk v2 16/16] ipv6: add function to check ipv6 version Robin Jarry
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=20241003161840.4177a172@hermes.local \
--to=stephen@networkplumber.org \
--cc=dev@dpdk.org \
--cc=rjarry@redhat.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).