[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20160113220843.GA21544@localhost>
Date: Wed, 13 Jan 2016 16:08:43 -0600
From: Bjorn Helgaas <helgaas@...nel.org>
To: Eugenia Emantayev <eugenia@...lanox.com>
Cc: netdev@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: mlx4 fails ("go bit not cleared") without MSI
Hi Eugenia,
Due to my own stupidity, I tried to use mlx4 without turning on
CONFIG_PCI_MSI=y. The driver failed miserably:
pci 0000:01:00.0: [15b3:1007] type 00 class 0x020000
mlx4_core: Mellanox ConnectX core driver v2.2-1 (Feb, 2014)
mlx4_core: Initializing 0000:01:00.0
mlx4_core 0000:01:00.0: PCIe link speed is 8.0GT/s, device supports 8.0GT/s
mlx4_core 0000:01:00.0: PCIe link width is x8, device supports x8
mlx4_core 0000:01:00.0: command 0x23 timed out (go bit not cleared)
mlx4_core 0000:01:00.0: device is going to be reset
mlx4_core 0000:01:00.0: device was reset successfully
mlx4_core 0000:01:00.0: Failed to initialize queue pair table, aborting
mlx4_core: probe of 0000:01:00.0 failed with error -5
The lack of MSI was my own fault, but it took me a long time to figure it
out.
The fact that mlx4 has a "msi_x" module parameter makes me think that
mlx4 is *supposed* to work without MSI. Would you consider either
fixing the non-MSI fallback path, or printing a warning when the
driver can't set up MSIs?
This is easy to reproduce; just turn off CONFIG_PCI_MSI or boot with
"pci=nomsi".
Bjorn
Powered by blists - more mailing lists