lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Mon, 17 Feb 2020 22:40:10 +0100 From: Heiner Kallweit <hkallweit1@...il.com> To: David Miller <davem@...emloft.net>, Realtek linux nic maintainers <nic_swsd@...ltek.com>, Jay Cliburn <jcliburn@...il.com>, Chris Snook <chris.snook@...il.com>, Rasesh Mody <rmody@...vell.com>, Sudarsana Kalluru <skalluru@...vell.com>, GR-Linux-NIC-Dev@...vell.com, Christian Benvenuti <benve@...co.com>, Govindarajulu Varadarajan <_govind@....com>, Parvi Kaustubhi <pkaustub@...co.com>, Jeff Kirsher <jeffrey.t.kirsher@...el.com>, Guo-Fu Tseng <cooldavid@...ldavid.org>, Shannon Nelson <snelson@...sando.io>, Pensando Drivers <drivers@...sando.io>, Timur Tabi <timur@...nel.org>, Jassi Brar <jaswinder.singh@...aro.org>, Ilias Apalodimas <ilias.apalodimas@...aro.org>, "K. Y. Srinivasan" <kys@...rosoft.com>, Haiyang Zhang <haiyangz@...rosoft.com>, Stephen Hemminger <sthemmin@...rosoft.com>, Sasha Levin <sashal@...nel.org>, Ronak Doshi <doshir@...are.com>, "VMware, Inc." <pv-drivers@...are.com> Cc: "netdev@...r.kernel.org" <netdev@...r.kernel.org>, Linux Kernel Mailing List <linux-kernel@...r.kernel.org>, intel-wired-lan@...ts.osuosl.org, linux-hyperv@...r.kernel.org, Linux USB Mailing List <linux-usb@...r.kernel.org> Subject: [PATCH net-next 1/3] net: core: add helper tcp_v6_gso_csum_prep Several network drivers for chips that support TSO6 share the same code for preparing the TCP header. A difference is that some reset the payload_len whilst others don't do this. Let's factor out this common code to a new helper. Signed-off-by: Heiner Kallweit <hkallweit1@...il.com> --- include/net/ip6_checksum.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/include/net/ip6_checksum.h b/include/net/ip6_checksum.h index 7bec95df4..ef0130023 100644 --- a/include/net/ip6_checksum.h +++ b/include/net/ip6_checksum.h @@ -76,6 +76,18 @@ static inline void __tcp_v6_send_check(struct sk_buff *skb, } } +static inline void tcp_v6_gso_csum_prep(struct sk_buff *skb, + bool clear_payload_len) +{ + struct ipv6hdr *ipv6h = ipv6_hdr(skb); + struct tcphdr *th = tcp_hdr(skb); + + if (clear_payload_len) + ipv6h->payload_len = 0; + + th->check = ~tcp_v6_check(0, &ipv6h->saddr, &ipv6h->daddr, 0); +} + #if IS_ENABLED(CONFIG_IPV6) static inline void tcp_v6_send_check(struct sock *sk, struct sk_buff *skb) { -- 2.25.0
Powered by blists - more mailing lists