浏览代码

rmnet_shs: I25d9fd8a30b596418b3beafd6752aae383f0588a

Change-Id: I25d9fd8a30b596418b3beafd6752aae383f0588a
Signed-off-by: Raul Martinez <[email protected]>
Raul Martinez 2 年之前
父节点
当前提交
0337645959
共有 7 个文件被更改,包括 71 次插入61 次删除
  1. 1 1
      shs/rmnet_shs_common.c
  2. 2 2
      shs/rmnet_shs_common.h
  3. 3 3
      shs/rmnet_shs_config.c
  4. 34 33
      shs/rmnet_shs_main.c
  5. 9 1
      shs/rmnet_shs_modules.c
  6. 2 1
      shs/rmnet_shs_modules.h
  7. 20 20
      shs/rmnet_shs_wq.c

+ 1 - 1
shs/rmnet_shs_common.c

@@ -237,6 +237,6 @@ DATARMNET0258668025){DATARMNET68d84e7b98[DATARMNETef8cbfa62f]++;return ret;}if(
 DATARMNET0258668025<DATARMNETc6782fed88)ret=((((index+((DATARMNET0258668025%
 (0xd1f+216-0xdf5))?(0xd26+209-0xdf6):(0xd2d+202-0xdf7))))<<(0xec7+1122-0x130d))*
 DATARMNETebbd4cd1d9[(DATARMNET0258668025-(0xd26+209-0xdf6))>>(0xd26+209-0xdf6)])
-|(hash&16777215);if(DATARMNET72067bf727)ret=(ret&~16777215)|DATARMNET94fa0a43a2;
+|(hash&16777215);if(DATARMNET72067bf727)ret=(ret&~1048575)|DATARMNET94fa0a43a2;
 DATARMNETda96251102(DATARMNETf3aaad06eb,DATARMNET4e91ddb48a,ret,hash,index,
 DATARMNET0258668025,NULL,NULL);return ret;}

+ 2 - 2
shs/rmnet_shs_common.h

@@ -18,7 +18,7 @@
 #include <trace/hooks/sched.h>
 #include <linux/tracepoint.h>
 #include <trace/hooks/vendor_hooks.h>
-#define DATARMNET94fa0a43a2 7829367
+#define DATARMNET94fa0a43a2 489335
 void DATARMNET4095253347(struct DATARMNET9b44b71ee9*ep);void DATARMNETf7d317ed55
 (struct DATARMNET9b44b71ee9*ep);void DATARMNET36e5e526fa(struct 
 DATARMNET6c78e47d24*DATARMNETd2a694d52a);void DATARMNET2fe780019f(struct 
@@ -55,7 +55,7 @@ sk_buff*skb,u32 offset,u32 DATARMNET567bdc7221,void*buf);u32 DATARMNET8532ab3089
 struct list_head DATARMNET9825511866;static inline void DATARMNET3e88a91b63(void
 *unused,struct wait_queue_head*DATARMNETa08427f746,int*done,struct sock*sk){if((
 sk->sk_protocol==IPPROTO_TCP||sk->sk_protocol==IPPROTO_UDP)&&(sk->sk_rxhash&
-65535)==DATARMNET94fa0a43a2){(*done)=(0xd26+209-0xdf6);
+1048575)==DATARMNET94fa0a43a2){(*done)=(0xd26+209-0xdf6);
 wake_up_interruptible_poll(DATARMNETa08427f746,EPOLLIN|EPOLLPRI|EPOLLRDNORM|
 EPOLLRDBAND);}}static inline int DATARMNETed3cac41ac(void){int rc=
 (0xd2d+202-0xdf7);rc=register_trace_android_vh_do_wake_up_sync(

+ 3 - 3
shs/rmnet_shs_config.c

@@ -98,6 +98,6 @@ DATARMNETe46c480d71();DATARMNETecc0627c70.DATARMNET9c869c1ec2=(0xd26+209-0xdf6);
 trace_rmnet_shs_high(DATARMNET1790979ccf,DATARMNET443dab7031,(0x16e8+787-0xc0c),
 (0x16e8+787-0xc0c),(0x16e8+787-0xc0c),(0x16e8+787-0xc0c),NULL,NULL);
 DATARMNETa871eeb7e7();DATARMNET7520667b38();rmnet_module_hook_register(&
-DATARMNETf6217b20b8,(0xd26+209-0xdf6));break;}DATARMNET7492293980(dev);break;
-default:break;}return NOTIFY_DONE;}module_init(DATARMNET163e93649e);module_exit(
-DATARMNETf3298dab6f);
+DATARMNETf6217b20b8,(0xd26+209-0xdf6));DATARMNETed3cac41ac();break;}
+DATARMNET7492293980(dev);break;default:break;}return NOTIFY_DONE;}module_init(
+DATARMNET163e93649e);module_exit(DATARMNETf3298dab6f);

