> - mlx4_enable_msi_x(dev);
> -
> if (mlx4_cmd_init(dev)) {
> mlx4_err(dev, "Failed to init command interface, aborting.\n");
> goto err_free_dev;
> }
>
> + mlx4_enable_msi_x(dev);
Why this change? I don't see anything in mlx4_cmd_init() that seems
to matter in terms of coming before or after enabling MSI-X.
> err = mlx4_init_hca(dev);
> + if (err == -EBUSY && (dev->flags & MLX4_FLAG_MSI_X)) {
> + mlx4_warn(dev, "Trying again with MSI/MSI-X disabled.\n");
> + dev->flags &= ~MLX4_FLAG_MSI_X;
> + pci_disable_msix(pdev);
> + err = mlx4_init_hca(dev);
> + }
> +
> if (err)
> goto err_cmd;
>
> + mlx4_enable_msi_x(dev);
> +
> err = mlx4_setup_hca(dev);
Have you actually tested this on a system where MSI-X fails? Because
I don't see how it could work-- we don't actually try interrupts until
mlx4_setup_hca() (in fact we don't even create any EQs until then).
So I don't see how mlx4_init_hca() could tell if MSI-X is OK...
- R.
_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general
To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general