perf: Id928dd67396e1d2d3ba4cf442df9206bce79321c

Update to Id928dd67396e1d2d3ba4cf442df9206bce79321c

CRs-Fixed: 3504482
Change-Id: Id928dd67396e1d2d3ba4cf442df9206bce79321c
Signed-off-by: Subash Abhinov Kasiviswanathan <quic_subashab@quicinc.com>
This commit is contained in:
Subash Abhinov Kasiviswanathan
2023-05-21 17:06:01 -06:00
parent f47773ba77
commit 9a14a75913
2 changed files with 41 additions and 33 deletions

View File

@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only
/* Copyright (c) 2023,Qualcomm Innovation Center, Inc. All rights reserved.
/* Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*
* RMNET PERF TCP framework
*
@@ -144,31 +144,39 @@ DATARMNET668416551c=tcp_hdr(DATARMNET543491eb0f);return DATARMNET543491eb0f->len
DATARMNET63b1a086d5,struct sk_buff*DATARMNET543491eb0f,bool DATARMNETd147c14c0e)
__must_hold(RCU){struct rmnet_skb_cb*DATARMNET1ec4882bf7=RMNET_SKB_CB(
DATARMNET543491eb0f);struct tcphdr*DATARMNET668416551c=tcp_hdr(
DATARMNET543491eb0f);u32 DATARMNETb1b0ee1b2d=ntohl(DATARMNET668416551c->ack_seq)
;u32 DATARMNETb6ff6d25f8=READ_ONCE(DATARMNET63b1a086d5->DATARMNETfef3675ce7);u32
DATARMNET91c1d5c029=READ_ONCE(DATARMNET63b1a086d5->DATARMNET9076d335ab);u32
DATARMNET9445bc443c=READ_ONCE(DATARMNET63b1a086d5->DATARMNET9a57846b4e);
DATARMNET63b1a086d5->DATARMNET763f2e5fac=jiffies;if(DATARMNET63b1a086d5->
DATARMNET55056146f6){DATARMNET1ec4882bf7->tethered=true;return;}if(
DATARMNETd147c14c0e){if(after(DATARMNETb1b0ee1b2d,DATARMNET91c1d5c029)){u32
DATARMNET4e557c82d6=DATARMNETb6ff6d25f8-DATARMNETb1b0ee1b2d;if(
DATARMNET4e557c82d6>DATARMNET9445bc443c)DATARMNET31a7673e56(DATARMNET63b1a086d5,
DATARMNET543491eb0f);WRITE_ONCE(DATARMNET63b1a086d5->DATARMNET9076d335ab,
DATARMNETb1b0ee1b2d);}}}void DATARMNET9250714999(struct sk_buff*
DATARMNET543491eb0f){struct DATARMNET4b40fe9cd4 DATARMNET3396919a68={};struct
DATARMNETddbc1e5435*DATARMNET63b1a086d5;struct tcphdr*DATARMNET668416551c;u32
DATARMNETd660a1a629;if(!skb_transport_header_was_set(DATARMNET543491eb0f)||
DATARMNET543491eb0f->ip_summed==CHECKSUM_NONE)return;DATARMNET668416551c=tcp_hdr
(DATARMNET543491eb0f);if(DATARMNET668416551c->syn)return;DATARMNETd660a1a629=
DATARMNET62fb576113(DATARMNET543491eb0f);if(!DATARMNETd660a1a629&&
DATARMNET668416551c->ack)return;DATARMNET3396919a68.DATARMNET08e913477e=
DATARMNET668416551c->source;DATARMNET3396919a68.DATARMNETda7f7fa492=
DATARMNET668416551c->dest;if(DATARMNET543491eb0f->protocol==htons(ETH_P_IP)){
struct iphdr*DATARMNET86f1f2cdc9=ip_hdr(DATARMNET543491eb0f);DATARMNET3396919a68
.DATARMNETdfe430c2d6=DATARMNET86f1f2cdc9->saddr;DATARMNET3396919a68.
DATARMNET2cb607d686=DATARMNET86f1f2cdc9->daddr;DATARMNET3396919a68.
DATARMNET0d956cc77a=(0xd11+230-0xdf3);}else{struct ipv6hdr*DATARMNETbf55123e5b=
ipv6_hdr(DATARMNET543491eb0f);memcpy(&DATARMNET3396919a68.DATARMNET815cbb4bf5,&
DATARMNET543491eb0f);u32 DATARMNET26945497d8=ntohl(DATARMNET668416551c->seq);u32
DATARMNETb1b0ee1b2d=ntohl(DATARMNET668416551c->ack_seq);u32 DATARMNETb6ff6d25f8
=READ_ONCE(DATARMNET63b1a086d5->DATARMNETfef3675ce7);u32 DATARMNET91c1d5c029=
READ_ONCE(DATARMNET63b1a086d5->DATARMNET9076d335ab);u32 DATARMNET9445bc443c=
READ_ONCE(DATARMNET63b1a086d5->DATARMNET9a57846b4e);DATARMNET63b1a086d5->
DATARMNET763f2e5fac=jiffies;if(DATARMNET63b1a086d5->DATARMNET55056146f6){
DATARMNET1ec4882bf7->tethered=true;return;}if(DATARMNETd147c14c0e){if(after(
DATARMNETb1b0ee1b2d,DATARMNET91c1d5c029)){u32 DATARMNET4e557c82d6=
DATARMNETb6ff6d25f8-DATARMNETb1b0ee1b2d;if(DATARMNET4e557c82d6>
DATARMNET9445bc443c)DATARMNET31a7673e56(DATARMNET63b1a086d5,DATARMNET543491eb0f)
;WRITE_ONCE(DATARMNET63b1a086d5->DATARMNET9076d335ab,DATARMNETb1b0ee1b2d);}}else
{u32 DATARMNET4e557c82d6=DATARMNETb6ff6d25f8-DATARMNET91c1d5c029;if(after(
DATARMNET26945497d8,DATARMNETb6ff6d25f8)){DATARMNET4e557c82d6=
DATARMNET26945497d8-DATARMNET91c1d5c029;DATARMNET4e557c82d6+=DATARMNET62fb576113
(DATARMNET543491eb0f);WRITE_ONCE(DATARMNET63b1a086d5->DATARMNETfef3675ce7,
DATARMNET26945497d8);}DATARMNET1ec4882bf7->bif=DATARMNET4e557c82d6;
DATARMNET1ec4882bf7->ack_thresh=DATARMNET9445bc443c;DATARMNET1ec4882bf7->
ack_forced=DATARMNET63b1a086d5->DATARMNETb8fc35ed64;}}void DATARMNET9250714999(
struct sk_buff*DATARMNET543491eb0f){struct DATARMNET4b40fe9cd4
DATARMNET3396919a68={};struct DATARMNETddbc1e5435*DATARMNET63b1a086d5;struct
tcphdr*DATARMNET668416551c;u32 DATARMNETd660a1a629;if(!
skb_transport_header_was_set(DATARMNET543491eb0f)||DATARMNET543491eb0f->
ip_summed==CHECKSUM_NONE)return;DATARMNET668416551c=tcp_hdr(DATARMNET543491eb0f)
;if(DATARMNET668416551c->syn)return;DATARMNETd660a1a629=DATARMNET62fb576113(
DATARMNET543491eb0f);if(!DATARMNETd660a1a629&&DATARMNET668416551c->ack)return;
DATARMNET3396919a68.DATARMNET08e913477e=DATARMNET668416551c->source;
DATARMNET3396919a68.DATARMNETda7f7fa492=DATARMNET668416551c->dest;if(
DATARMNET543491eb0f->protocol==htons(ETH_P_IP)){struct iphdr*DATARMNET86f1f2cdc9
=ip_hdr(DATARMNET543491eb0f);DATARMNET3396919a68.DATARMNETdfe430c2d6=
DATARMNET86f1f2cdc9->saddr;DATARMNET3396919a68.DATARMNET2cb607d686=
DATARMNET86f1f2cdc9->daddr;DATARMNET3396919a68.DATARMNET0d956cc77a=
(0xd11+230-0xdf3);}else{struct ipv6hdr*DATARMNETbf55123e5b=ipv6_hdr(
DATARMNET543491eb0f);memcpy(&DATARMNET3396919a68.DATARMNET815cbb4bf5,&
DATARMNETbf55123e5b->saddr,sizeof(DATARMNETbf55123e5b->saddr));memcpy(&
DATARMNET3396919a68.DATARMNETc3f31215b7,&DATARMNETbf55123e5b->daddr,sizeof(
DATARMNETbf55123e5b->daddr));DATARMNET3396919a68.DATARMNET0d956cc77a=