On 12/30/2015 10:23 AM, Matan Barak wrote:

int mlx4_CONFIG_DEV_wrapper(struct mlx4_dev *dev, int slave,
                            struct mlx4_vhcr *vhcr,
                            struct mlx4_cmd_mailbox *inbox,
                            struct mlx4_cmd_mailbox *outbox,
                            struct mlx4_cmd_info *cmd)
{
        int err;
        u8 get = vhcr->op_modifier;

        if (get != 1)
                return -EPERM;

        err = mlx4_DMA_wrapper(dev, slave, vhcr, inbox, outbox, cmd);

        return err;
}

Only "get" is permitted in multi-function setups.

good, thanks for clarifying this out.


Anyway, mlx4_config_roce_v2_port is not called for these setups because of this condition:
if (mlx4_is_mfunc(dev)) {
    dev->caps.flags &= ~MLX4_DEV_CAP_FLAG_SENSE_SUPPORT;
    dev_cap->flags2 &= ~MLX4_DEV_CAP_FLAG2_ROCE_V1_V2;
    mlx4_dbg(dev, "RoCE V2 is not supported when SR-IOV is enabled\n");
}

wrong again, you assume your Linux VF driver, but the VM can run other driver.


--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to