+ 34 - 33
shs/rmnet_shs_main.c

@@ -40,14 +40,15 @@
 #include <linux/cpumask.h>
 #include <linux/icmp.h>
 #include <linux/inet.h>
-static char*verinfo[]={"\x32\x36\x66\x64\x33\x30\x36\x35",
-"\x65\x36\x66\x64\x34\x31\x33\x37","\x36\x64\x38\x31\x37\x39\x62\x63",
-"\x64\x66\x39\x32\x65\x35\x33\x34","\x30\x38\x61\x39\x34\x38\x64\x61",
-"\x36\x35\x35\x37\x37\x63\x32\x32","\x65\x35\x37\x30\x63\x30\x35\x63",
-"\x30\x63\x61\x37\x61\x62\x38\x30","\x63\x30\x33\x31\x36\x31\x63\x66",
-"\x35\x61\x66\x31\x30\x31\x31\x64","\x36\x38\x36\x36\x36\x32\x33\x32",
-"\x65\x32\x31\x38\x66\x34\x35\x31"};module_param_array(verinfo,charp,NULL,
-(0xcb7+5769-0x221c));MODULE_PARM_DESC(verinfo,
+static char*verinfo[]={"\x63\x30\x39\x37\x35\x35\x62\x33",
+"\x32\x36\x66\x64\x33\x30\x36\x35","\x65\x36\x66\x64\x34\x31\x33\x37",
+"\x36\x64\x38\x31\x37\x39\x62\x63","\x64\x66\x39\x32\x65\x35\x33\x34",
+"\x30\x38\x61\x39\x34\x38\x64\x61","\x36\x35\x35\x37\x37\x63\x32\x32",
+"\x65\x35\x37\x30\x63\x30\x35\x63","\x30\x63\x61\x37\x61\x62\x38\x30",
+"\x63\x30\x33\x31\x36\x31\x63\x66","\x35\x61\x66\x31\x30\x31\x31\x64",
+"\x36\x38\x36\x36\x36\x32\x33\x32","\x65\x32\x31\x38\x66\x34\x35\x31"};
+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 DATARMNET2f67183a86 2000000
@@ -453,31 +454,31 @@ DATARMNETecc0627c70.map_len;index=DATARMNET63b1a086d5->map_index;}else{map=
 DATARMNET63b1a086d5->DATARMNETfbbec4c537;DATARMNET0258668025=DATARMNET63b1a086d5
 ->DATARMNETa59ce1fd2d;index=DATARMNET63b1a086d5->map_index;}cpu=
 DATARMNET63b1a086d5->map_cpu;if(DATARMNET0997c5650d[cpu].DATARMNET72067bf727){
-DATARMNET3894230a14=DATARMNET0997c5650d[cpu].DATARMNET72067bf727;}if(map){
-DATARMNET1fcbf046ec=DATARMNET8532ab3089(index,DATARMNET0258668025,
-DATARMNET63b1a086d5->DATARMNETae4b27456e.head->hash,DATARMNET3894230a14);}else{
-DATARMNET63b1a086d5->DATARMNET6250e93187=(0xd2d+202-0xdf7);}DATARMNET52de1f3dc0(
-DATARMNET4510abc30d,DATARMNETe4ee0d2636,DATARMNET63b1a086d5->hash,
-DATARMNET1fcbf046ec,DATARMNET63b1a086d5->DATARMNETae4b27456e.DATARMNET6215127f48
-,DATARMNET63b1a086d5->DATARMNETae4b27456e.DATARMNETbaa5765693,
-DATARMNET63b1a086d5,DATARMNET63b1a086d5->DATARMNETae4b27456e.head);
-DATARMNET87636d0152=(u16)DATARMNET63b1a086d5->DATARMNET341ea38662->
-DATARMNET87636d0152;for((skb=DATARMNET63b1a086d5->DATARMNETae4b27456e.head);skb
-!=NULL;skb=DATARMNETcebafc57a4){DATARMNETcebafc57a4=skb->next;if(
-DATARMNET63b1a086d5->DATARMNET6250e93187)skb->hash=DATARMNET1fcbf046ec;skb->next
-=NULL;DATARMNETe20a9cab2b+=(0xd26+209-0xdf6);DATARMNETb481d13a78+=skb->len;if(
-DATARMNET3894230a14)DATARMNET952c960091++;if(DATARMNET87636d0152>
-(0xd2d+202-0xdf7)){if(DATARMNET63b1a086d5->DATARMNET1e9d25d9ff==IPPROTO_UDP)
-DATARMNET68d84e7b98[DATARMNETdd6bf3de6b]++;DATARMNET21243b86ae(skb,
-DATARMNETf345c1d909,DATARMNET87636d0152);}else{if(DATARMNETf345c1d909==
-DATARMNET0b15fd8b54&&(!DATARMNET63b1a086d5->DATARMNET85c698ec34))
-DATARMNETe767554e6e(skb);else if(DATARMNETf345c1d909==DATARMNET5b5927fd7e&&(!
-DATARMNET63b1a086d5->DATARMNET85c698ec34))DATARMNET514ce0bf59(skb);else if(
-DATARMNET63b1a086d5->DATARMNET85c698ec34&&DATARMNETf345c1d909==
-DATARMNET0b15fd8b54){DATARMNETa4055affd5=&DATARMNET0997c5650d[
-DATARMNET63b1a086d5->map_cpu];DATARMNETde8ee16f92(DATARMNET63b1a086d5);
-spin_unlock_bh(&DATARMNET3764d083f0);rmnet_rx_handler(&skb);spin_lock_bh(&
-DATARMNET3764d083f0);DATARMNET3e37ad2816(DATARMNET63b1a086d5,&
+DATARMNET3894230a14=DATARMNET0997c5650d[cpu].DATARMNET72067bf727&&
+rmnet_shs_no_sync_off;}if(map){DATARMNET1fcbf046ec=DATARMNET8532ab3089(index,
+DATARMNET0258668025,DATARMNET63b1a086d5->DATARMNETae4b27456e.head->hash,
+DATARMNET3894230a14);}else{DATARMNET63b1a086d5->DATARMNET6250e93187=
+(0xd2d+202-0xdf7);}DATARMNET52de1f3dc0(DATARMNET4510abc30d,DATARMNETe4ee0d2636,
+DATARMNET63b1a086d5->hash,DATARMNET1fcbf046ec,DATARMNET63b1a086d5->
+DATARMNETae4b27456e.DATARMNET6215127f48,DATARMNET63b1a086d5->DATARMNETae4b27456e
+.DATARMNETbaa5765693,DATARMNET63b1a086d5,DATARMNET63b1a086d5->
+DATARMNETae4b27456e.head);DATARMNET87636d0152=(u16)DATARMNET63b1a086d5->
+DATARMNET341ea38662->DATARMNET87636d0152;for((skb=DATARMNET63b1a086d5->
+DATARMNETae4b27456e.head);skb!=NULL;skb=DATARMNETcebafc57a4){DATARMNETcebafc57a4
+=skb->next;if(DATARMNET63b1a086d5->DATARMNET6250e93187)skb->hash=
+DATARMNET1fcbf046ec;skb->next=NULL;DATARMNETe20a9cab2b+=(0xd26+209-0xdf6);
+DATARMNETb481d13a78+=skb->len;if(DATARMNET3894230a14)DATARMNET952c960091++;if(
+DATARMNET87636d0152>(0xd2d+202-0xdf7)){if(DATARMNET63b1a086d5->
+DATARMNET1e9d25d9ff==IPPROTO_UDP)DATARMNET68d84e7b98[DATARMNETdd6bf3de6b]++;
+DATARMNET21243b86ae(skb,DATARMNETf345c1d909,DATARMNET87636d0152);}else{if(
+DATARMNETf345c1d909==DATARMNET0b15fd8b54&&(!DATARMNET63b1a086d5->
+DATARMNET85c698ec34))DATARMNETe767554e6e(skb);else if(DATARMNETf345c1d909==
+DATARMNET5b5927fd7e&&(!DATARMNET63b1a086d5->DATARMNET85c698ec34))
+DATARMNET514ce0bf59(skb);else if(DATARMNET63b1a086d5->DATARMNET85c698ec34&&
+DATARMNETf345c1d909==DATARMNET0b15fd8b54){DATARMNETa4055affd5=&
+DATARMNET0997c5650d[DATARMNET63b1a086d5->map_cpu];DATARMNETde8ee16f92(
+DATARMNET63b1a086d5);spin_unlock_bh(&DATARMNET3764d083f0);rmnet_rx_handler(&skb)
+;spin_lock_bh(&DATARMNET3764d083f0);DATARMNET3e37ad2816(DATARMNET63b1a086d5,&
 DATARMNETa4055affd5->DATARMNET3dc4262f53);}else{DATARMNET14ed771dfb[
 DATARMNET94658618fc]++;netif_rx(skb);}}}DATARMNET63b1a086d5->DATARMNETae4b27456e
 .DATARMNET6215127f48=(0xd2d+202-0xdf7);DATARMNET63b1a086d5->DATARMNETae4b27456e.

+ 9 - 1
shs/rmnet_shs_modules.c

@@ -237,8 +237,16 @@ DATARMNETaf95716235,
 DATARMNET7e039054c6,uint,(0xdb7+6665-0x261c));MODULE_PARM_DESC(
 DATARMNET7e039054c6,
 "\x72\x6d\x6e\x65\x74\x20\x73\x68\x73\x20\x77\x71\x20\x72\x65\x73\x74\x61\x72\x74\x20\x63\x6f\x75\x6e\x74"
+);unsigned int DATARMNET68dc14b50d=(0xd26+209-0xdf6);module_param(
+DATARMNET68dc14b50d,uint,(0xdb7+6665-0x261c));MODULE_PARM_DESC(
+DATARMNET68dc14b50d,
+"\x72\x65\x73\x65\x72\x76\x65\x20\x6d\x61\x73\x6b\x20\x66\x65\x61\x74\x75\x72\x65\x20\x66\x6c\x61\x67"
+);unsigned int rmnet_shs_no_sync_off=(0xd26+209-0xdf6);module_param(
+rmnet_shs_no_sync_off,uint,(0xdb7+6665-0x261c));MODULE_PARM_DESC(
+rmnet_shs_no_sync_off,
+"\x72\x6d\x6e\x65\x74\x20\x6e\x6f\x20\x73\x79\x6e\x63\x20\x66\x65\x61\x74\x75\x72\x65\x20\x74\x6f\x67\x67\x6c\x65"
 );unsigned int DATARMNET952c960091=(0xd2d+202-0xdf7);module_param(
 DATARMNET952c960091,uint,(0xdb7+6665-0x261c));MODULE_PARM_DESC(
-DATARMNET7e039054c6,
+DATARMNET952c960091,
 "\x72\x6d\x6e\x65\x74\x20\x73\x68\x73\x20\x61\x73\x79\x6e\x63\x20\x70\x61\x63\x6b\x65\x74\x20\x63\x6f\x75\x6e\x74"
 );

+ 2 - 1
shs/rmnet_shs_modules.h

@@ -57,6 +57,7 @@ DATARMNET930a441406[DATARMNET0d61981934];extern unsigned int DATARMNET3874292c18
 ;extern unsigned int DATARMNETbb1a9dff8b;extern unsigned int DATARMNET121c8bc82a
 ;extern unsigned int DATARMNETd619186789;extern unsigned int DATARMNETaf95716235
 ;extern unsigned int DATARMNET7e039054c6;extern unsigned int DATARMNET952c960091
-;
+;extern unsigned int rmnet_shs_no_sync_off;extern unsigned int 
+DATARMNET68dc14b50d;
 #endif
 

+ 20 - 20
shs/rmnet_shs_wq.c

@@ -29,7 +29,7 @@ MODULE_LICENSE("\x47\x50\x4c\x20\x76\x32");
 #define DATARMNET832dcfb5f8 (0xeb7+698-0x110d)
 #define DATARMNET53bef3c026 (0xd2d+202-0xdf7)
 #define DATARMNETc5db038c35 (0xd26+209-0xdf6)
-#define DATARMNET8853edc997 (0xd11+230-0xdf3)
+#define DATARMNET8853edc997 (0xd1f+216-0xdf5)
 #define DATARMNET81ec51f31c (0xef7+637-0x10f5)
 #define DATARMNET69be7dee16 15000
 #define DATARMNETc6f7fb02ea 34000
@@ -52,25 +52,25 @@ DATARMNETecb92a9ca5);}static void DATARMNETae3b7a67f8(void){int
 DATARMNETda889fd34d=(0xd2d+202-0xdf7);int DATARMNETb9aecdfadd=(0xd2d+202-0xdf7);
 int DATARMNET054dda278c=(0xd2d+202-0xdf7);int DATARMNET09cb196c21=
 (0xd26+209-0xdf6);int DATARMNETcfb5dc7296;cpumask_t DATARMNETaec9fb9581=
-walt_get_cpus_taken();for(DATARMNETda889fd34d=(0xd2d+202-0xdf7);
-DATARMNETda889fd34d<DATARMNETc6782fed88;DATARMNETda889fd34d++){if(
-cpumask_test_cpu(DATARMNETda889fd34d,&DATARMNETaec9fb9581)){DATARMNETb9aecdfadd
-++;DATARMNET054dda278c|=(0xd26+209-0xdf6)<<DATARMNETda889fd34d;}if(
-DATARMNETb9aecdfadd>=DATARMNET8853edc997){DATARMNET68d84e7b98[
-DATARMNETdfffcec2c8]++;break;}}DATARMNET121c8bc82a=DATARMNET054dda278c;if((
-(0xd26+209-0xdf6)<<DATARMNETecc0627c70.DATARMNET7d667e828e)&DATARMNET121c8bc82a)
-{DATARMNETcfb5dc7296=DATARMNET362c14e98b(DATARMNETecc0627c70.map_mask&
-DATARMNETbc3c416b77&~DATARMNETecc0627c70.DATARMNETba3f7a11ef&~
-DATARMNET121c8bc82a);if(DATARMNETcfb5dc7296>(0xd2d+202-0xdf7)){
-DATARMNET09cb196c21=DATARMNETcfb5dc7296;DATARMNETecc0627c70.DATARMNET5c24e1df05=
-DATARMNET09cb196c21;rcu_read_lock();RCU_INIT_POINTER(rmnet_shs_switch,
-DATARMNET756778f14f);rcu_read_unlock();}}}int DATARMNETdc7bead533(unsigned 
-DATARMNET42a992465f,unsigned DATARMNET435f2b5517){struct DATARMNET228056d4b7*
-DATARMNETf632b170b1;struct DATARMNETc8fdbf9c85*DATARMNET7bea4a06a6=&
-DATARMNET6cdd58e74c;if(DATARMNET42a992465f>=DATARMNETc6782fed88){
-DATARMNET68d84e7b98[DATARMNET54b67b8a75]++;return(0xd2d+202-0xdf7);}
-DATARMNETf632b170b1=&DATARMNET7bea4a06a6->DATARMNET73464778dc[
-DATARMNET42a992465f];return DATARMNETf632b170b1->DATARMNET324c1a8f98>
+walt_get_cpus_taken();if(!DATARMNET68dc14b50d)return;for(DATARMNETda889fd34d=
+(0xd2d+202-0xdf7);DATARMNETda889fd34d<DATARMNET8853edc997;DATARMNETda889fd34d++)
+{if(cpumask_test_cpu(DATARMNETda889fd34d,&DATARMNETaec9fb9581)){
+DATARMNETb9aecdfadd++;DATARMNET054dda278c|=(0xd26+209-0xdf6)<<
+DATARMNETda889fd34d;}if(DATARMNETb9aecdfadd>=DATARMNET8853edc997){
+DATARMNET68d84e7b98[DATARMNETdfffcec2c8]++;break;}}DATARMNET121c8bc82a=
+DATARMNET054dda278c;if(((0xd26+209-0xdf6)<<DATARMNETecc0627c70.
+DATARMNET7d667e828e)&DATARMNET121c8bc82a){DATARMNETcfb5dc7296=
+DATARMNET362c14e98b(DATARMNETecc0627c70.map_mask&DATARMNETbc3c416b77&~
+DATARMNETecc0627c70.DATARMNETba3f7a11ef&~DATARMNET121c8bc82a);if(
+DATARMNETcfb5dc7296>(0xd2d+202-0xdf7)){DATARMNET09cb196c21=DATARMNETcfb5dc7296;
+DATARMNETecc0627c70.DATARMNET5c24e1df05=DATARMNET09cb196c21;rcu_read_lock();
+RCU_INIT_POINTER(rmnet_shs_switch,DATARMNET756778f14f);rcu_read_unlock();}}}int 
+DATARMNETdc7bead533(unsigned DATARMNET42a992465f,unsigned DATARMNET435f2b5517){
+struct DATARMNET228056d4b7*DATARMNETf632b170b1;struct DATARMNETc8fdbf9c85*
+DATARMNET7bea4a06a6=&DATARMNET6cdd58e74c;if(DATARMNET42a992465f>=
+DATARMNETc6782fed88){DATARMNET68d84e7b98[DATARMNET54b67b8a75]++;return
+(0xd2d+202-0xdf7);}DATARMNETf632b170b1=&DATARMNET7bea4a06a6->DATARMNET73464778dc
+[DATARMNET42a992465f];return DATARMNETf632b170b1->DATARMNET324c1a8f98>
 DATARMNET435f2b5517;}void DATARMNETa6e92c3315(struct DATARMNET6c78e47d24*
 DATARMNETd2a694d52a){DATARMNETd2a694d52a->DATARMNETadd51beef4=(0xd2d+202-0xdf7);
 DATARMNETd2a694d52a->DATARMNET68714ac92c=(0xd2d+202-0xdf7);DATARMNETd2a694d52a->