Messages in this thread | | | Date | Tue, 11 Jan 2022 16:59:00 +0000 | Subject | Re: [PATCH 13/14] net: inline part of skb_csum_hwoffload_help | From | Pavel Begunkov <> |
| |
On 1/11/22 09:24, David Laight wrote: > From: Pavel Begunkov >> Sent: 11 January 2022 01:22 >> >> Inline a HW csum'ed part of skb_csum_hwoffload_help(). >> >> Signed-off-by: Pavel Begunkov <asml.silence@gmail.com> >> --- >> include/linux/netdevice.h | 16 ++++++++++++++-- >> net/core/dev.c | 13 +++---------- >> 2 files changed, 17 insertions(+), 12 deletions(-) >> >> diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h >> index 3213c7227b59..fbe6c764ce57 100644 >> --- a/include/linux/netdevice.h >> +++ b/include/linux/netdevice.h >> @@ -4596,8 +4596,20 @@ void netdev_rss_key_fill(void *buffer, size_t len); >> >> int skb_checksum_help(struct sk_buff *skb); >> int skb_crc32c_csum_help(struct sk_buff *skb); >> -int skb_csum_hwoffload_help(struct sk_buff *skb, >> - const netdev_features_t features); >> +int __skb_csum_hwoffload_help(struct sk_buff *skb, >> + const netdev_features_t features); >> + >> +static inline int skb_csum_hwoffload_help(struct sk_buff *skb, >> + const netdev_features_t features) >> +{ >> + if (unlikely(skb_csum_is_sctp(skb))) >> + return !!(features & NETIF_F_SCTP_CRC) ? 0 : > > If that !! doing anything? - doesn't look like it.
It doesn't, but left the original style
>> + skb_crc32c_csum_help(skb); >> + >> + if (features & NETIF_F_HW_CSUM) >> + return 0; >> + return __skb_csum_hwoffload_help(skb, features); >> +} > > Maybe you should remove some bloat by moving the sctp code > into the called function. > This probably needs something like? > > { > if (features & NETIF_F_HW_CSUM && !skb_csum_is_sctp(skb)) > return 0; > return __skb_csum_hw_offload(skb, features); > }
I don't like inlining that sctp chunk myself. It seems your way would need another skb_csum_is_sctp() in __skb_csum_hw_offload(), if so I don't think it's worth it. Would've been great to put the NETIF_F_HW_CSUM check first and hide sctp, but don't think it's correct. Would be great to hear some ideas.
-- Pavel Begunkov
| |