> @@ -5833,16 +5839,22 @@ i40e_dev_tunnel_filter_set(struct i40e_pf *pf,
>       (void)rte_memcpy(&pfilter->inner_mac, &tunnel_filter->inner_mac,
>                       ETHER_ADDR_LEN);
> 
> -     pfilter->inner_vlan = tunnel_filter->inner_vlan;
> +     pfilter->inner_vlan = rte_cpu_to_le_16(tunnel_filter->inner_vlan);
>       if (tunnel_filter->ip_type == RTE_TUNNEL_IPTYPE_IPV4) {
>               ip_type = I40E_AQC_ADD_CLOUD_FLAGS_IPV4;
> +             tunnel_filter->ip_addr.ipv4_addr =
> +                     rte_cpu_to_le_32(tunnel_filter->ip_addr.ipv4_addr);
>               (void)rte_memcpy(&pfilter->ipaddr.v4.data,
> -                             &tunnel_filter->ip_addr,
> +                             &tunnel_filter->ip_addr.ipv4_addr,
>                               sizeof(pfilter->ipaddr.v4.data));
>       } else {
>               ip_type = I40E_AQC_ADD_CLOUD_FLAGS_IPV6;
> +             for (i = 0; i < 4; i++) {
> +                     tunnel_filter->ip_addr.ipv6_addr[i] =
> +                     rte_cpu_to_le_32(tunnel_filter-
> >ip_addr.ipv6_addr[i]);

You changed the value of in parameter.
It's better to use an internal variable to convert byte order.

Thanks
Jingjing
> 1.9.3

Reply via email to