nfp: flower: enabled offloading of Team LAG
authorJohn Hurley <john.hurley@netronome.com>
Sat, 30 Jun 2018 00:04:42 +0000 (17:04 -0700)
committerDavid S. Miller <davem@davemloft.net>
Sat, 30 Jun 2018 12:31:56 +0000 (21:31 +0900)
Currently the NFP fw only supports L3/L4 hashing so rejects the offload of
filters that output to LAG ports implementing other hash algorithms. Team,
however, uses a BPF function for the hash that is not defined. To support
Team offload, accept hashes that are defined as 'unknown' (only Team
defines such hash types). In this case, use the NFP default of L3/L4
hashing for egress port selection.

Signed-off-by: John Hurley <john.hurley@netronome.com>
Reviewed-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Reviewed-by: Simon Horman <simon.horman@netronome.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/netronome/nfp/flower/lag_conf.c

index 0c4c957..bf10598 100644 (file)
@@ -564,8 +564,9 @@ nfp_fl_lag_changeupper_event(struct nfp_fl_lag *lag,
        if (lag_upper_info &&
            lag_upper_info->tx_type != NETDEV_LAG_TX_TYPE_ACTIVEBACKUP &&
            (lag_upper_info->tx_type != NETDEV_LAG_TX_TYPE_HASH ||
-           (lag_upper_info->hash_type != NETDEV_LAG_HASH_L34 &&
-           lag_upper_info->hash_type != NETDEV_LAG_HASH_E34))) {
+            (lag_upper_info->hash_type != NETDEV_LAG_HASH_L34 &&
+             lag_upper_info->hash_type != NETDEV_LAG_HASH_E34 &&
+             lag_upper_info->hash_type != NETDEV_LAG_HASH_UNKNOWN))) {
                can_offload = false;
                nfp_flower_cmsg_warn(priv->app,
                                     "Unable to offload tx_type %u hash %u\n",