Loading shs/rmnet_shs_common.c +7 −5 Original line number Diff line number Diff line Loading @@ -61,11 +61,13 @@ DATARMNET30a3e83974,DATARMNET0763436b8d){if(!ep->DATARMNET4a4e6f66b5)continue;if (0xd26+209-0xdf6);}}if(!DATARMNET998de79791){DATARMNETecc0627c70.map_mask= (0xd2d+202-0xdf7);DATARMNETecc0627c70.map_len=(0xd2d+202-0xdf7);return;}else if( DATARMNETecc0627c70.map_mask!=mask){DATARMNETecc0627c70.map_mask=mask; DATARMNETecc0627c70.map_len=DATARMNET310c3eb16e(mask);}}void DATARMNETde8ee16f92 (struct DATARMNET63d7680df2*DATARMNET63b1a086d5){DATARMNETda96251102( DATARMNETd5eb6398da,DATARMNETe9a79499ac,(0x16e8+787-0xc0c),(0x16e8+787-0xc0c), (0x16e8+787-0xc0c),(0x16e8+787-0xc0c),NULL,NULL);list_del_init(& DATARMNET63b1a086d5->DATARMNET04c88b8191);DATARMNET349c3a0cab( DATARMNETecc0627c70.map_len=DATARMNET310c3eb16e(mask);pr_info( "\x72\x6d\x6e\x65\x74\x5f\x73\x68\x73\x3a\x20\x20\x6d\x61\x73\x6b\x3a\x20\x30\x78\x25\x78\x20\x6d\x61\x70\x6c\x65\x6e\x3a\x20\x25\x64" ,DATARMNETecc0627c70.map_mask,DATARMNETecc0627c70.map_len);}}void DATARMNETde8ee16f92(struct DATARMNET63d7680df2*DATARMNET63b1a086d5){ DATARMNETda96251102(DATARMNETd5eb6398da,DATARMNETe9a79499ac,(0x16e8+787-0xc0c), (0x16e8+787-0xc0c),(0x16e8+787-0xc0c),(0x16e8+787-0xc0c),NULL,NULL); list_del_init(&DATARMNET63b1a086d5->DATARMNET04c88b8191);DATARMNET349c3a0cab( DATARMNET63b1a086d5->map_cpu,DATARMNETbfe901fc62);}void DATARMNET3e37ad2816( struct DATARMNET63d7680df2*DATARMNET63b1a086d5,struct list_head* DATARMNET4d030eb9b5){DATARMNETda96251102(DATARMNETd5eb6398da,DATARMNET16a68afc17 Loading shs/rmnet_shs_config.c +18 −15 Original line number Diff line number Diff line Loading @@ -53,6 +53,10 @@ DATARMNET5fc54f7a13 __read_mostly={.notifier_call=DATARMNETe9173bbe0e,.priority= "\x49\x39\x39\x63\x36\x62\x34\x66\x61\x37\x38\x37\x64\x64\x34\x66\x64\x36\x33\x62\x38\x31\x64\x66\x63\x39\x32\x32\x39\x36\x65\x64\x33\x65\x63\x31\x64\x38\x37\x38\x35" , "\x49\x34\x63\x61\x64\x33\x39\x34\x66\x65\x66\x66\x31\x39\x33\x35\x63\x30\x39\x63\x33\x64\x31\x66\x30\x66\x30\x66\x34\x62\x65\x35\x66\x30\x35\x38\x33\x64\x34\x61\x64" , "\x49\x37\x66\x66\x34\x66\x66\x31\x36\x62\x62\x36\x36\x31\x39\x63\x36\x65\x36\x39\x32\x37\x30\x37\x32\x37\x63\x31\x34\x66\x30\x31\x36\x65\x64\x31\x66\x37\x35\x61\x32" , "\x49\x63\x30\x39\x31\x36\x62\x35\x39\x37\x36\x35\x37\x30\x32\x35\x32\x32\x63\x36\x66\x64\x33\x36\x38\x31\x39\x64\x63\x34\x38\x31\x37\x66\x66\x66\x33\x37\x32\x30\x39" };static int DATARMNET2cb9ae589c;int __init DATARMNET163e93649e(void){pr_info( "\x25\x73\x28\x29\x3a\x20\x53\x74\x61\x72\x74\x69\x6e\x67\x20\x72\x6d\x6e\x65\x74\x20\x53\x48\x53\x20\x6d\x6f\x64\x75\x6c\x65\x20\x25\x73\x20" "\n" ,__func__,DATARMNETbc8418e817[(0xd2d+202-0xdf7)]);trace_rmnet_shs_high( Loading @@ -72,11 +76,10 @@ net_device*dev=netdev_notifier_info_to_dev(data);struct rmnet_priv*priv;struct rmnet_port*port;int ret=(0xd2d+202-0xdf7);if(!dev){DATARMNET68d84e7b98[ DATARMNETf5157a9b85]++;return NOTIFY_DONE;}if(!(strncmp(dev->name, "\x72\x6d\x6e\x65\x74\x5f\x64\x61\x74\x61",(0xd27+224-0xdfd))==(0xd2d+202-0xdf7) ||strncmp(dev->name,"\x72\x5f\x72\x6d\x6e\x65\x74\x5f\x64\x61\x74\x61", (0xd19+238-0xdfb))==(0xd2d+202-0xdf7)))return NOTIFY_DONE;switch( DATARMNET7f045a1e6e){case NETDEV_UNREGISTER:DATARMNETd6ee05f1b4(dev); DATARMNET2cb9ae589c--;if(!DATARMNET2cb9ae589c&&DATARMNETecc0627c70. DATARMNETfc89d842ae){unsigned int DATARMNET9f4bc49c6f;pr_info( ))return NOTIFY_DONE;switch(DATARMNET7f045a1e6e){case NETDEV_DOWN: DATARMNETd6ee05f1b4(dev);break;case NETDEV_UNREGISTER:DATARMNET2cb9ae589c--;if(! DATARMNET2cb9ae589c&&DATARMNETecc0627c70.DATARMNETfc89d842ae){unsigned int DATARMNET9f4bc49c6f;pr_info( "\x72\x6d\x6e\x65\x74\x5f\x73\x68\x73\x20\x64\x65\x69\x6e\x69\x74\x20\x25\x73\x20\x67\x6f\x69\x6e\x67\x20\x64\x6f\x77\x6e\x20" ,dev->name);RCU_INIT_POINTER(rmnet_shs_skb_entry,NULL);RCU_INIT_POINTER( rmnet_shs_switch,NULL);qmi_rmnet_ps_ind_deregister(DATARMNETecc0627c70.port,& Loading @@ -94,9 +97,9 @@ pr_err( "\x72\x6d\x6e\x65\x74\x5f\x73\x68\x73\x3a\x20\x69\x6e\x76\x61\x6c\x69\x64\x20\x72\x6d\x6e\x65\x74\x5f\x70\x6f\x72\x74" );break;}DATARMNET45d8cdb224(priv->real_dev,dev);DATARMNET3ae0d614d6(); DATARMNETe1f95274f1();DATARMNETecc0627c70.DATARMNETf5ab31b9b0=(0xd26+209-0xdf6); }DATARMNET7492293980(dev);break;case NETDEV_UP:if(!DATARMNETecc0627c70. DATARMNET9c869c1ec2&&DATARMNETecc0627c70.DATARMNETfc89d842ae){port= DATARMNETecc0627c70.port;if(!port){pr_err( }break;case NETDEV_UP:if(!DATARMNETecc0627c70.DATARMNET9c869c1ec2&& DATARMNETecc0627c70.DATARMNETfc89d842ae){port=DATARMNETecc0627c70.port;if(!port) {pr_err( "\x72\x6d\x6e\x65\x74\x5f\x73\x68\x73\x3a\x20\x69\x6e\x76\x61\x6c\x69\x64\x20\x72\x6d\x6e\x65\x74\x5f\x63\x66\x67\x5f\x70\x6f\x72\x74" );break;}DATARMNETecc0627c70.DATARMNET08dbb5ab35.priority=RMNET_SHS;if(port-> data_format&RMNET_INGRESS_FORMAT_DL_MARKER_V2){DATARMNETecc0627c70. Loading @@ -110,10 +113,10 @@ pr_err( ,__func__);ret=qmi_rmnet_ps_ind_register(port,&DATARMNETecc0627c70. rmnet_idl_ind_cb);if(ret)pr_err( "\x25\x73\x28\x29\x3a\x20\x72\x6d\x6e\x65\x74\x20\x70\x73\x5f\x69\x6e\x64\x20\x72\x65\x67\x69\x73\x74\x72\x61\x74\x69\x6f\x6e\x20\x66\x61\x69\x6c" "\n" ,__func__);DATARMNET039ac6d55d();DATARMNETe46c480d71();DATARMNET0a6fb12cb2(); 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);RCU_INIT_POINTER( rmnet_shs_switch,NULL);RCU_INIT_POINTER(rmnet_shs_skb_entry,DATARMNET756778f14f) ;}break;default:break;}return NOTIFY_DONE;}module_init(DATARMNET163e93649e); module_exit(DATARMNETf3298dab6f); ,__func__);DATARMNET039ac6d55d();DATARMNET0a6fb12cb2();DATARMNET7492293980(dev); 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); RCU_INIT_POINTER(rmnet_shs_switch,NULL);RCU_INIT_POINTER(rmnet_shs_skb_entry, DATARMNET756778f14f);break;}DATARMNET7492293980(dev);break;default:break;}return NOTIFY_DONE;}module_init(DATARMNET163e93649e);module_exit(DATARMNETf3298dab6f); shs/rmnet_shs_main.c +37 −25 Original line number Diff line number Diff line Loading @@ -56,7 +56,11 @@ DATARMNET758a55f103 #define DATARMNETbfe901fc62 (0xd2d+202-0xdf7) DEFINE_SPINLOCK(DATARMNET3764d083f0);DEFINE_HASHTABLE(DATARMNETe603c3a4b3, DATARMNET25437d35fd);struct DATARMNETe600c5b727 DATARMNET0997c5650d[ DATARMNETc6782fed88];int DATARMNETcff375d916[DATARMNETc6782fed88];struct DATARMNETc6782fed88];int DATARMNETcff375d916[DATARMNETc6782fed88];unsigned int DATARMNETaf998640fd __read_mostly=(0xcb7+2213-0x123c);module_param( DATARMNETaf998640fd,uint,(0xdb7+6665-0x261c));MODULE_PARM_DESC( DATARMNETaf998640fd, "\x4d\x61\x78\x20\x71\x6d\x61\x70\x20\x62\x61\x63\x6b\x6c\x6f\x67");struct DATARMNETa6b20d7e8b DATARMNETecc0627c70;struct DATARMNET37ef896af8 shs_rx_work; ssize_t DATARMNET713da9913c(struct netdev_rx_queue*DATARMNETb4180393e4,u8 cpu,u8 DATARMNETa7a5705ab0,u8 DATARMNET5780499e9c){struct rps_map*DATARMNETaeb4918e65, Loading Loading @@ -192,23 +196,30 @@ DATARMNETf54fdb137b=DATARMNET98b2a0ce62(dev);DATARMNET52de1f3dc0( DATARMNET720469c0a9,DATARMNET7e63a08ad4,DATARMNETf54fdb137b,DATARMNETab155dfd5d, (0x16e8+787-0xc0c),(0x16e8+787-0xc0c),NULL,NULL);return DATARMNETf54fdb137b;}int DATARMNET6af33ebb5b(struct DATARMNET63d7680df2*DATARMNET63b1a086d5){int cpu= DATARMNETb91aee91fd;u8 DATARMNETd4a0b11b47;if(DATARMNET63b1a086d5-> DATARMNET85c698ec34)return DATARMNETecc0627c70.DATARMNET5c24e1df05;else if( DATARMNET0997c5650d[DATARMNET63b1a086d5->map_cpu].DATARMNETef866573e0&& DATARMNET362b15f941(DATARMNET63b1a086d5->map_cpu)){cpu=DATARMNET762cfa52fe( DATARMNETbc3c416b77&~DATARMNETecc0627c70.DATARMNETba3f7a11ef&DATARMNET63b1a086d5 ->DATARMNETfbbec4c537);if(cpu<(0xd2d+202-0xdf7)&&DATARMNET63b1a086d5-> DATARMNET341ea38662!=NULL)cpu=DATARMNET63b1a086d5->DATARMNET341ea38662-> DATARMNET6e1a4eaf09;}else if(DATARMNET63b1a086d5->DATARMNET341ea38662!=NULL){cpu =DATARMNET63b1a086d5->DATARMNET341ea38662->DATARMNET6e1a4eaf09;if(( (0xd26+209-0xdf6)<<DATARMNET63b1a086d5->map_cpu)&DATARMNETecc0627c70. DATARMNETba3f7a11ef||((0xd26+209-0xdf6)<<cpu)&DATARMNETecc0627c70. DATARMNETba3f7a11ef){DATARMNETd4a0b11b47=(DATARMNETbc3c416b77&((0xd26+209-0xdf6) <<cpu))?DATARMNETbc3c416b77:DATARMNET9273f84bf1;cpu=DATARMNET762cfa52fe( DATARMNETb91aee91fd;u8 DATARMNETd4a0b11b47;u8 DATARMNET7dc3d97229;if( DATARMNET63b1a086d5->DATARMNET85c698ec34)return DATARMNETecc0627c70. DATARMNET5c24e1df05;else if(DATARMNET0997c5650d[DATARMNET63b1a086d5->map_cpu]. DATARMNETef866573e0&&DATARMNET362b15f941(DATARMNET63b1a086d5->map_cpu)){cpu= DATARMNET762cfa52fe(DATARMNETbc3c416b77&~DATARMNETecc0627c70.DATARMNETba3f7a11ef &DATARMNET63b1a086d5->DATARMNETfbbec4c537);if(cpu<(0xd2d+202-0xdf7)&& DATARMNET63b1a086d5->DATARMNET341ea38662!=NULL)cpu=DATARMNET63b1a086d5-> DATARMNET341ea38662->DATARMNET6e1a4eaf09;}else if(DATARMNET63b1a086d5-> DATARMNET341ea38662!=NULL){cpu=DATARMNET63b1a086d5->DATARMNET341ea38662-> DATARMNET6e1a4eaf09;if(((0xd26+209-0xdf6)<<DATARMNET63b1a086d5->map_cpu)& DATARMNETecc0627c70.DATARMNETba3f7a11ef){DATARMNETd4a0b11b47=( DATARMNETbc3c416b77&((0xd26+209-0xdf6)<<cpu))?DATARMNETbc3c416b77: DATARMNET9273f84bf1;cpu=DATARMNET762cfa52fe(DATARMNETd4a0b11b47&~ DATARMNETecc0627c70.DATARMNETba3f7a11ef&DATARMNET63b1a086d5->DATARMNETfbbec4c537 );DATARMNETb7ddf3c5dd[DATARMNET7f401828b3]++;}else if(((0xd26+209-0xdf6)<<cpu)& DATARMNETecc0627c70.DATARMNETba3f7a11ef){DATARMNETd4a0b11b47=( DATARMNETbc3c416b77&((0xd26+209-0xdf6)<<cpu))?DATARMNETbc3c416b77: DATARMNET9273f84bf1;DATARMNET7dc3d97229=(DATARMNETbc3c416b77&((0xd26+209-0xdf6) <<DATARMNET63b1a086d5->map_cpu))?DATARMNETbc3c416b77:DATARMNET9273f84bf1;if( DATARMNETd4a0b11b47!=DATARMNET7dc3d97229)cpu=DATARMNET762cfa52fe( DATARMNETd4a0b11b47&~DATARMNETecc0627c70.DATARMNETba3f7a11ef&DATARMNET63b1a086d5 ->DATARMNETfbbec4c537);DATARMNETb7ddf3c5dd[DATARMNET7f401828b3]++;}}return cpu;} int DATARMNETb6bff4a724(struct DATARMNET63d7680df2*DATARMNET63b1a086d5){int cpu, idx=DATARMNETb91aee91fd;cpu=DATARMNET6af33ebb5b(DATARMNET63b1a086d5);idx= ->DATARMNETfbbec4c537);else cpu=DATARMNET63b1a086d5->map_cpu;}}return cpu;}int DATARMNETb6bff4a724(struct DATARMNET63d7680df2*DATARMNET63b1a086d5){int cpu,idx= DATARMNETb91aee91fd;cpu=DATARMNET6af33ebb5b(DATARMNET63b1a086d5);idx= DATARMNET04e8d1b862(cpu,DATARMNET63b1a086d5->DATARMNETfbbec4c537);if(unlikely( idx<(0xd2d+202-0xdf7)))idx=DATARMNET04e8d1b862(DATARMNET63b1a086d5->map_cpu, DATARMNET63b1a086d5->DATARMNETfbbec4c537);DATARMNETda96251102( Loading Loading @@ -354,7 +365,7 @@ DATARMNET63b1a086d5->DATARMNET1e9d25d9ff==IPPROTO_UDP)DATARMNET68d84e7b98[ DATARMNETdd6bf3de6b]++;DATARMNET21243b86ae(skb,DATARMNETf345c1d909, DATARMNET87636d0152);}else{if(DATARMNETf345c1d909==DATARMNET0b15fd8b54&&(! DATARMNET63b1a086d5->DATARMNET85c698ec34))DATARMNETe767554e6e(skb);else if( DATARMNETf345c1d909==DATARMNET5b5927fd7e&&DATARMNET63b1a086d5-> DATARMNETf345c1d909==DATARMNET5b5927fd7e&&!DATARMNET63b1a086d5-> DATARMNET85c698ec34)DATARMNETe767554e6e(skb);else DATARMNET514ce0bf59(skb);}} DATARMNET63b1a086d5->DATARMNETae4b27456e.DATARMNET6215127f48=(0xd2d+202-0xdf7); DATARMNET63b1a086d5->DATARMNETae4b27456e.DATARMNETbaa5765693=(0xd2d+202-0xdf7); Loading @@ -376,7 +387,7 @@ DATARMNET63b1a086d5->DATARMNETae4b27456e.head);skb!=NULL;skb=DATARMNETcebafc57a4 ->hash=DATARMNET1fcbf046ec;skb->next=NULL;DATARMNETe20a9cab2b+=(0xd26+209-0xdf6) ;DATARMNETb481d13a78+=skb->len;if(DATARMNET5447204733==DATARMNET0b15fd8b54&&(! DATARMNET63b1a086d5->DATARMNET85c698ec34))DATARMNETe767554e6e(skb);else if( DATARMNET5447204733==DATARMNET5b5927fd7e&&DATARMNET63b1a086d5-> DATARMNET5447204733==DATARMNET5b5927fd7e&&!DATARMNET63b1a086d5-> DATARMNET85c698ec34)DATARMNETe767554e6e(skb);else DATARMNET514ce0bf59(skb);} DATARMNET68d84e7b98[DATARMNET72db8b9bac]++;DATARMNETecc0627c70. DATARMNETc252a1f55d-=DATARMNETb481d13a78;DATARMNETecc0627c70.DATARMNETa2e32cdd3a Loading Loading @@ -665,12 +676,13 @@ DATARMNET85c698ec34){if(node_p->map_cpu>=(0xd2d+202-0xdf7)&&node_p->map_cpu< DATARMNETc6782fed88){if(!hrtimer_active(&DATARMNETba5ea4329f(node_p->map_cpu))) hrtimer_start(&DATARMNETba5ea4329f(node_p->map_cpu),ns_to_ktime( DATARMNET4ac8af832c*DATARMNET68fc0be252),HRTIMER_MODE_REL);}if( raw_smp_processor_id()==DATARMNETecc0627c70.DATARMNET7d667e828e){ DATARMNET68d84e7b98[DATARMNET048727d1d9]++;DATARMNET7c5ef97eab=(0xd26+209-0xdf6) ;}if(DATARMNET0bf01e7c6f->max_pkts&&node_p->DATARMNETae4b27456e. DATARMNET6215127f48>DATARMNET0bf01e7c6f->max_pkts)DATARMNET7c5ef97eab= (0xd26+209-0xdf6);}break;}if(is_match_found)break;if(DATARMNET0bf01e7c6f-> map_mask){DATARMNETcfb5dc7296=DATARMNET362c14e98b(DATARMNETecc0627c70.map_mask& raw_smp_processor_id()!=DATARMNETecc0627c70.DATARMNET7d667e828e&&( DATARMNETecc0627c70.DATARMNET7d667e828e==DATARMNETecc0627c70.DATARMNET5c24e1df05 )){DATARMNET68d84e7b98[DATARMNET048727d1d9]++;DATARMNET7c5ef97eab= (0xd26+209-0xdf6);}if(DATARMNETaf998640fd&&node_p->DATARMNETae4b27456e. DATARMNET6215127f48>DATARMNETaf998640fd)DATARMNET7c5ef97eab=(0xd26+209-0xdf6);} break;}if(is_match_found)break;if(DATARMNET0bf01e7c6f->map_mask){ DATARMNETcfb5dc7296=DATARMNET362c14e98b(DATARMNETecc0627c70.map_mask& DATARMNET9273f84bf1&~DATARMNETecc0627c70.DATARMNETba3f7a11ef);}else{ DATARMNETcfb5dc7296=DATARMNET217fe38119((0xd2d+202-0xdf7),skb->dev);}if( DATARMNETcfb5dc7296<(0xd2d+202-0xdf7)){DATARMNET68d84e7b98[DATARMNETa1f9420686] Loading shs/rmnet_shs_wq_genl.c +2 −2 Original line number Diff line number Diff line Loading @@ -131,7 +131,7 @@ if(na){if(nla_memcpy(&DATARMNET7f0ce2d6ad,na,sizeof(DATARMNET7f0ce2d6ad))> (0xd26+209-0xdf6)<<DATARMNET7f0ce2d6ad.DATARMNET208ea67e1d)&DATARMNET9273f84bf1) ||(((0xd26+209-0xdf6)<<DATARMNETecc0627c70.DATARMNET5c24e1df05)& DATARMNET9273f84bf1)){DATARMNET5d4ca1da1c(DATARMNET54338da2ff, DATARMNET96de786762);return-(0xd26+209-0xdf6);}DATARMNETecc0627c70. DATARMNET2d19c9b1ef);return-(0xd26+209-0xdf6);}DATARMNETecc0627c70. DATARMNET5c24e1df05=DATARMNET7f0ce2d6ad.DATARMNET208ea67e1d;rcu_read_lock(); RCU_INIT_POINTER(rmnet_shs_switch,DATARMNET756778f14f);rcu_read_unlock(); DATARMNET5d4ca1da1c(DATARMNET54338da2ff,DATARMNET2d19c9b1ef);return Loading @@ -139,7 +139,7 @@ DATARMNET5d4ca1da1c(DATARMNET54338da2ff,DATARMNET2d19c9b1ef);return DATARMNET37da25c8e8){if(!(((0xd26+209-0xdf6)<<DATARMNET7f0ce2d6ad. DATARMNET208ea67e1d)&DATARMNETbc3c416b77)||(((0xd26+209-0xdf6)<< DATARMNETecc0627c70.DATARMNET5c24e1df05)&DATARMNETbc3c416b77)){ DATARMNET5d4ca1da1c(DATARMNET54338da2ff,DATARMNET96de786762);return- DATARMNET5d4ca1da1c(DATARMNET54338da2ff,DATARMNET2d19c9b1ef);return- (0xd26+209-0xdf6);}DATARMNETecc0627c70.DATARMNET5c24e1df05=DATARMNET7f0ce2d6ad. DATARMNET208ea67e1d;rcu_read_lock();RCU_INIT_POINTER(rmnet_shs_switch, DATARMNET756778f14f);rcu_read_unlock();DATARMNET5d4ca1da1c(DATARMNET54338da2ff, Loading Loading
shs/rmnet_shs_common.c +7 −5 Original line number Diff line number Diff line Loading @@ -61,11 +61,13 @@ DATARMNET30a3e83974,DATARMNET0763436b8d){if(!ep->DATARMNET4a4e6f66b5)continue;if (0xd26+209-0xdf6);}}if(!DATARMNET998de79791){DATARMNETecc0627c70.map_mask= (0xd2d+202-0xdf7);DATARMNETecc0627c70.map_len=(0xd2d+202-0xdf7);return;}else if( DATARMNETecc0627c70.map_mask!=mask){DATARMNETecc0627c70.map_mask=mask; DATARMNETecc0627c70.map_len=DATARMNET310c3eb16e(mask);}}void DATARMNETde8ee16f92 (struct DATARMNET63d7680df2*DATARMNET63b1a086d5){DATARMNETda96251102( DATARMNETd5eb6398da,DATARMNETe9a79499ac,(0x16e8+787-0xc0c),(0x16e8+787-0xc0c), (0x16e8+787-0xc0c),(0x16e8+787-0xc0c),NULL,NULL);list_del_init(& DATARMNET63b1a086d5->DATARMNET04c88b8191);DATARMNET349c3a0cab( DATARMNETecc0627c70.map_len=DATARMNET310c3eb16e(mask);pr_info( "\x72\x6d\x6e\x65\x74\x5f\x73\x68\x73\x3a\x20\x20\x6d\x61\x73\x6b\x3a\x20\x30\x78\x25\x78\x20\x6d\x61\x70\x6c\x65\x6e\x3a\x20\x25\x64" ,DATARMNETecc0627c70.map_mask,DATARMNETecc0627c70.map_len);}}void DATARMNETde8ee16f92(struct DATARMNET63d7680df2*DATARMNET63b1a086d5){ DATARMNETda96251102(DATARMNETd5eb6398da,DATARMNETe9a79499ac,(0x16e8+787-0xc0c), (0x16e8+787-0xc0c),(0x16e8+787-0xc0c),(0x16e8+787-0xc0c),NULL,NULL); list_del_init(&DATARMNET63b1a086d5->DATARMNET04c88b8191);DATARMNET349c3a0cab( DATARMNET63b1a086d5->map_cpu,DATARMNETbfe901fc62);}void DATARMNET3e37ad2816( struct DATARMNET63d7680df2*DATARMNET63b1a086d5,struct list_head* DATARMNET4d030eb9b5){DATARMNETda96251102(DATARMNETd5eb6398da,DATARMNET16a68afc17 Loading
shs/rmnet_shs_config.c +18 −15 Original line number Diff line number Diff line Loading @@ -53,6 +53,10 @@ DATARMNET5fc54f7a13 __read_mostly={.notifier_call=DATARMNETe9173bbe0e,.priority= "\x49\x39\x39\x63\x36\x62\x34\x66\x61\x37\x38\x37\x64\x64\x34\x66\x64\x36\x33\x62\x38\x31\x64\x66\x63\x39\x32\x32\x39\x36\x65\x64\x33\x65\x63\x31\x64\x38\x37\x38\x35" , "\x49\x34\x63\x61\x64\x33\x39\x34\x66\x65\x66\x66\x31\x39\x33\x35\x63\x30\x39\x63\x33\x64\x31\x66\x30\x66\x30\x66\x34\x62\x65\x35\x66\x30\x35\x38\x33\x64\x34\x61\x64" , "\x49\x37\x66\x66\x34\x66\x66\x31\x36\x62\x62\x36\x36\x31\x39\x63\x36\x65\x36\x39\x32\x37\x30\x37\x32\x37\x63\x31\x34\x66\x30\x31\x36\x65\x64\x31\x66\x37\x35\x61\x32" , "\x49\x63\x30\x39\x31\x36\x62\x35\x39\x37\x36\x35\x37\x30\x32\x35\x32\x32\x63\x36\x66\x64\x33\x36\x38\x31\x39\x64\x63\x34\x38\x31\x37\x66\x66\x66\x33\x37\x32\x30\x39" };static int DATARMNET2cb9ae589c;int __init DATARMNET163e93649e(void){pr_info( "\x25\x73\x28\x29\x3a\x20\x53\x74\x61\x72\x74\x69\x6e\x67\x20\x72\x6d\x6e\x65\x74\x20\x53\x48\x53\x20\x6d\x6f\x64\x75\x6c\x65\x20\x25\x73\x20" "\n" ,__func__,DATARMNETbc8418e817[(0xd2d+202-0xdf7)]);trace_rmnet_shs_high( Loading @@ -72,11 +76,10 @@ net_device*dev=netdev_notifier_info_to_dev(data);struct rmnet_priv*priv;struct rmnet_port*port;int ret=(0xd2d+202-0xdf7);if(!dev){DATARMNET68d84e7b98[ DATARMNETf5157a9b85]++;return NOTIFY_DONE;}if(!(strncmp(dev->name, "\x72\x6d\x6e\x65\x74\x5f\x64\x61\x74\x61",(0xd27+224-0xdfd))==(0xd2d+202-0xdf7) ||strncmp(dev->name,"\x72\x5f\x72\x6d\x6e\x65\x74\x5f\x64\x61\x74\x61", (0xd19+238-0xdfb))==(0xd2d+202-0xdf7)))return NOTIFY_DONE;switch( DATARMNET7f045a1e6e){case NETDEV_UNREGISTER:DATARMNETd6ee05f1b4(dev); DATARMNET2cb9ae589c--;if(!DATARMNET2cb9ae589c&&DATARMNETecc0627c70. DATARMNETfc89d842ae){unsigned int DATARMNET9f4bc49c6f;pr_info( ))return NOTIFY_DONE;switch(DATARMNET7f045a1e6e){case NETDEV_DOWN: DATARMNETd6ee05f1b4(dev);break;case NETDEV_UNREGISTER:DATARMNET2cb9ae589c--;if(! DATARMNET2cb9ae589c&&DATARMNETecc0627c70.DATARMNETfc89d842ae){unsigned int DATARMNET9f4bc49c6f;pr_info( "\x72\x6d\x6e\x65\x74\x5f\x73\x68\x73\x20\x64\x65\x69\x6e\x69\x74\x20\x25\x73\x20\x67\x6f\x69\x6e\x67\x20\x64\x6f\x77\x6e\x20" ,dev->name);RCU_INIT_POINTER(rmnet_shs_skb_entry,NULL);RCU_INIT_POINTER( rmnet_shs_switch,NULL);qmi_rmnet_ps_ind_deregister(DATARMNETecc0627c70.port,& Loading @@ -94,9 +97,9 @@ pr_err( "\x72\x6d\x6e\x65\x74\x5f\x73\x68\x73\x3a\x20\x69\x6e\x76\x61\x6c\x69\x64\x20\x72\x6d\x6e\x65\x74\x5f\x70\x6f\x72\x74" );break;}DATARMNET45d8cdb224(priv->real_dev,dev);DATARMNET3ae0d614d6(); DATARMNETe1f95274f1();DATARMNETecc0627c70.DATARMNETf5ab31b9b0=(0xd26+209-0xdf6); }DATARMNET7492293980(dev);break;case NETDEV_UP:if(!DATARMNETecc0627c70. DATARMNET9c869c1ec2&&DATARMNETecc0627c70.DATARMNETfc89d842ae){port= DATARMNETecc0627c70.port;if(!port){pr_err( }break;case NETDEV_UP:if(!DATARMNETecc0627c70.DATARMNET9c869c1ec2&& DATARMNETecc0627c70.DATARMNETfc89d842ae){port=DATARMNETecc0627c70.port;if(!port) {pr_err( "\x72\x6d\x6e\x65\x74\x5f\x73\x68\x73\x3a\x20\x69\x6e\x76\x61\x6c\x69\x64\x20\x72\x6d\x6e\x65\x74\x5f\x63\x66\x67\x5f\x70\x6f\x72\x74" );break;}DATARMNETecc0627c70.DATARMNET08dbb5ab35.priority=RMNET_SHS;if(port-> data_format&RMNET_INGRESS_FORMAT_DL_MARKER_V2){DATARMNETecc0627c70. Loading @@ -110,10 +113,10 @@ pr_err( ,__func__);ret=qmi_rmnet_ps_ind_register(port,&DATARMNETecc0627c70. rmnet_idl_ind_cb);if(ret)pr_err( "\x25\x73\x28\x29\x3a\x20\x72\x6d\x6e\x65\x74\x20\x70\x73\x5f\x69\x6e\x64\x20\x72\x65\x67\x69\x73\x74\x72\x61\x74\x69\x6f\x6e\x20\x66\x61\x69\x6c" "\n" ,__func__);DATARMNET039ac6d55d();DATARMNETe46c480d71();DATARMNET0a6fb12cb2(); 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);RCU_INIT_POINTER( rmnet_shs_switch,NULL);RCU_INIT_POINTER(rmnet_shs_skb_entry,DATARMNET756778f14f) ;}break;default:break;}return NOTIFY_DONE;}module_init(DATARMNET163e93649e); module_exit(DATARMNETf3298dab6f); ,__func__);DATARMNET039ac6d55d();DATARMNET0a6fb12cb2();DATARMNET7492293980(dev); 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); RCU_INIT_POINTER(rmnet_shs_switch,NULL);RCU_INIT_POINTER(rmnet_shs_skb_entry, DATARMNET756778f14f);break;}DATARMNET7492293980(dev);break;default:break;}return NOTIFY_DONE;}module_init(DATARMNET163e93649e);module_exit(DATARMNETf3298dab6f);
shs/rmnet_shs_main.c +37 −25 Original line number Diff line number Diff line Loading @@ -56,7 +56,11 @@ DATARMNET758a55f103 #define DATARMNETbfe901fc62 (0xd2d+202-0xdf7) DEFINE_SPINLOCK(DATARMNET3764d083f0);DEFINE_HASHTABLE(DATARMNETe603c3a4b3, DATARMNET25437d35fd);struct DATARMNETe600c5b727 DATARMNET0997c5650d[ DATARMNETc6782fed88];int DATARMNETcff375d916[DATARMNETc6782fed88];struct DATARMNETc6782fed88];int DATARMNETcff375d916[DATARMNETc6782fed88];unsigned int DATARMNETaf998640fd __read_mostly=(0xcb7+2213-0x123c);module_param( DATARMNETaf998640fd,uint,(0xdb7+6665-0x261c));MODULE_PARM_DESC( DATARMNETaf998640fd, "\x4d\x61\x78\x20\x71\x6d\x61\x70\x20\x62\x61\x63\x6b\x6c\x6f\x67");struct DATARMNETa6b20d7e8b DATARMNETecc0627c70;struct DATARMNET37ef896af8 shs_rx_work; ssize_t DATARMNET713da9913c(struct netdev_rx_queue*DATARMNETb4180393e4,u8 cpu,u8 DATARMNETa7a5705ab0,u8 DATARMNET5780499e9c){struct rps_map*DATARMNETaeb4918e65, Loading Loading @@ -192,23 +196,30 @@ DATARMNETf54fdb137b=DATARMNET98b2a0ce62(dev);DATARMNET52de1f3dc0( DATARMNET720469c0a9,DATARMNET7e63a08ad4,DATARMNETf54fdb137b,DATARMNETab155dfd5d, (0x16e8+787-0xc0c),(0x16e8+787-0xc0c),NULL,NULL);return DATARMNETf54fdb137b;}int DATARMNET6af33ebb5b(struct DATARMNET63d7680df2*DATARMNET63b1a086d5){int cpu= DATARMNETb91aee91fd;u8 DATARMNETd4a0b11b47;if(DATARMNET63b1a086d5-> DATARMNET85c698ec34)return DATARMNETecc0627c70.DATARMNET5c24e1df05;else if( DATARMNET0997c5650d[DATARMNET63b1a086d5->map_cpu].DATARMNETef866573e0&& DATARMNET362b15f941(DATARMNET63b1a086d5->map_cpu)){cpu=DATARMNET762cfa52fe( DATARMNETbc3c416b77&~DATARMNETecc0627c70.DATARMNETba3f7a11ef&DATARMNET63b1a086d5 ->DATARMNETfbbec4c537);if(cpu<(0xd2d+202-0xdf7)&&DATARMNET63b1a086d5-> DATARMNET341ea38662!=NULL)cpu=DATARMNET63b1a086d5->DATARMNET341ea38662-> DATARMNET6e1a4eaf09;}else if(DATARMNET63b1a086d5->DATARMNET341ea38662!=NULL){cpu =DATARMNET63b1a086d5->DATARMNET341ea38662->DATARMNET6e1a4eaf09;if(( (0xd26+209-0xdf6)<<DATARMNET63b1a086d5->map_cpu)&DATARMNETecc0627c70. DATARMNETba3f7a11ef||((0xd26+209-0xdf6)<<cpu)&DATARMNETecc0627c70. DATARMNETba3f7a11ef){DATARMNETd4a0b11b47=(DATARMNETbc3c416b77&((0xd26+209-0xdf6) <<cpu))?DATARMNETbc3c416b77:DATARMNET9273f84bf1;cpu=DATARMNET762cfa52fe( DATARMNETb91aee91fd;u8 DATARMNETd4a0b11b47;u8 DATARMNET7dc3d97229;if( DATARMNET63b1a086d5->DATARMNET85c698ec34)return DATARMNETecc0627c70. DATARMNET5c24e1df05;else if(DATARMNET0997c5650d[DATARMNET63b1a086d5->map_cpu]. DATARMNETef866573e0&&DATARMNET362b15f941(DATARMNET63b1a086d5->map_cpu)){cpu= DATARMNET762cfa52fe(DATARMNETbc3c416b77&~DATARMNETecc0627c70.DATARMNETba3f7a11ef &DATARMNET63b1a086d5->DATARMNETfbbec4c537);if(cpu<(0xd2d+202-0xdf7)&& DATARMNET63b1a086d5->DATARMNET341ea38662!=NULL)cpu=DATARMNET63b1a086d5-> DATARMNET341ea38662->DATARMNET6e1a4eaf09;}else if(DATARMNET63b1a086d5-> DATARMNET341ea38662!=NULL){cpu=DATARMNET63b1a086d5->DATARMNET341ea38662-> DATARMNET6e1a4eaf09;if(((0xd26+209-0xdf6)<<DATARMNET63b1a086d5->map_cpu)& DATARMNETecc0627c70.DATARMNETba3f7a11ef){DATARMNETd4a0b11b47=( DATARMNETbc3c416b77&((0xd26+209-0xdf6)<<cpu))?DATARMNETbc3c416b77: DATARMNET9273f84bf1;cpu=DATARMNET762cfa52fe(DATARMNETd4a0b11b47&~ DATARMNETecc0627c70.DATARMNETba3f7a11ef&DATARMNET63b1a086d5->DATARMNETfbbec4c537 );DATARMNETb7ddf3c5dd[DATARMNET7f401828b3]++;}else if(((0xd26+209-0xdf6)<<cpu)& DATARMNETecc0627c70.DATARMNETba3f7a11ef){DATARMNETd4a0b11b47=( DATARMNETbc3c416b77&((0xd26+209-0xdf6)<<cpu))?DATARMNETbc3c416b77: DATARMNET9273f84bf1;DATARMNET7dc3d97229=(DATARMNETbc3c416b77&((0xd26+209-0xdf6) <<DATARMNET63b1a086d5->map_cpu))?DATARMNETbc3c416b77:DATARMNET9273f84bf1;if( DATARMNETd4a0b11b47!=DATARMNET7dc3d97229)cpu=DATARMNET762cfa52fe( DATARMNETd4a0b11b47&~DATARMNETecc0627c70.DATARMNETba3f7a11ef&DATARMNET63b1a086d5 ->DATARMNETfbbec4c537);DATARMNETb7ddf3c5dd[DATARMNET7f401828b3]++;}}return cpu;} int DATARMNETb6bff4a724(struct DATARMNET63d7680df2*DATARMNET63b1a086d5){int cpu, idx=DATARMNETb91aee91fd;cpu=DATARMNET6af33ebb5b(DATARMNET63b1a086d5);idx= ->DATARMNETfbbec4c537);else cpu=DATARMNET63b1a086d5->map_cpu;}}return cpu;}int DATARMNETb6bff4a724(struct DATARMNET63d7680df2*DATARMNET63b1a086d5){int cpu,idx= DATARMNETb91aee91fd;cpu=DATARMNET6af33ebb5b(DATARMNET63b1a086d5);idx= DATARMNET04e8d1b862(cpu,DATARMNET63b1a086d5->DATARMNETfbbec4c537);if(unlikely( idx<(0xd2d+202-0xdf7)))idx=DATARMNET04e8d1b862(DATARMNET63b1a086d5->map_cpu, DATARMNET63b1a086d5->DATARMNETfbbec4c537);DATARMNETda96251102( Loading Loading @@ -354,7 +365,7 @@ DATARMNET63b1a086d5->DATARMNET1e9d25d9ff==IPPROTO_UDP)DATARMNET68d84e7b98[ DATARMNETdd6bf3de6b]++;DATARMNET21243b86ae(skb,DATARMNETf345c1d909, DATARMNET87636d0152);}else{if(DATARMNETf345c1d909==DATARMNET0b15fd8b54&&(! DATARMNET63b1a086d5->DATARMNET85c698ec34))DATARMNETe767554e6e(skb);else if( DATARMNETf345c1d909==DATARMNET5b5927fd7e&&DATARMNET63b1a086d5-> DATARMNETf345c1d909==DATARMNET5b5927fd7e&&!DATARMNET63b1a086d5-> DATARMNET85c698ec34)DATARMNETe767554e6e(skb);else DATARMNET514ce0bf59(skb);}} DATARMNET63b1a086d5->DATARMNETae4b27456e.DATARMNET6215127f48=(0xd2d+202-0xdf7); DATARMNET63b1a086d5->DATARMNETae4b27456e.DATARMNETbaa5765693=(0xd2d+202-0xdf7); Loading @@ -376,7 +387,7 @@ DATARMNET63b1a086d5->DATARMNETae4b27456e.head);skb!=NULL;skb=DATARMNETcebafc57a4 ->hash=DATARMNET1fcbf046ec;skb->next=NULL;DATARMNETe20a9cab2b+=(0xd26+209-0xdf6) ;DATARMNETb481d13a78+=skb->len;if(DATARMNET5447204733==DATARMNET0b15fd8b54&&(! DATARMNET63b1a086d5->DATARMNET85c698ec34))DATARMNETe767554e6e(skb);else if( DATARMNET5447204733==DATARMNET5b5927fd7e&&DATARMNET63b1a086d5-> DATARMNET5447204733==DATARMNET5b5927fd7e&&!DATARMNET63b1a086d5-> DATARMNET85c698ec34)DATARMNETe767554e6e(skb);else DATARMNET514ce0bf59(skb);} DATARMNET68d84e7b98[DATARMNET72db8b9bac]++;DATARMNETecc0627c70. DATARMNETc252a1f55d-=DATARMNETb481d13a78;DATARMNETecc0627c70.DATARMNETa2e32cdd3a Loading Loading @@ -665,12 +676,13 @@ DATARMNET85c698ec34){if(node_p->map_cpu>=(0xd2d+202-0xdf7)&&node_p->map_cpu< DATARMNETc6782fed88){if(!hrtimer_active(&DATARMNETba5ea4329f(node_p->map_cpu))) hrtimer_start(&DATARMNETba5ea4329f(node_p->map_cpu),ns_to_ktime( DATARMNET4ac8af832c*DATARMNET68fc0be252),HRTIMER_MODE_REL);}if( raw_smp_processor_id()==DATARMNETecc0627c70.DATARMNET7d667e828e){ DATARMNET68d84e7b98[DATARMNET048727d1d9]++;DATARMNET7c5ef97eab=(0xd26+209-0xdf6) ;}if(DATARMNET0bf01e7c6f->max_pkts&&node_p->DATARMNETae4b27456e. DATARMNET6215127f48>DATARMNET0bf01e7c6f->max_pkts)DATARMNET7c5ef97eab= (0xd26+209-0xdf6);}break;}if(is_match_found)break;if(DATARMNET0bf01e7c6f-> map_mask){DATARMNETcfb5dc7296=DATARMNET362c14e98b(DATARMNETecc0627c70.map_mask& raw_smp_processor_id()!=DATARMNETecc0627c70.DATARMNET7d667e828e&&( DATARMNETecc0627c70.DATARMNET7d667e828e==DATARMNETecc0627c70.DATARMNET5c24e1df05 )){DATARMNET68d84e7b98[DATARMNET048727d1d9]++;DATARMNET7c5ef97eab= (0xd26+209-0xdf6);}if(DATARMNETaf998640fd&&node_p->DATARMNETae4b27456e. DATARMNET6215127f48>DATARMNETaf998640fd)DATARMNET7c5ef97eab=(0xd26+209-0xdf6);} break;}if(is_match_found)break;if(DATARMNET0bf01e7c6f->map_mask){ DATARMNETcfb5dc7296=DATARMNET362c14e98b(DATARMNETecc0627c70.map_mask& DATARMNET9273f84bf1&~DATARMNETecc0627c70.DATARMNETba3f7a11ef);}else{ DATARMNETcfb5dc7296=DATARMNET217fe38119((0xd2d+202-0xdf7),skb->dev);}if( DATARMNETcfb5dc7296<(0xd2d+202-0xdf7)){DATARMNET68d84e7b98[DATARMNETa1f9420686] Loading
shs/rmnet_shs_wq_genl.c +2 −2 Original line number Diff line number Diff line Loading @@ -131,7 +131,7 @@ if(na){if(nla_memcpy(&DATARMNET7f0ce2d6ad,na,sizeof(DATARMNET7f0ce2d6ad))> (0xd26+209-0xdf6)<<DATARMNET7f0ce2d6ad.DATARMNET208ea67e1d)&DATARMNET9273f84bf1) ||(((0xd26+209-0xdf6)<<DATARMNETecc0627c70.DATARMNET5c24e1df05)& DATARMNET9273f84bf1)){DATARMNET5d4ca1da1c(DATARMNET54338da2ff, DATARMNET96de786762);return-(0xd26+209-0xdf6);}DATARMNETecc0627c70. DATARMNET2d19c9b1ef);return-(0xd26+209-0xdf6);}DATARMNETecc0627c70. DATARMNET5c24e1df05=DATARMNET7f0ce2d6ad.DATARMNET208ea67e1d;rcu_read_lock(); RCU_INIT_POINTER(rmnet_shs_switch,DATARMNET756778f14f);rcu_read_unlock(); DATARMNET5d4ca1da1c(DATARMNET54338da2ff,DATARMNET2d19c9b1ef);return Loading @@ -139,7 +139,7 @@ DATARMNET5d4ca1da1c(DATARMNET54338da2ff,DATARMNET2d19c9b1ef);return DATARMNET37da25c8e8){if(!(((0xd26+209-0xdf6)<<DATARMNET7f0ce2d6ad. DATARMNET208ea67e1d)&DATARMNETbc3c416b77)||(((0xd26+209-0xdf6)<< DATARMNETecc0627c70.DATARMNET5c24e1df05)&DATARMNETbc3c416b77)){ DATARMNET5d4ca1da1c(DATARMNET54338da2ff,DATARMNET96de786762);return- DATARMNET5d4ca1da1c(DATARMNET54338da2ff,DATARMNET2d19c9b1ef);return- (0xd26+209-0xdf6);}DATARMNETecc0627c70.DATARMNET5c24e1df05=DATARMNET7f0ce2d6ad. DATARMNET208ea67e1d;rcu_read_lock();RCU_INIT_POINTER(rmnet_shs_switch, DATARMNET756778f14f);rcu_read_unlock();DATARMNET5d4ca1da1c(DATARMNET54338da2ff, Loading