diff mbox

[3/3] mlx4_core: Disable SENSE_PORT for multifunction devices

Message ID 1348768037-3660-3-git-send-email-roland@kernel.org (mailing list archive)
State Accepted, archived
Headers show

Commit Message

Roland Dreier Sept. 27, 2012, 5:47 p.m. UTC
From: Roland Dreier <roland@purestorage.com>

In the current driver, the SENSE_PORT firmware command is issued as a
"wrapped" command, but the command handling code doesn't have a
wrapper, so it will never do anything other than log an error message.
The latest ConnectX-3 2.11.500 firmware reports the SENSE_PORT
capability even in multi-function (SR-IOV) mode, so the driver will
try to issue the command.

At least until the driver has a proper wrapper for SENSE_PORT, make
sure we disable the command for multi-function devices.

Signed-off-by: Roland Dreier <roland@purestorage.com>
---
 drivers/net/ethernet/mellanox/mlx4/main.c |    3 +++
 1 file changed, 3 insertions(+)

Comments

Or Gerlitz Sept. 27, 2012, 8:58 p.m. UTC | #1
On Thu, Sep 27, 2012 at 7:47 PM, Roland Dreier <roland@kernel.org> wrote:
> From: Roland Dreier <roland@purestorage.com>
>
> In the current driver, the SENSE_PORT firmware command is issued as a
> "wrapped" command, but the command handling code doesn't have a
> wrapper, so it will never do anything other than log an error message.
> The latest ConnectX-3 2.11.500 firmware reports the SENSE_PORT
> capability even in multi-function (SR-IOV) mode, so the driver will
> try to issue the command.
>
> At least until the driver has a proper wrapper for SENSE_PORT, make
> sure we disable the command for multi-function devices.

makes sense, nice doing!

Acked-by: Or Gerlitz <ogerlitz@mellanox.com> for patches 1-3

Roland, I see that these three patches are queued @ your for-next and
also the initial
patch which in a way is more lengthy and heavy.  I wonder whether
wouldn't it be fare to allow for Jack to review it before pushing?
Jack is back by Tuesday.

Or.
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
jackm Oct. 2, 2012, 8:52 a.m. UTC | #2
On Thursday 27 September 2012 22:58, Or Gerlitz wrote:
> On Thu, Sep 27, 2012 at 7:47 PM, Roland Dreier <roland@kernel.org> wrote:
> > From: Roland Dreier <roland@purestorage.com>
> >
> > In the current driver, the SENSE_PORT firmware command is issued as a
> > "wrapped" command, but the command handling code doesn't have a
> > wrapper, so it will never do anything other than log an error message.
> > The latest ConnectX-3 2.11.500 firmware reports the SENSE_PORT
> > capability even in multi-function (SR-IOV) mode, so the driver will
> > try to issue the command.
> >
> > At least until the driver has a proper wrapper for SENSE_PORT, make
> > sure we disable the command for multi-function devices.
> 
> makes sense, nice doing!
> 
> Acked-by: Or Gerlitz <ogerlitz@mellanox.com> for patches 1-3
> 
> Roland, I see that these three patches are queued @ your for-next and
> also the initial
> patch which in a way is more lengthy and heavy.  I wonder whether
> wouldn't it be fare to allow for Jack to review it before pushing?
> Jack is back by Tuesday.
>
Acked-by: Jack Morgenstein <jackm@dev.mellanox.co.il> for patches 1-3

Nice going, Roland!

-Jack

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

Patch

diff --git a/drivers/net/ethernet/mellanox/mlx4/main.c b/drivers/net/ethernet/mellanox/mlx4/main.c
index 4d40b21..1fcf0e1 100644
--- a/drivers/net/ethernet/mellanox/mlx4/main.c
+++ b/drivers/net/ethernet/mellanox/mlx4/main.c
@@ -300,6 +300,9 @@  static int mlx4_dev_cap(struct mlx4_dev *dev, struct mlx4_dev_cap *dev_cap)
 	/* Sense port always allowed on supported devices for ConnectX-1 and -2 */
 	if (mlx4_priv(dev)->pci_dev_data & MLX4_PCI_DEV_FORCE_SENSE_PORT)
 		dev->caps.flags |= MLX4_DEV_CAP_FLAG_SENSE_SUPPORT;
+	/* Don't do sense port on multifunction devices (for now at least) */
+	if (mlx4_is_mfunc(dev))
+		dev->caps.flags &= ~MLX4_DEV_CAP_FLAG_SENSE_SUPPORT;
 
 	dev->caps.log_num_macs  = log_num_mac;
 	dev->caps.log_num_vlans = MLX4_LOG_NUM_VLANS;