net/mlx4_core: Disable mlx4_QP_ATTACH calls from guests if the host uses flow steering

Guests kernels may not correctly detect if DMFS (device-enabled flow steering) is
activated by the host. 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>
Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Jack Morgenstein 2013-03-07 03:46:52 +00:00 коммит произвёл David S. Miller
Родитель 43b18db8a2
Коммит 3fb817f1cd
1 изменённых файлов: 3 добавлений и 0 удалений

Просмотреть файл

@ -2990,6 +2990,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)