@@ -535,20 +535,16 @@ tap_flow_create_eth(const struct rte_flow_item *item, void *data)
535535 return 0 ;
536536 msg = & flow -> msg ;
537537 if (!rte_is_zero_ether_addr (& mask -> dst )) {
538- tap_nlattr_add (& msg -> nh , TCA_FLOWER_KEY_ETH_DST ,
539- RTE_ETHER_ADDR_LEN ,
540- & spec -> dst .addr_bytes );
541- tap_nlattr_add (& msg -> nh ,
542- TCA_FLOWER_KEY_ETH_DST_MASK , RTE_ETHER_ADDR_LEN ,
543- & mask -> dst .addr_bytes );
538+ tap_nlattr_add (msg , TCA_FLOWER_KEY_ETH_DST , RTE_ETHER_ADDR_LEN ,
539+ & spec -> dst .addr_bytes );
540+ tap_nlattr_add (msg , TCA_FLOWER_KEY_ETH_DST_MASK , RTE_ETHER_ADDR_LEN ,
541+ & mask -> dst .addr_bytes );
544542 }
545543 if (!rte_is_zero_ether_addr (& mask -> src )) {
546- tap_nlattr_add (& msg -> nh , TCA_FLOWER_KEY_ETH_SRC ,
547- RTE_ETHER_ADDR_LEN ,
544+ tap_nlattr_add (msg , TCA_FLOWER_KEY_ETH_SRC , RTE_ETHER_ADDR_LEN ,
548545 & spec -> src .addr_bytes );
549- tap_nlattr_add (& msg -> nh ,
550- TCA_FLOWER_KEY_ETH_SRC_MASK , RTE_ETHER_ADDR_LEN ,
551- & mask -> src .addr_bytes );
546+ tap_nlattr_add (msg , TCA_FLOWER_KEY_ETH_SRC_MASK , RTE_ETHER_ADDR_LEN ,
547+ & mask -> src .addr_bytes );
552548 }
553549 return 0 ;
554550}
@@ -604,11 +600,9 @@ tap_flow_create_vlan(const struct rte_flow_item *item, void *data)
604600 uint8_t vid = VLAN_ID (tci );
605601
606602 if (prio )
607- tap_nlattr_add8 (& msg -> nh ,
608- TCA_FLOWER_KEY_VLAN_PRIO , prio );
603+ tap_nlattr_add8 (msg , TCA_FLOWER_KEY_VLAN_PRIO , prio );
609604 if (vid )
610- tap_nlattr_add16 (& msg -> nh ,
611- TCA_FLOWER_KEY_VLAN_ID , vid );
605+ tap_nlattr_add16 (msg , TCA_FLOWER_KEY_VLAN_ID , vid );
612606 }
613607 return 0 ;
614608}
@@ -651,20 +645,15 @@ tap_flow_create_ipv4(const struct rte_flow_item *item, void *data)
651645 if (!spec )
652646 return 0 ;
653647 if (mask -> hdr .dst_addr ) {
654- tap_nlattr_add32 (& msg -> nh , TCA_FLOWER_KEY_IPV4_DST ,
655- spec -> hdr .dst_addr );
656- tap_nlattr_add32 (& msg -> nh , TCA_FLOWER_KEY_IPV4_DST_MASK ,
657- mask -> hdr .dst_addr );
648+ tap_nlattr_add32 (msg , TCA_FLOWER_KEY_IPV4_DST , spec -> hdr .dst_addr );
649+ tap_nlattr_add32 (msg , TCA_FLOWER_KEY_IPV4_DST_MASK , mask -> hdr .dst_addr );
658650 }
659651 if (mask -> hdr .src_addr ) {
660- tap_nlattr_add32 (& msg -> nh , TCA_FLOWER_KEY_IPV4_SRC ,
661- spec -> hdr .src_addr );
662- tap_nlattr_add32 (& msg -> nh , TCA_FLOWER_KEY_IPV4_SRC_MASK ,
663- mask -> hdr .src_addr );
652+ tap_nlattr_add32 (msg , TCA_FLOWER_KEY_IPV4_SRC , spec -> hdr .src_addr );
653+ tap_nlattr_add32 (msg , TCA_FLOWER_KEY_IPV4_SRC_MASK , mask -> hdr .src_addr );
664654 }
665655 if (spec -> hdr .next_proto_id )
666- tap_nlattr_add8 (& msg -> nh , TCA_FLOWER_KEY_IP_PROTO ,
667- spec -> hdr .next_proto_id );
656+ tap_nlattr_add8 (msg , TCA_FLOWER_KEY_IP_PROTO , spec -> hdr .next_proto_id );
668657 return 0 ;
669658}
670659
@@ -707,20 +696,19 @@ tap_flow_create_ipv6(const struct rte_flow_item *item, void *data)
707696 if (!spec )
708697 return 0 ;
709698 if (memcmp (mask -> hdr .dst_addr , empty_addr , 16 )) {
710- tap_nlattr_add (& msg -> nh , TCA_FLOWER_KEY_IPV6_DST ,
711- sizeof ( spec -> hdr . dst_addr ), & spec -> hdr .dst_addr );
712- tap_nlattr_add (& msg -> nh , TCA_FLOWER_KEY_IPV6_DST_MASK ,
713- sizeof ( mask -> hdr . dst_addr ), & mask -> hdr .dst_addr );
699+ tap_nlattr_add (msg , TCA_FLOWER_KEY_IPV6_DST , sizeof ( spec -> hdr . dst_addr ) ,
700+ & spec -> hdr .dst_addr );
701+ tap_nlattr_add (msg , TCA_FLOWER_KEY_IPV6_DST_MASK , sizeof ( mask -> hdr . dst_addr ) ,
702+ & mask -> hdr .dst_addr );
714703 }
715704 if (memcmp (mask -> hdr .src_addr , empty_addr , 16 )) {
716- tap_nlattr_add (& msg -> nh , TCA_FLOWER_KEY_IPV6_SRC ,
717- sizeof ( spec -> hdr . src_addr ), & spec -> hdr .src_addr );
718- tap_nlattr_add (& msg -> nh , TCA_FLOWER_KEY_IPV6_SRC_MASK ,
719- sizeof ( mask -> hdr . src_addr ), & mask -> hdr .src_addr );
705+ tap_nlattr_add (msg , TCA_FLOWER_KEY_IPV6_SRC , sizeof ( spec -> hdr . src_addr ) ,
706+ & spec -> hdr .src_addr );
707+ tap_nlattr_add (msg , TCA_FLOWER_KEY_IPV6_SRC_MASK , sizeof ( mask -> hdr . src_addr ) ,
708+ & mask -> hdr .src_addr );
720709 }
721710 if (spec -> hdr .proto )
722- tap_nlattr_add8 (& msg -> nh ,
723- TCA_FLOWER_KEY_IP_PROTO , spec -> hdr .proto );
711+ tap_nlattr_add8 (msg , TCA_FLOWER_KEY_IP_PROTO , spec -> hdr .proto );
724712 return 0 ;
725713}
726714
@@ -758,15 +746,13 @@ tap_flow_create_udp(const struct rte_flow_item *item, void *data)
758746 if (!flow )
759747 return 0 ;
760748 msg = & flow -> msg ;
761- tap_nlattr_add8 (& msg -> nh , TCA_FLOWER_KEY_IP_PROTO , IPPROTO_UDP );
749+ tap_nlattr_add8 (msg , TCA_FLOWER_KEY_IP_PROTO , IPPROTO_UDP );
762750 if (!spec )
763751 return 0 ;
764752 if (mask -> hdr .dst_port )
765- tap_nlattr_add16 (& msg -> nh , TCA_FLOWER_KEY_UDP_DST ,
766- spec -> hdr .dst_port );
753+ tap_nlattr_add16 (msg , TCA_FLOWER_KEY_UDP_DST , spec -> hdr .dst_port );
767754 if (mask -> hdr .src_port )
768- tap_nlattr_add16 (& msg -> nh , TCA_FLOWER_KEY_UDP_SRC ,
769- spec -> hdr .src_port );
755+ tap_nlattr_add16 (msg , TCA_FLOWER_KEY_UDP_SRC , spec -> hdr .src_port );
770756 return 0 ;
771757}
772758
@@ -804,15 +790,13 @@ tap_flow_create_tcp(const struct rte_flow_item *item, void *data)
804790 if (!flow )
805791 return 0 ;
806792 msg = & flow -> msg ;
807- tap_nlattr_add8 (& msg -> nh , TCA_FLOWER_KEY_IP_PROTO , IPPROTO_TCP );
793+ tap_nlattr_add8 (msg , TCA_FLOWER_KEY_IP_PROTO , IPPROTO_TCP );
808794 if (!spec )
809795 return 0 ;
810796 if (mask -> hdr .dst_port )
811- tap_nlattr_add16 (& msg -> nh , TCA_FLOWER_KEY_TCP_DST ,
812- spec -> hdr .dst_port );
797+ tap_nlattr_add16 (msg , TCA_FLOWER_KEY_TCP_DST , spec -> hdr .dst_port );
813798 if (mask -> hdr .src_port )
814- tap_nlattr_add16 (& msg -> nh , TCA_FLOWER_KEY_TCP_SRC ,
815- spec -> hdr .src_port );
799+ tap_nlattr_add16 (msg , TCA_FLOWER_KEY_TCP_SRC , spec -> hdr .src_port );
816800 return 0 ;
817801}
818802
@@ -920,35 +904,27 @@ add_action(struct rte_flow *flow, size_t *act_index, struct action_data *adata)
920904 if (tap_nlattr_nested_start (msg , (* act_index )++ ) < 0 )
921905 return -1 ;
922906
923- tap_nlattr_add (& msg -> nh , TCA_ACT_KIND ,
924- strlen (adata -> id ) + 1 , adata -> id );
907+ tap_nlattr_add (msg , TCA_ACT_KIND , strlen (adata -> id ) + 1 , adata -> id );
925908 if (tap_nlattr_nested_start (msg , TCA_ACT_OPTIONS ) < 0 )
926909 return -1 ;
927910 if (strcmp ("gact" , adata -> id ) == 0 ) {
928- tap_nlattr_add (& msg -> nh , TCA_GACT_PARMS , sizeof (adata -> gact ),
929- & adata -> gact );
911+ tap_nlattr_add (msg , TCA_GACT_PARMS , sizeof (adata -> gact ), & adata -> gact );
930912 } else if (strcmp ("mirred" , adata -> id ) == 0 ) {
931913 if (adata -> mirred .eaction == TCA_EGRESS_MIRROR )
932914 adata -> mirred .action = TC_ACT_PIPE ;
933915 else /* REDIRECT */
934916 adata -> mirred .action = TC_ACT_STOLEN ;
935- tap_nlattr_add (& msg -> nh , TCA_MIRRED_PARMS ,
936- sizeof (adata -> mirred ),
937- & adata -> mirred );
917+ tap_nlattr_add (msg , TCA_MIRRED_PARMS , sizeof (adata -> mirred ), & adata -> mirred );
938918 } else if (strcmp ("skbedit" , adata -> id ) == 0 ) {
939- tap_nlattr_add (& msg -> nh , TCA_SKBEDIT_PARMS ,
940- sizeof (adata -> skbedit .skbedit ),
941- & adata -> skbedit .skbedit );
942- tap_nlattr_add16 (& msg -> nh , TCA_SKBEDIT_QUEUE_MAPPING ,
943- adata -> skbedit .queue );
919+ tap_nlattr_add (msg , TCA_SKBEDIT_PARMS , sizeof (adata -> skbedit .skbedit ),
920+ & adata -> skbedit .skbedit );
921+ tap_nlattr_add16 (msg , TCA_SKBEDIT_QUEUE_MAPPING , adata -> skbedit .queue );
944922 } else if (strcmp ("bpf" , adata -> id ) == 0 ) {
945- tap_nlattr_add32 (& msg -> nh , TCA_ACT_BPF_FD , adata -> bpf .bpf_fd );
946- tap_nlattr_add (& msg -> nh , TCA_ACT_BPF_NAME ,
947- strlen (adata -> bpf .annotation ) + 1 ,
948- adata -> bpf .annotation );
949- tap_nlattr_add (& msg -> nh , TCA_ACT_BPF_PARMS ,
950- sizeof (adata -> bpf .bpf ),
951- & adata -> bpf .bpf );
923+ tap_nlattr_add32 (msg , TCA_ACT_BPF_FD , adata -> bpf .bpf_fd );
924+ tap_nlattr_add (msg , TCA_ACT_BPF_NAME , strlen (adata -> bpf .annotation ) + 1 ,
925+ adata -> bpf .annotation );
926+ tap_nlattr_add (msg , TCA_ACT_BPF_PARMS , sizeof (adata -> bpf .bpf ),
927+ & adata -> bpf .bpf );
952928 } else {
953929 return -1 ;
954930 }
@@ -1078,7 +1054,7 @@ priv_flow_process(struct pmd_internals *pmd,
10781054 TC_H_MAKE (MULTIQ_MAJOR_HANDLE , 0 );
10791055 }
10801056 /* use flower filter type */
1081- tap_nlattr_add (& flow -> msg . nh , TCA_KIND , sizeof ("flower" ), "flower" );
1057+ tap_nlattr_add (& flow -> msg , TCA_KIND , sizeof ("flower" ), "flower" );
10821058 if (tap_nlattr_nested_start (& flow -> msg , TCA_OPTIONS ) < 0 ) {
10831059 rte_flow_error_set (error , ENOMEM , RTE_FLOW_ERROR_TYPE_ACTION ,
10841060 actions , "could not allocated netlink msg" );
@@ -1118,15 +1094,11 @@ priv_flow_process(struct pmd_internals *pmd,
11181094 }
11191095 if (flow ) {
11201096 if (data .vlan ) {
1121- tap_nlattr_add16 (& flow -> msg .nh , TCA_FLOWER_KEY_ETH_TYPE ,
1122- htons (ETH_P_8021Q ));
1123- tap_nlattr_add16 (& flow -> msg .nh ,
1124- TCA_FLOWER_KEY_VLAN_ETH_TYPE ,
1125- data .eth_type ?
1126- data .eth_type : htons (ETH_P_ALL ));
1097+ tap_nlattr_add16 (& flow -> msg , TCA_FLOWER_KEY_ETH_TYPE , htons (ETH_P_8021Q ));
1098+ tap_nlattr_add16 (& flow -> msg , TCA_FLOWER_KEY_VLAN_ETH_TYPE ,
1099+ data .eth_type ? data .eth_type : htons (ETH_P_ALL ));
11271100 } else if (data .eth_type ) {
1128- tap_nlattr_add16 (& flow -> msg .nh , TCA_FLOWER_KEY_ETH_TYPE ,
1129- data .eth_type );
1101+ tap_nlattr_add16 (& flow -> msg , TCA_FLOWER_KEY_ETH_TYPE , data .eth_type );
11301102 }
11311103 }
11321104 if (mirred && flow ) {
@@ -1919,13 +1891,13 @@ static int rss_enable(struct pmd_internals *pmd,
19191891 msg -> t .tcm_info = TC_H_MAKE (prio << 16 , msg -> t .tcm_info );
19201892 msg -> t .tcm_parent = TC_H_MAKE (MULTIQ_MAJOR_HANDLE , 0 );
19211893
1922- tap_nlattr_add (& msg -> nh , TCA_KIND , sizeof ("bpf" ), "bpf" );
1894+ tap_nlattr_add (msg , TCA_KIND , sizeof ("bpf" ), "bpf" );
19231895 if (tap_nlattr_nested_start (msg , TCA_OPTIONS ) < 0 )
19241896 return -1 ;
1925- tap_nlattr_add32 (& msg -> nh , TCA_BPF_FD , pmd -> bpf_fd [i ]);
1897+ tap_nlattr_add32 (msg , TCA_BPF_FD , pmd -> bpf_fd [i ]);
19261898 snprintf (annotation , sizeof (annotation ), "[%s%d]" ,
19271899 SEC_NAME_CLS_Q , i );
1928- tap_nlattr_add (& msg -> nh , TCA_BPF_NAME , strlen (annotation ) + 1 ,
1900+ tap_nlattr_add (msg , TCA_BPF_NAME , strlen (annotation ) + 1 ,
19291901 annotation );
19301902 /* Actions */
19311903 {
0 commit comments