NetRxPkt: fix hash calculation of IPV6 TCP
When requested to calculate the hash for TCPV6 packet, ignore overrides of source and destination addresses in in extension headers. Use these overrides when new hash type NetPktRssIpV6TcpEx requested. Use this type in e1000e hash calculation for IPv6 TCP, which should take in account overrides of the addresses. Signed-off-by: Yuri Benditovich <yuri.benditovich@daynix.com> Acked-by: Dmitry Fleytman <dmitry.fleytman@gmail.com> Signed-off-by: Jason Wang <jasowang@redhat.com>
This commit is contained in:
parent
33bbc05eab
commit
2683a927ff
@ -582,7 +582,7 @@ e1000e_rss_calc_hash(E1000ECore *core,
|
||||
type = NetPktRssIpV4Tcp;
|
||||
break;
|
||||
case E1000_MRQ_RSS_TYPE_IPV6TCP:
|
||||
type = NetPktRssIpV6Tcp;
|
||||
type = NetPktRssIpV6TcpEx;
|
||||
break;
|
||||
case E1000_MRQ_RSS_TYPE_IPV6:
|
||||
type = NetPktRssIpV6;
|
||||
|
@ -348,7 +348,7 @@ net_rx_pkt_calc_rss_hash(struct NetRxPkt *pkt,
|
||||
assert(pkt->isip6);
|
||||
assert(pkt->istcp);
|
||||
trace_net_rx_pkt_rss_ip6_tcp();
|
||||
_net_rx_rss_prepare_ip6(&rss_input[0], pkt, true, &rss_length);
|
||||
_net_rx_rss_prepare_ip6(&rss_input[0], pkt, false, &rss_length);
|
||||
_net_rx_rss_prepare_tcp(&rss_input[0], pkt, &rss_length);
|
||||
break;
|
||||
case NetPktRssIpV6:
|
||||
|
Loading…
Reference in New Issue
Block a user