]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
mlx4_core: disable mlx4_QP_ATTACH calls from guests if master is doing flow steering.
authorJack Morgenstein <jackm@dev.mellanox.co.il>
Wed, 20 Feb 2013 14:43:59 +0000 (16:43 +0200)
committerMukesh Kacker <mukesh.kacker@oracle.com>
Tue, 7 Jul 2015 21:45:09 +0000 (14:45 -0700)
Old upstream kernel guests do not detect if device-enabled flow
steering is activated by the master. If DMFS is activated,
the master should return error to guests which try to use
the B0-steering flow calls (mlx4_QP_ATTACH).

Signed-off-by: Jack Morgenstein <jackm@dev.mellanox.co.il>
(Ported from Mellanox OFED 2.4)

Signed-off-by: Mukesh Kacker <mukesh.kacker@oracle.com>
drivers/net/ethernet/mellanox/mlx4/resource_tracker.c

index ec431c92822886d50850a8be3d1ca5dd9487d4b8..eaefc8a16bdc77b4f309b84fcf63d1a6a8f1344b 100644 (file)
@@ -3905,6 +3905,9 @@ int mlx4_QP_ATTACH_wrapper(struct mlx4_dev *dev, int slave,
        u8 steer_type_mask = 2;
        enum mlx4_steer_type type = (gid[7] & steer_type_mask) >> 1;
 
+       if (dev->caps.steering_mode != MLX4_STEERING_MODE_B0)
+               return -EINVAL;
+
        qpn = vhcr->in_modifier & 0xffffff;
        err = get_res(dev, slave, qpn, RES_QP, &rqp);
        if (err)