From 12f342d28b792e21da7ac00a8681b2bf45f63e38 Mon Sep 17 00:00:00 2001 From: Subash Abhinov Kasiviswanathan Date: Wed, 19 Apr 2023 01:51:18 -0600 Subject: [PATCH] wlan: If8a19284d46140b2e7645ea66805f6f221980dfb Update to If8a19284d46140b2e7645ea66805f6f221980dfb CRs-Fixed: 3459335 Change-Id: If8a19284d46140b2e7645ea66805f6f221980dfb Signed-off-by: Subash Abhinov Kasiviswanathan --- wlan/rmnet_wlan_connection.c | 130 ++++++++++++++++++++++------------- wlan/rmnet_wlan_main.c | 24 +++---- wlan/rmnet_wlan_stats.h | 7 +- 3 files changed, 99 insertions(+), 62 deletions(-) diff --git a/wlan/rmnet_wlan_connection.c b/wlan/rmnet_wlan_connection.c index 32278c04b4..2af7388e7a 100644 --- a/wlan/rmnet_wlan_connection.c +++ b/wlan/rmnet_wlan_connection.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0-only /* Copyright (c) 2021, The Linux Foundation. All rights reserved. - * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved. + * Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved. * * RMNET WLAN connection management framework * @@ -31,9 +31,11 @@ struct DATARMNET4f49486833{struct hlist_node DATARMNETe8608dd267;struct rcu_head DATARMNET28bfe9e6ad;struct hrtimer DATARMNET9f31ce5d2d;struct DATARMNET0ca9d8ead7 DATARMNET54338da2ff;struct DATARMNET8d3c2559ca DATARMNET7ed5754a5c;};static DEFINE_SPINLOCK(DATARMNET820642743b);static -DEFINE_HASHTABLE(DATARMNET5413d6f8ec,DATARMNETeaf0945284);static bool -DATARMNET5f3c9ed4da(struct DATARMNET0ca9d8ead7*DATARMNET75decd6f60,struct -DATARMNET0ca9d8ead7*DATARMNET6745cad668){if(DATARMNET75decd6f60-> +DEFINE_HASHTABLE(DATARMNET5413d6f8ec,DATARMNETeaf0945284); +#define DATARMNET898fc3651c (0xef7+694-0x112d) +#define DATARMNET20defbe7a0 (0xf07+3965-0x1a3c) +static bool DATARMNET5f3c9ed4da(struct DATARMNET0ca9d8ead7*DATARMNET75decd6f60, +struct DATARMNET0ca9d8ead7*DATARMNET6745cad668){if(DATARMNET75decd6f60-> DATARMNET0d956cc77a!=DATARMNET6745cad668->DATARMNET0d956cc77a)return false;if( DATARMNET75decd6f60->DATARMNET0d956cc77a==(0xd11+230-0xdf3))return DATARMNET75decd6f60->DATARMNETdfe430c2d6==DATARMNET6745cad668-> @@ -124,7 +126,7 @@ DATARMNETc1174a0f45;}DATARMNET099aa93adc.flowi4_oif=DATARMNET39542b437e->ifindex ;DATARMNET099aa93adc.flowi4_flags=FLOWI_FLAG_KNOWN_NH;DATARMNET066b8bd537= ip_route_output_key(&init_net,&DATARMNET099aa93adc);if(IS_ERR( DATARMNET066b8bd537)){DATARMNET17f6bc1be5(DATARMNET8a15bcdcc7);goto -DATARMNET74b365f6cc;}}memcpy(&DATARMNET099aa93adc.saddr,&DATARMNET86f1f2cdc9-> +DATARMNETc1174a0f45;}}memcpy(&DATARMNET099aa93adc.saddr,&DATARMNET86f1f2cdc9-> saddr,sizeof(__be32));DATARMNETb5af46179c=xfrm_lookup(&init_net,& DATARMNET066b8bd537->dst,flowi4_to_flowi(&DATARMNET099aa93adc),NULL, (0xd2d+202-0xdf7));DATARMNET066b8bd537=(struct rtable*)DATARMNETb5af46179c;if( @@ -149,7 +151,7 @@ DATARMNET39542b437e){DATARMNET17f6bc1be5(DATARMNET7c6c30b7d2);goto DATARMNETc1174a0f45;}DATARMNET8fbe36a2fa.flowi6_oif=DATARMNET39542b437e->ifindex ;DATARMNET8fbe36a2fa.flowi6_flags=FLOWI_FLAG_KNOWN_NH;dst=ipv6_stub-> ipv6_dst_lookup_flow(&init_net,NULL,&DATARMNET8fbe36a2fa,NULL);if(IS_ERR(dst)){ -DATARMNET17f6bc1be5(DATARMNET39d80cc483);goto DATARMNET74b365f6cc;}} +DATARMNET17f6bc1be5(DATARMNET39d80cc483);goto DATARMNETc1174a0f45;}} DATARMNETb5af46179c=xfrm_lookup(&init_net,dst,flowi6_to_flowi(& DATARMNET8fbe36a2fa),NULL,(0xd2d+202-0xdf7));DATARMNET066b8bd537=(struct rtable* )DATARMNETb5af46179c;if(IS_ERR(DATARMNET066b8bd537)){DATARMNET17f6bc1be5( @@ -177,7 +179,7 @@ DATARMNETc1174a0f45;}DATARMNET099aa93adc.flowi4_oif=DATARMNET39542b437e->ifindex ;DATARMNET099aa93adc.flowi4_flags=FLOWI_FLAG_KNOWN_NH;DATARMNET066b8bd537= ip_route_output_key(&init_net,&DATARMNET099aa93adc);if(IS_ERR( DATARMNET066b8bd537)){DATARMNET17f6bc1be5(DATARMNET101af46c1c);goto -DATARMNET74b365f6cc;}}memcpy(&DATARMNET099aa93adc.saddr,&DATARMNET86f1f2cdc9-> +DATARMNETc1174a0f45;}}memcpy(&DATARMNET099aa93adc.saddr,&DATARMNET86f1f2cdc9-> saddr,sizeof(__be32));DATARMNETb5af46179c=xfrm_lookup(&init_net,& DATARMNET066b8bd537->dst,flowi4_to_flowi(&DATARMNET099aa93adc),NULL, (0xd2d+202-0xdf7));DATARMNET066b8bd537=(struct rtable*)DATARMNETb5af46179c;if( @@ -202,15 +204,46 @@ DATARMNET39542b437e){DATARMNET17f6bc1be5(DATARMNETf326b7c906);goto DATARMNETc1174a0f45;}DATARMNET8fbe36a2fa.flowi6_oif=DATARMNET39542b437e->ifindex ;DATARMNET8fbe36a2fa.flowi6_flags=FLOWI_FLAG_KNOWN_NH;dst=ipv6_stub-> ipv6_dst_lookup_flow(&init_net,NULL,&DATARMNET8fbe36a2fa,NULL);if(IS_ERR(dst)){ -DATARMNET17f6bc1be5(DATARMNET544d78ede7);goto DATARMNET74b365f6cc;}} +DATARMNET17f6bc1be5(DATARMNET544d78ede7);goto DATARMNETc1174a0f45;}} DATARMNETb5af46179c=xfrm_lookup(&init_net,dst,flowi6_to_flowi(& DATARMNET8fbe36a2fa),NULL,(0xd2d+202-0xdf7));DATARMNET066b8bd537=(struct rtable* )DATARMNETb5af46179c;if(IS_ERR(DATARMNET066b8bd537)){DATARMNET17f6bc1be5( DATARMNET97b44d0c09);goto DATARMNETc1174a0f45;}skb_dst_set(DATARMNET543491eb0f, DATARMNETb5af46179c);dst_output(&init_net,NULL,DATARMNET543491eb0f); DATARMNET17f6bc1be5(DATARMNETf954265acb);return RX_HANDLER_CONSUMED;} -DATARMNET74b365f6cc:return RX_HANDLER_PASS;DATARMNETc1174a0f45:kfree_skb( -DATARMNET543491eb0f);return RX_HANDLER_CONSUMED;}static rx_handler_result_t +DATARMNETc1174a0f45:kfree_skb(DATARMNET543491eb0f);return RX_HANDLER_CONSUMED;} +static rx_handler_result_t DATARMNET6e2f632fce(struct sk_buff* +DATARMNET543491eb0f,uint8_t DATARMNET1a901c3d09){struct sk_buff* +DATARMNETb6d6995997=NULL;unsigned int DATARMNETc26140baf9=(0xd2d+202-0xdf7); +unsigned int DATARMNET3301d81682=(0xd2d+202-0xdf7);struct ipv6hdr* +DATARMNETbf55123e5b,*DATARMNET0b51978dd7;struct frag_hdr*DATARMNET2d5a34898d,* +DATARMNET4a64bfeda0;if(skb_linearize(DATARMNET543491eb0f)){DATARMNET17f6bc1be5( +DATARMNET4f59e3a6e4);goto DATARMNET27d4697979;}if(DATARMNET543491eb0f->protocol +!=htons(ETH_P_IPV6)){DATARMNET17f6bc1be5(DATARMNET87c37ed8cc);goto +DATARMNETb042feb7e2;}DATARMNETb6d6995997=skb_copy_expand(DATARMNET543491eb0f, +DATARMNET898fc3651c,DATARMNET898fc3651c,GFP_ATOMIC);if(!DATARMNETb6d6995997){ +DATARMNET17f6bc1be5(DATARMNET03b5eea9bc);goto DATARMNETb042feb7e2;} +DATARMNETbf55123e5b=(struct ipv6hdr*)(DATARMNET543491eb0f->data); +DATARMNET0b51978dd7=(struct ipv6hdr*)(DATARMNETb6d6995997->data); +DATARMNET2d5a34898d=(struct frag_hdr*)((char*)DATARMNET543491eb0f->data+sizeof( +struct ipv6hdr));DATARMNET4a64bfeda0=(struct frag_hdr*)((char*) +DATARMNETb6d6995997->data+sizeof(struct ipv6hdr));DATARMNETc26140baf9=ntohs( +DATARMNETbf55123e5b->payload_len)-sizeof(struct frag_hdr);DATARMNET3301d81682= +DATARMNETc26140baf9-DATARMNET20defbe7a0;memcpy(DATARMNETb6d6995997->data+sizeof( +struct ipv6hdr)+sizeof(struct frag_hdr),DATARMNET543491eb0f->data+sizeof(struct +ipv6hdr)+sizeof(struct frag_hdr)+DATARMNET20defbe7a0,DATARMNET3301d81682); +DATARMNET2d5a34898d->frag_off=(0xd2d+202-0xdf7);DATARMNET2d5a34898d->frag_off|= +htons(IP6_MF);skb_trim(DATARMNET543491eb0f,sizeof(struct ipv6hdr)+sizeof(struct +frag_hdr)+DATARMNET20defbe7a0);DATARMNETbf55123e5b->payload_len=htons(sizeof( +struct frag_hdr)+DATARMNET20defbe7a0);DATARMNET4a64bfeda0->frag_off= +(0xd2d+202-0xdf7);DATARMNET4a64bfeda0->frag_off=htons(DATARMNET20defbe7a0); +DATARMNET4a64bfeda0->frag_off|=htons(IP6_MF);skb_trim(DATARMNETb6d6995997,sizeof +(struct ipv6hdr)+sizeof(struct frag_hdr)+DATARMNET3301d81682); +DATARMNET0b51978dd7->payload_len=htons(sizeof(struct frag_hdr)+ +DATARMNET3301d81682);DATARMNETc9ed97754a(DATARMNET543491eb0f,DATARMNET1a901c3d09 +);DATARMNETc9ed97754a(DATARMNETb6d6995997,DATARMNET1a901c3d09);goto +DATARMNET27d4697979;DATARMNETb042feb7e2:kfree_skb(DATARMNET543491eb0f); +DATARMNET27d4697979:return RX_HANDLER_CONSUMED;}static rx_handler_result_t DATARMNET68fe094884(struct sk_buff**DATARMNET89946cec52){struct DATARMNET0ca9d8ead7 DATARMNETa76763310b={};struct DATARMNET4f49486833* DATARMNET63b1a086d5;struct sk_buff*DATARMNET543491eb0f=*DATARMNET89946cec52; @@ -234,40 +267,42 @@ rcu_read_lock();DATARMNET8184934307=DATARMNETcc0a01df2a(&DATARMNET2d4b4cfc9e); rcu_read_unlock();if(!DATARMNET8184934307)goto DATARMNETbf4095f79e; DATARMNET1a901c3d09=DATARMNET8184934307->DATARMNET7ed5754a5c.DATARMNET9954a624ac ;if(DATARMNET1a901c3d09==DATARMNETdcafdec32a)goto DATARMNETbf4095f79e;if( -DATARMNET543491eb0f->dev&&DATARMNET1a901c3d09==DATARMNET9bfbc31cd6)nf_ct_set( -DATARMNET543491eb0f,NULL,IP_CT_UNTRACKED);if(DATARMNET543491eb0f->protocol== -htons(ETH_P_IP)){struct iphdr*DATARMNET86f1f2cdc9,DATARMNETbf6548198e; -DATARMNET86f1f2cdc9=skb_header_pointer(DATARMNET543491eb0f,(0xd2d+202-0xdf7), -sizeof(*DATARMNET86f1f2cdc9),&DATARMNETbf6548198e);if(!DATARMNET86f1f2cdc9)goto -DATARMNETbf4095f79e;if(DATARMNET86f1f2cdc9->protocol==IPPROTO_TCP)goto -DATARMNET9b3d23a43b;if(DATARMNET86f1f2cdc9->protocol!=IPPROTO_ICMP)goto -DATARMNETbf4095f79e;DATARMNETa76763310b.DATARMNETdfe430c2d6=DATARMNET86f1f2cdc9 -->saddr;DATARMNETa76763310b.DATARMNET2cb607d686=DATARMNET86f1f2cdc9->daddr; -DATARMNETa76763310b.DATARMNET0d956cc77a=(0xd11+230-0xdf3);}else if( -DATARMNET543491eb0f->protocol==htons(ETH_P_IPV6)){struct ipv6hdr* -DATARMNETbf55123e5b,DATARMNETcf1d9e2c1e;__be16 frag_off;u8 DATARMNET65293f17c4; -DATARMNETbf55123e5b=skb_header_pointer(DATARMNET543491eb0f,(0xd2d+202-0xdf7), -sizeof(*DATARMNETbf55123e5b),&DATARMNETcf1d9e2c1e);if(!DATARMNETbf55123e5b)goto -DATARMNETbf4095f79e;DATARMNET65293f17c4=DATARMNETbf55123e5b->nexthdr;if( -ipv6_skip_exthdr(DATARMNET543491eb0f,sizeof(*DATARMNETbf55123e5b),& -DATARMNET65293f17c4,&frag_off)<(0xd2d+202-0xdf7))goto DATARMNETbf4095f79e;if( -frag_off&&DATARMNET65293f17c4==NEXTHDR_FRAGMENT)goto DATARMNETbf4095f79e;if( -DATARMNET65293f17c4==IPPROTO_TCP)goto DATARMNET9b3d23a43b;if(DATARMNET65293f17c4 -!=IPPROTO_ICMPV6)goto DATARMNETbf4095f79e;memcpy(&DATARMNETa76763310b. -DATARMNET815cbb4bf5,&DATARMNETbf55123e5b->saddr,sizeof(DATARMNETa76763310b. -DATARMNET815cbb4bf5));memcpy(&DATARMNETa76763310b.DATARMNETc3f31215b7,& -DATARMNETbf55123e5b->daddr,sizeof(DATARMNETa76763310b.DATARMNETc3f31215b7)); -DATARMNETa76763310b.DATARMNET0d956cc77a=(0xd03+244-0xdf1);}else{goto -DATARMNETbf4095f79e;}rcu_read_lock();hash_for_each_possible_rcu( -DATARMNET5413d6f8ec,DATARMNET63b1a086d5,DATARMNETe8608dd267,DATARMNETa76763310b. -DATARMNET2cb607d686){if(!DATARMNET5f3c9ed4da(&DATARMNET63b1a086d5-> -DATARMNET54338da2ff,&DATARMNETa76763310b))continue;if(likely(hrtimer_is_queued(& -DATARMNET63b1a086d5->DATARMNET9f31ce5d2d)))hrtimer_start(&DATARMNET63b1a086d5-> -DATARMNET9f31ce5d2d,DATARMNET5da8c68c19,HRTIMER_MODE_REL);rcu_read_unlock();goto - DATARMNETbf4095f79e;}rcu_read_unlock();spin_lock_irqsave(&DATARMNET820642743b, -DATARMNETfb0677cc3c);DATARMNET63b1a086d5=kzalloc(sizeof(*DATARMNET63b1a086d5), -GFP_ATOMIC);if(!DATARMNET63b1a086d5){spin_unlock_irqrestore(&DATARMNET820642743b -,DATARMNETfb0677cc3c);goto DATARMNETbf4095f79e;}INIT_HLIST_NODE(& +DATARMNET543491eb0f->dev)nf_ct_set(DATARMNET543491eb0f,NULL,IP_CT_UNTRACKED);if( +DATARMNET543491eb0f->protocol==htons(ETH_P_IP)){struct iphdr*DATARMNET86f1f2cdc9 +,DATARMNETbf6548198e;DATARMNET86f1f2cdc9=skb_header_pointer(DATARMNET543491eb0f, +(0xd2d+202-0xdf7),sizeof(*DATARMNET86f1f2cdc9),&DATARMNETbf6548198e);if(! +DATARMNET86f1f2cdc9)goto DATARMNETbf4095f79e;if(DATARMNET86f1f2cdc9->protocol== +IPPROTO_TCP)goto DATARMNET9b3d23a43b;if(DATARMNET86f1f2cdc9->protocol!= +IPPROTO_ICMP)goto DATARMNETbf4095f79e;DATARMNETa76763310b.DATARMNETdfe430c2d6= +DATARMNET86f1f2cdc9->saddr;DATARMNETa76763310b.DATARMNET2cb607d686= +DATARMNET86f1f2cdc9->daddr;DATARMNETa76763310b.DATARMNET0d956cc77a= +(0xd11+230-0xdf3);}else if(DATARMNET543491eb0f->protocol==htons(ETH_P_IPV6)){ +struct ipv6hdr*DATARMNETbf55123e5b,DATARMNETcf1d9e2c1e;__be16 frag_off;u8 +DATARMNET65293f17c4;DATARMNETbf55123e5b=skb_header_pointer(DATARMNET543491eb0f, +(0xd2d+202-0xdf7),sizeof(*DATARMNETbf55123e5b),&DATARMNETcf1d9e2c1e);if(! +DATARMNETbf55123e5b)goto DATARMNETbf4095f79e;DATARMNET65293f17c4= +DATARMNETbf55123e5b->nexthdr;if(ipv6_skip_exthdr(DATARMNET543491eb0f,sizeof(* +DATARMNETbf55123e5b),&DATARMNET65293f17c4,&frag_off)<(0xd2d+202-0xdf7))goto +DATARMNETbf4095f79e;if(frag_off&&DATARMNET65293f17c4==NEXTHDR_FRAGMENT)goto +DATARMNETbf4095f79e;if(DATARMNETbf55123e5b->nexthdr==NEXTHDR_FRAGMENT&&(ntohs( +DATARMNETbf55123e5b->payload_len)>(sizeof(struct frag_hdr)+DATARMNET20defbe7a0)) +)goto DATARMNETf10b3df68d;if(DATARMNET65293f17c4==IPPROTO_TCP)goto +DATARMNET9b3d23a43b;if(DATARMNET65293f17c4!=IPPROTO_ICMPV6)goto +DATARMNETbf4095f79e;memcpy(&DATARMNETa76763310b.DATARMNET815cbb4bf5,& +DATARMNETbf55123e5b->saddr,sizeof(DATARMNETa76763310b.DATARMNET815cbb4bf5)); +memcpy(&DATARMNETa76763310b.DATARMNETc3f31215b7,&DATARMNETbf55123e5b->daddr, +sizeof(DATARMNETa76763310b.DATARMNETc3f31215b7));DATARMNETa76763310b. +DATARMNET0d956cc77a=(0xd03+244-0xdf1);}else{goto DATARMNETbf4095f79e;} +rcu_read_lock();hash_for_each_possible_rcu(DATARMNET5413d6f8ec, +DATARMNET63b1a086d5,DATARMNETe8608dd267,DATARMNETa76763310b.DATARMNET2cb607d686) +{if(!DATARMNET5f3c9ed4da(&DATARMNET63b1a086d5->DATARMNET54338da2ff,& +DATARMNETa76763310b))continue;if(likely(hrtimer_is_queued(&DATARMNET63b1a086d5-> +DATARMNET9f31ce5d2d)))hrtimer_start(&DATARMNET63b1a086d5->DATARMNET9f31ce5d2d, +DATARMNET5da8c68c19,HRTIMER_MODE_REL);rcu_read_unlock();goto DATARMNETbf4095f79e +;}rcu_read_unlock();spin_lock_irqsave(&DATARMNET820642743b,DATARMNETfb0677cc3c); +DATARMNET63b1a086d5=kzalloc(sizeof(*DATARMNET63b1a086d5),GFP_ATOMIC);if(! +DATARMNET63b1a086d5){spin_unlock_irqrestore(&DATARMNET820642743b, +DATARMNETfb0677cc3c);goto DATARMNETbf4095f79e;}INIT_HLIST_NODE(& DATARMNET63b1a086d5->DATARMNETe8608dd267);memcpy(&DATARMNET63b1a086d5-> DATARMNET54338da2ff,&DATARMNETa76763310b,sizeof(DATARMNETa76763310b)); DATARMNET63b1a086d5->DATARMNET7ed5754a5c.DATARMNET57656f6f2f=DATARMNET543491eb0f @@ -280,9 +315,10 @@ DATARMNET63b1a086d5->DATARMNETe8608dd267,DATARMNETa76763310b.DATARMNET2cb607d686 DATARMNETbf4095f79e:return DATARMNETc9ed97754a(DATARMNET543491eb0f, DATARMNET1a901c3d09);DATARMNET9b3d23a43b:DATARMNET7ca470d54b(DATARMNET543491eb0f ,TCP_FLAG_SYN);return DATARMNETc9ed97754a(DATARMNET543491eb0f, -DATARMNET1a901c3d09);}static void DATARMNETbc6bd11f47(struct net_device* -DATARMNET00dcb79bc4){struct DATARMNET4f49486833*DATARMNET63b1a086d5;int -DATARMNET5c2fd31d7b;rcu_read_lock();hash_for_each_rcu(DATARMNET5413d6f8ec, +DATARMNET1a901c3d09);DATARMNETf10b3df68d:return DATARMNET6e2f632fce( +DATARMNET543491eb0f,DATARMNET1a901c3d09);}static void DATARMNETbc6bd11f47(struct + net_device*DATARMNET00dcb79bc4){struct DATARMNET4f49486833*DATARMNET63b1a086d5; +int DATARMNET5c2fd31d7b;rcu_read_lock();hash_for_each_rcu(DATARMNET5413d6f8ec, DATARMNET5c2fd31d7b,DATARMNET63b1a086d5,DATARMNETe8608dd267){if( DATARMNET63b1a086d5->DATARMNET7ed5754a5c.DATARMNET57656f6f2f== DATARMNET00dcb79bc4)hrtimer_cancel(&DATARMNET63b1a086d5->DATARMNET9f31ce5d2d);} diff --git a/wlan/rmnet_wlan_main.c b/wlan/rmnet_wlan_main.c index bd55191c40..be79ea96c4 100644 --- a/wlan/rmnet_wlan_main.c +++ b/wlan/rmnet_wlan_main.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0-only /* Copyright (c) 2021, The Linux Foundation. All rights reserved. - * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved. + * Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved. * * RMNET WLAN handler framework * @@ -25,17 +25,17 @@ #include "rmnet_wlan_stats.h" #include "rmnet_wlan_fragment.h" #include "rmnet_wlan_connection.h" -static char*verinfo[]={"\x61\x33\x31\x34\x63\x62\x32\x35", -"\x34\x33\x62\x62\x38\x34\x39\x39","\x32\x66\x33\x36\x30\x30\x31\x34", -"\x62\x64\x66\x66\x39\x32\x62\x33","\x34\x36\x35\x36\x30\x62\x31\x34", -"\x64\x33\x37\x61\x30\x39\x63\x63","\x65\x32\x31\x38\x66\x34\x35\x31", -"\x30\x65\x33\x34\x62\x31\x39\x31","\x39\x66\x33\x66\x31\x31\x33\x30", -"\x62\x31\x62\x63\x64\x66\x66\x61","\x61\x33\x33\x33\x36\x37\x61\x31", -"\x37\x34\x31\x35\x39\x32\x31\x63","\x33\x35\x36\x63\x34\x39\x31\x63", -"\x34\x64\x32\x32\x34\x33\x36\x33","\x61\x34\x31\x63\x39\x64\x37\x62", -"\x38\x66\x32\x66\x65\x64\x32\x66","\x63\x30\x32\x62\x61\x39\x30\x65"}; -module_param_array(verinfo,charp,NULL,(0xcb7+5769-0x221c));MODULE_PARM_DESC( -verinfo, +static char*verinfo[]={"\x32\x31\x39\x38\x30\x64\x66\x62", +"\x61\x33\x31\x34\x63\x62\x32\x35","\x34\x33\x62\x62\x38\x34\x39\x39", +"\x32\x66\x33\x36\x30\x30\x31\x34","\x62\x64\x66\x66\x39\x32\x62\x33", +"\x34\x36\x35\x36\x30\x62\x31\x34","\x64\x33\x37\x61\x30\x39\x63\x63", +"\x65\x32\x31\x38\x66\x34\x35\x31","\x30\x65\x33\x34\x62\x31\x39\x31", +"\x39\x66\x33\x66\x31\x31\x33\x30","\x62\x31\x62\x63\x64\x66\x66\x61", +"\x61\x33\x33\x33\x36\x37\x61\x31","\x37\x34\x31\x35\x39\x32\x31\x63", +"\x33\x35\x36\x63\x34\x39\x31\x63","\x34\x64\x32\x32\x34\x33\x36\x33", +"\x61\x34\x31\x63\x39\x64\x37\x62","\x38\x66\x32\x66\x65\x64\x32\x66", +"\x63\x30\x32\x62\x61\x39\x30\x65"};module_param_array(verinfo,charp,NULL, +(0xcb7+5769-0x221c));MODULE_PARM_DESC(verinfo, "\x56\x65\x72\x73\x69\x6f\x6e\x20\x6f\x66\x20\x74\x68\x65\x20\x64\x72\x69\x76\x65\x72" ); #define DATARMNETaf49b04806 ((0xeb7+1158-0x132d)) diff --git a/wlan/rmnet_wlan_stats.h b/wlan/rmnet_wlan_stats.h index 80bd4845a6..9d070692cd 100644 --- a/wlan/rmnet_wlan_stats.h +++ b/wlan/rmnet_wlan_stats.h @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: GPL-2.0-only */ /* Copyright (c) 2021, The Linux Foundation. All rights reserved. - * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved. + * Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved. * * RMNET WLAN stats framework * @@ -26,7 +26,8 @@ DATARMNET0b9541c9b3,DATARMNET0078f1d36d,DATARMNET661bdeccd4,DATARMNET28e7704d13, DATARMNET7c6c30b7d2,DATARMNET39d80cc483,DATARMNET1be480319c,DATARMNET15d1a78b15, DATARMNETddb1bc27cb,DATARMNETc730640bf7,DATARMNET521b065310,DATARMNET8a15bcdcc7, DATARMNET0978ff973f,DATARMNETc52168a41e,DATARMNET666fc9a664,DATARMNET7803c877c0, -DATARMNET4c5aeeb476,DATARMNETfe1714cc0e,};void DATARMNET5ca94dbc3c(u32 -DATARMNET248f120dd5);void DATARMNET17f6bc1be5(u32 DATARMNET248f120dd5); +DATARMNET4c5aeeb476,DATARMNET4f59e3a6e4,DATARMNET87c37ed8cc,DATARMNET03b5eea9bc, +DATARMNETfe1714cc0e,};void DATARMNET5ca94dbc3c(u32 DATARMNET248f120dd5);void +DATARMNET17f6bc1be5(u32 DATARMNET248f120dd5); #endif