net: fix checksum API documentation
Checks
Commit Message
Minor corrections and improvements to documentation
for checksum APIs.
Fixes: 6006818cfb26 ("net: new checksum functions")
Fixes: 45a08ef55e44 ("net: introduce functions to verify L4 checksums")
Cc: stable@dpdk.org
Signed-off-by: Lance Richardson <lance.richardson@broadcom.com>
---
lib/net/rte_ip.h | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
Comments
> From: Lance Richardson [mailto:lance.richardson@broadcom.com]
> Sent: Thursday, 16 September 2021 18.11
>
> Minor corrections and improvements to documentation
> for checksum APIs.
>
> Fixes: 6006818cfb26 ("net: new checksum functions")
> Fixes: 45a08ef55e44 ("net: introduce functions to verify L4 checksums")
> Cc: stable@dpdk.org
> Signed-off-by: Lance Richardson <lance.richardson@broadcom.com>
> ---
> lib/net/rte_ip.h | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/lib/net/rte_ip.h b/lib/net/rte_ip.h
> index 05948b69b7..fd08ea31b2 100644
> --- a/lib/net/rte_ip.h
> +++ b/lib/net/rte_ip.h
> @@ -488,7 +488,7 @@ rte_ipv6_phdr_cksum(const struct rte_ipv6_hdr
> *ipv6_hdr, uint64_t ol_flags)
> }
>
> /**
> - * @internal Calculate the non-complemented IPv4 L4 checksum
> + * @internal Calculate the non-complemented IPv6 L4 checksum
> */
> static inline uint16_t
> __rte_ipv6_udptcp_cksum(const struct rte_ipv6_hdr *ipv6_hdr, const
> void *l4_hdr)
> @@ -509,15 +509,15 @@ __rte_ipv6_udptcp_cksum(const struct rte_ipv6_hdr
> *ipv6_hdr, const void *l4_hdr)
> /**
> * Process the IPv6 UDP or TCP checksum.
> *
> - * The IPv4 header should not contains options. The layer 4 checksum
> - * must be set to 0 in the packet by the caller.
> + * The IPv6 header must not be followed by extension headers. The
> layer 4
> + * checksum must be set to 0 in the L4 header by the caller.
> *
> * @param ipv6_hdr
> * The pointer to the contiguous IPv6 header.
> * @param l4_hdr
> * The pointer to the beginning of the L4 header.
> * @return
> - * The complemented checksum to set in the IP packet.
> + * The complemented checksum to set in the L4 header.
> */
> static inline uint16_t
> rte_ipv6_udptcp_cksum(const struct rte_ipv6_hdr *ipv6_hdr, const void
> *l4_hdr)
> --
> 2.25.1
Reviewed-by: Morten Brørup <mb@smartsharesystems.com>
On 9/17/2021 11:57 AM, Morten Brørup wrote:
>> From: Lance Richardson [mailto:lance.richardson@broadcom.com]
>> Sent: Thursday, 16 September 2021 18.11
>>
>> Minor corrections and improvements to documentation
>> for checksum APIs.
>>
>> Fixes: 6006818cfb26 ("net: new checksum functions")
>> Fixes: 45a08ef55e44 ("net: introduce functions to verify L4 checksums")
>> Cc: stable@dpdk.org
>> Signed-off-by: Lance Richardson <lance.richardson@broadcom.com>
>> ---
>> lib/net/rte_ip.h | 8 ++++----
>> 1 file changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/lib/net/rte_ip.h b/lib/net/rte_ip.h
>> index 05948b69b7..fd08ea31b2 100644
>> --- a/lib/net/rte_ip.h
>> +++ b/lib/net/rte_ip.h
>> @@ -488,7 +488,7 @@ rte_ipv6_phdr_cksum(const struct rte_ipv6_hdr
>> *ipv6_hdr, uint64_t ol_flags)
>> }
>>
>> /**
>> - * @internal Calculate the non-complemented IPv4 L4 checksum
>> + * @internal Calculate the non-complemented IPv6 L4 checksum
>> */
>> static inline uint16_t
>> __rte_ipv6_udptcp_cksum(const struct rte_ipv6_hdr *ipv6_hdr, const
>> void *l4_hdr)
>> @@ -509,15 +509,15 @@ __rte_ipv6_udptcp_cksum(const struct rte_ipv6_hdr
>> *ipv6_hdr, const void *l4_hdr)
>> /**
>> * Process the IPv6 UDP or TCP checksum.
>> *
>> - * The IPv4 header should not contains options. The layer 4 checksum
>> - * must be set to 0 in the packet by the caller.
>> + * The IPv6 header must not be followed by extension headers. The
>> layer 4
>> + * checksum must be set to 0 in the L4 header by the caller.
>> *
>> * @param ipv6_hdr
>> * The pointer to the contiguous IPv6 header.
>> * @param l4_hdr
>> * The pointer to the beginning of the L4 header.
>> * @return
>> - * The complemented checksum to set in the IP packet.
>> + * The complemented checksum to set in the L4 header.
Isn't this wrong for 'rte_ipv4_udptcp_cksum()' too? Since you are touching this,
can you fix that one too?
>> */
>> static inline uint16_t
>> rte_ipv6_udptcp_cksum(const struct rte_ipv6_hdr *ipv6_hdr, const void
>> *l4_hdr)
>> --
>> 2.25.1
>
> Reviewed-by: Morten Brørup <mb@smartsharesystems.com>
>
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Ferruh Yigit
> Sent: Tuesday, 21 September 2021 11.28
>
> On 9/17/2021 11:57 AM, Morten Brørup wrote:
> >> From: Lance Richardson [mailto:lance.richardson@broadcom.com]
> >> Sent: Thursday, 16 September 2021 18.11
> >>
> >> Minor corrections and improvements to documentation
> >> for checksum APIs.
> >>
> >> Fixes: 6006818cfb26 ("net: new checksum functions")
> >> Fixes: 45a08ef55e44 ("net: introduce functions to verify L4
> checksums")
> >> Cc: stable@dpdk.org
> >> Signed-off-by: Lance Richardson <lance.richardson@broadcom.com>
> >> ---
> >> lib/net/rte_ip.h | 8 ++++----
> >> 1 file changed, 4 insertions(+), 4 deletions(-)
> >>
> >> diff --git a/lib/net/rte_ip.h b/lib/net/rte_ip.h
> >> index 05948b69b7..fd08ea31b2 100644
> >> --- a/lib/net/rte_ip.h
> >> +++ b/lib/net/rte_ip.h
> >> @@ -488,7 +488,7 @@ rte_ipv6_phdr_cksum(const struct rte_ipv6_hdr
> >> *ipv6_hdr, uint64_t ol_flags)
> >> }
> >>
> >> /**
> >> - * @internal Calculate the non-complemented IPv4 L4 checksum
> >> + * @internal Calculate the non-complemented IPv6 L4 checksum
> >> */
> >> static inline uint16_t
> >> __rte_ipv6_udptcp_cksum(const struct rte_ipv6_hdr *ipv6_hdr, const
> >> void *l4_hdr)
> >> @@ -509,15 +509,15 @@ __rte_ipv6_udptcp_cksum(const struct
> rte_ipv6_hdr
> >> *ipv6_hdr, const void *l4_hdr)
> >> /**
> >> * Process the IPv6 UDP or TCP checksum.
> >> *
> >> - * The IPv4 header should not contains options. The layer 4
> checksum
> >> - * must be set to 0 in the packet by the caller.
> >> + * The IPv6 header must not be followed by extension headers. The
> >> layer 4
> >> + * checksum must be set to 0 in the L4 header by the caller.
> >> *
> >> * @param ipv6_hdr
> >> * The pointer to the contiguous IPv6 header.
> >> * @param l4_hdr
> >> * The pointer to the beginning of the L4 header.
> >> * @return
> >> - * The complemented checksum to set in the IP packet.
> >> + * The complemented checksum to set in the L4 header.
>
> Isn't this wrong for 'rte_ipv4_udptcp_cksum()' too? Since you are
> touching this,
> can you fix that one too?
>
Ferruh, the description of the return value is technically correct; it mentions the IP packet, not the IP header.
So this change is a clarification only.
However, I agree that the same clarification would also benefit 'rte_ipv4_udptcp_cksum()'.
> >> */
> >> static inline uint16_t
> >> rte_ipv6_udptcp_cksum(const struct rte_ipv6_hdr *ipv6_hdr, const
> void
> >> *l4_hdr)
> >> --
> >> 2.25.1
> >
> > Reviewed-by: Morten Brørup <mb@smartsharesystems.com>
> >
>
On Tue, Sep 21, 2021 at 6:11 AM Morten Brørup <mb@smartsharesystems.com> wrote:
> Ferruh, the description of the return value is technically correct; it mentions the IP packet, not the IP header.
> So this change is a clarification only.
>
> However, I agree that the same clarification would also benefit 'rte_ipv4_udptcp_cksum()'.
>
Sure, will fix in v2.
Also for rte_ipv4_udptcp_cksum(), a comment says "The IP and layer 4
checksum must be set to zero", but only the layer 4 checksum actually
needs to be set to zero. I'll fix that at the same time.
Thanks,
Lance
@@ -488,7 +488,7 @@ rte_ipv6_phdr_cksum(const struct rte_ipv6_hdr *ipv6_hdr, uint64_t ol_flags)
}
/**
- * @internal Calculate the non-complemented IPv4 L4 checksum
+ * @internal Calculate the non-complemented IPv6 L4 checksum
*/
static inline uint16_t
__rte_ipv6_udptcp_cksum(const struct rte_ipv6_hdr *ipv6_hdr, const void *l4_hdr)
@@ -509,15 +509,15 @@ __rte_ipv6_udptcp_cksum(const struct rte_ipv6_hdr *ipv6_hdr, const void *l4_hdr)
/**
* Process the IPv6 UDP or TCP checksum.
*
- * The IPv4 header should not contains options. The layer 4 checksum
- * must be set to 0 in the packet by the caller.
+ * The IPv6 header must not be followed by extension headers. The layer 4
+ * checksum must be set to 0 in the L4 header by the caller.
*
* @param ipv6_hdr
* The pointer to the contiguous IPv6 header.
* @param l4_hdr
* The pointer to the beginning of the L4 header.
* @return
- * The complemented checksum to set in the IP packet.
+ * The complemented checksum to set in the L4 header.
*/
static inline uint16_t
rte_ipv6_udptcp_cksum(const struct rte_ipv6_hdr *ipv6_hdr, const void *l4_hdr)