niu: Recognise original ethtool class code for AH/ESP flow hashing
authorBen Hutchings <bhutchings@solarflare.com>
Fri, 8 Apr 2011 13:49:15 +0000 (13:49 +0000)
committerDavid S. Miller <davem@davemloft.net>
Mon, 11 Apr 2011 20:28:44 +0000 (13:28 -0700)
When the RX network flow classification interface was originally
defined for reporting and controlling of flow hashing, AH and ESP were
not given distinct flow class codes (apparently because the Sun
Neptune hardware treats them very similarly).

For flow steering, they must be distinguished, so new and separate
flow class codes were added for AH and ESP.  But for backward-
compatibility, flow hash operations should continue to support the
original class codes.

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/niu.c

index ab4e7dd82d0b5c9a3f42bf9c7c6fe84cc4fc1821..9e6330bc0531f00dc932fbc9741f997ad0ea54bb 100644 (file)
@@ -7022,6 +7022,7 @@ static int niu_ethflow_to_class(int flow_type, u64 *class)
        case UDP_V4_FLOW:
                *class = CLASS_CODE_UDP_IPV4;
                break;
+       case AH_ESP_V4_FLOW:
        case AH_V4_FLOW:
        case ESP_V4_FLOW:
                *class = CLASS_CODE_AH_ESP_IPV4;
@@ -7035,6 +7036,7 @@ static int niu_ethflow_to_class(int flow_type, u64 *class)
        case UDP_V6_FLOW:
                *class = CLASS_CODE_UDP_IPV6;
                break;
+       case AH_ESP_V6_FLOW:
        case AH_V6_FLOW:
        case ESP_V6_FLOW:
                *class = CLASS_CODE_AH_ESP_IPV6;