git.droids-corp.org
/
dpdk.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
net/ice: fix flow type selection for flow director
[dpdk.git]
/
drivers
/
net
/
ice
/
ice_fdir_filter.c
diff --git
a/drivers/net/ice/ice_fdir_filter.c
b/drivers/net/ice/ice_fdir_filter.c
index
7876f4b
..
a68c295
100644
(file)
--- a/
drivers/net/ice/ice_fdir_filter.c
+++ b/
drivers/net/ice/ice_fdir_filter.c
@@
-1559,6
+1559,11
@@
ice_fdir_parse_pattern(__rte_unused struct ice_adapter *ad,
tcp_spec = item->spec;
tcp_mask = item->mask;
tcp_spec = item->spec;
tcp_mask = item->mask;
+ if (l3 == RTE_FLOW_ITEM_TYPE_IPV4)
+ flow_type = ICE_FLTR_PTYPE_NONF_IPV4_TCP;
+ else if (l3 == RTE_FLOW_ITEM_TYPE_IPV6)
+ flow_type = ICE_FLTR_PTYPE_NONF_IPV6_TCP;
+
if (tcp_spec && tcp_mask) {
/* Check TCP mask and update input set */
if (tcp_mask->hdr.sent_seq ||
if (tcp_spec && tcp_mask) {
/* Check TCP mask and update input set */
if (tcp_mask->hdr.sent_seq ||
@@
-1590,15
+1595,11
@@
ice_fdir_parse_pattern(__rte_unused struct ice_adapter *ad,
tcp_spec->hdr.src_port;
filter->input.ip.v4.src_port =
tcp_spec->hdr.dst_port;
tcp_spec->hdr.src_port;
filter->input.ip.v4.src_port =
tcp_spec->hdr.dst_port;
- flow_type =
- ICE_FLTR_PTYPE_NONF_IPV4_TCP;
} else if (l3 == RTE_FLOW_ITEM_TYPE_IPV6) {
filter->input.ip.v6.dst_port =
tcp_spec->hdr.src_port;
filter->input.ip.v6.src_port =
tcp_spec->hdr.dst_port;
} else if (l3 == RTE_FLOW_ITEM_TYPE_IPV6) {
filter->input.ip.v6.dst_port =
tcp_spec->hdr.src_port;
filter->input.ip.v6.src_port =
tcp_spec->hdr.dst_port;
- flow_type =
- ICE_FLTR_PTYPE_NONF_IPV6_TCP;
}
}
break;
}
}
break;
@@
-1606,6
+1607,11
@@
ice_fdir_parse_pattern(__rte_unused struct ice_adapter *ad,
udp_spec = item->spec;
udp_mask = item->mask;
udp_spec = item->spec;
udp_mask = item->mask;
+ if (l3 == RTE_FLOW_ITEM_TYPE_IPV4)
+ flow_type = ICE_FLTR_PTYPE_NONF_IPV4_UDP;
+ else if (l3 == RTE_FLOW_ITEM_TYPE_IPV6)
+ flow_type = ICE_FLTR_PTYPE_NONF_IPV6_UDP;
+
if (udp_spec && udp_mask) {
/* Check UDP mask and update input set*/
if (udp_mask->hdr.dgram_len ||
if (udp_spec && udp_mask) {
/* Check UDP mask and update input set*/
if (udp_mask->hdr.dgram_len ||
@@
-1632,15
+1638,11
@@
ice_fdir_parse_pattern(__rte_unused struct ice_adapter *ad,
udp_spec->hdr.src_port;
filter->input.ip.v4.src_port =
udp_spec->hdr.dst_port;
udp_spec->hdr.src_port;
filter->input.ip.v4.src_port =
udp_spec->hdr.dst_port;
- flow_type =
- ICE_FLTR_PTYPE_NONF_IPV4_UDP;
} else if (l3 == RTE_FLOW_ITEM_TYPE_IPV6) {
filter->input.ip.v6.src_port =
udp_spec->hdr.dst_port;
filter->input.ip.v6.dst_port =
udp_spec->hdr.src_port;
} else if (l3 == RTE_FLOW_ITEM_TYPE_IPV6) {
filter->input.ip.v6.src_port =
udp_spec->hdr.dst_port;
filter->input.ip.v6.dst_port =
udp_spec->hdr.src_port;
- flow_type =
- ICE_FLTR_PTYPE_NONF_IPV6_UDP;
}
}
break;
}
}
break;
@@
-1648,6
+1650,11
@@
ice_fdir_parse_pattern(__rte_unused struct ice_adapter *ad,
sctp_spec = item->spec;
sctp_mask = item->mask;
sctp_spec = item->spec;
sctp_mask = item->mask;
+ if (l3 == RTE_FLOW_ITEM_TYPE_IPV4)
+ flow_type = ICE_FLTR_PTYPE_NONF_IPV4_SCTP;
+ else if (l3 == RTE_FLOW_ITEM_TYPE_IPV6)
+ flow_type = ICE_FLTR_PTYPE_NONF_IPV6_SCTP;
+
if (sctp_spec && sctp_mask) {
/* Check SCTP mask and update input set */
if (sctp_mask->hdr.cksum) {
if (sctp_spec && sctp_mask) {
/* Check SCTP mask and update input set */
if (sctp_mask->hdr.cksum) {
@@
-1673,15
+1680,11
@@
ice_fdir_parse_pattern(__rte_unused struct ice_adapter *ad,
sctp_spec->hdr.src_port;
filter->input.ip.v4.src_port =
sctp_spec->hdr.dst_port;
sctp_spec->hdr.src_port;
filter->input.ip.v4.src_port =
sctp_spec->hdr.dst_port;
- flow_type =
- ICE_FLTR_PTYPE_NONF_IPV4_SCTP;
} else if (l3 == RTE_FLOW_ITEM_TYPE_IPV6) {
filter->input.ip.v6.dst_port =
sctp_spec->hdr.src_port;
filter->input.ip.v6.src_port =
sctp_spec->hdr.dst_port;
} else if (l3 == RTE_FLOW_ITEM_TYPE_IPV6) {
filter->input.ip.v6.dst_port =
sctp_spec->hdr.src_port;
filter->input.ip.v6.src_port =
sctp_spec->hdr.dst_port;
- flow_type =
- ICE_FLTR_PTYPE_NONF_IPV6_SCTP;
}
}
break;
}
}
break;