aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/igb/igb_main.c18
1 files changed, 10 insertions, 8 deletions
diff --git a/drivers/net/igb/igb_main.c b/drivers/net/igb/igb_main.c
index 9cb04e29ad13..94656179441d 100644
--- a/drivers/net/igb/igb_main.c
+++ b/drivers/net/igb/igb_main.c
@@ -2717,14 +2717,16 @@ static void igb_setup_mrqc(struct igb_adapter *adapter)
2717 } 2717 }
2718 igb_vmm_control(adapter); 2718 igb_vmm_control(adapter);
2719 2719
2720 mrqc |= (E1000_MRQC_RSS_FIELD_IPV4 | 2720 /*
2721 E1000_MRQC_RSS_FIELD_IPV4_TCP); 2721 * Generate RSS hash based on TCP port numbers and/or
2722 mrqc |= (E1000_MRQC_RSS_FIELD_IPV6 | 2722 * IPv4/v6 src and dst addresses since UDP cannot be
2723 E1000_MRQC_RSS_FIELD_IPV6_TCP); 2723 * hashed reliably due to IP fragmentation
2724 mrqc |= (E1000_MRQC_RSS_FIELD_IPV4_UDP | 2724 */
2725 E1000_MRQC_RSS_FIELD_IPV6_UDP); 2725 mrqc |= E1000_MRQC_RSS_FIELD_IPV4 |
2726 mrqc |= (E1000_MRQC_RSS_FIELD_IPV6_UDP_EX | 2726 E1000_MRQC_RSS_FIELD_IPV4_TCP |
2727 E1000_MRQC_RSS_FIELD_IPV6_TCP_EX); 2727 E1000_MRQC_RSS_FIELD_IPV6 |
2728 E1000_MRQC_RSS_FIELD_IPV6_TCP |
2729 E1000_MRQC_RSS_FIELD_IPV6_TCP_EX;
2728 2730
2729 wr32(E1000_MRQC, mrqc); 2731 wr32(E1000_MRQC, mrqc);
2730} 2732}