[Devel] [PATCH hci-8.0] core: allow the whole ConnectX-3 family to probe, as unmaintained

Konstantin Khorenko khorenko at virtuozzo.com
Thu Sep 17 20:06:52 MSK 2026


Commit 9f4c5028b243 ("core: allow ConnectX-3 Pro to probe, as
unmaintained hardware") took a single ID, 15b3:1007, out of
rh_disabled_pci_devices[].

The mlx4 driver knows thirteen more IDs from the same family, and every
one of them is still blacklisted:

  15b3:1003          ConnectX-3
  15b3:1005, 1006    ConnectX-3, MT27510 and MT27511
  15b3:1008-1010     ConnectX-3 Pro, MT27521 to MT27561
  15b3:1004          the SR-IOV virtual function of all of them

The last one hurts even the card that 9f4c5028b243 enabled: the
physical function of a ConnectX-3 Pro binds now, but each VF it
creates still gets -EACCES from local_pci_probe(), whether it stays on
the host or is passed through to a guest.

Move all thirteen to rh_unmaintained_pci_devices[].
This restores what vz9 shipped. AlmaLinux 10 re-enabled the same set.

The older ConnectX and ConnectX-2 IDs (15b3:1002, 63xx and 67xx) stay
disabled, as they were in vz9: CONFIG_MLX4_CORE_GEN2 is off, so the
driver does not claim them.

https://virtuozzo.atlassian.net/browse/VSTOR-145951

Feature: pci: bypass the RHEL disabled device blacklist
Signed-off-by: Konstantin Khorenko <khorenko at virtuozzo.com>
---
 kernel/rh_messages.h | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

diff --git a/kernel/rh_messages.h b/kernel/rh_messages.h
index 08a44920eb4f2..598fe5a14a4b3 100644
--- a/kernel/rh_messages.h
+++ b/kernel/rh_messages.h
@@ -261,19 +261,6 @@ static const struct pci_device_id rh_disabled_pci_devices[] = {
 	{ 0x15B3, 0x675A, PCI_ANY_ID, PCI_ANY_ID },
 	{ 0x15B3, 0x6764, PCI_ANY_ID, PCI_ANY_ID },
 	{ 0x15B3, 0x676E, PCI_ANY_ID, PCI_ANY_ID },
-	{ 0x15B3, 0x1003, PCI_ANY_ID, PCI_ANY_ID },
-	{ 0x15B3, 0x1004, PCI_ANY_ID, PCI_ANY_ID },
-	{ 0x15B3, 0x1005, PCI_ANY_ID, PCI_ANY_ID },
-	{ 0x15B3, 0x1006, PCI_ANY_ID, PCI_ANY_ID },
-	{ 0x15B3, 0x1008, PCI_ANY_ID, PCI_ANY_ID },
-	{ 0x15B3, 0x1009, PCI_ANY_ID, PCI_ANY_ID },
-	{ 0x15B3, 0x100a, PCI_ANY_ID, PCI_ANY_ID },
-	{ 0x15B3, 0x100b, PCI_ANY_ID, PCI_ANY_ID },
-	{ 0x15B3, 0x100c, PCI_ANY_ID, PCI_ANY_ID },
-	{ 0x15B3, 0x100d, PCI_ANY_ID, PCI_ANY_ID },
-	{ 0x15B3, 0x100e, PCI_ANY_ID, PCI_ANY_ID },
-	{ 0x15B3, 0x100f, PCI_ANY_ID, PCI_ANY_ID },
-	{ 0x15B3, 0x1010, PCI_ANY_ID, PCI_ANY_ID },
 	{ 0x15B3, 0x1025, PCI_ANY_ID, PCI_ANY_ID },
 	{ 0x15B3, 0xA2DF, PCI_ANY_ID, PCI_ANY_ID },
 	{ 0x1000, 0x0064, PCI_ANY_ID, PCI_ANY_ID },
@@ -328,7 +315,20 @@ static const struct pci_device_id rh_unmaintained_pci_devices[] = {
 	{ 0x1077, 0x8031, PCI_ANY_ID, PCI_ANY_ID },
 	{ 0x1924, 0x0803, PCI_ANY_ID, PCI_ANY_ID },
 	{ 0x1924, 0x0813, PCI_ANY_ID, PCI_ANY_ID },
+	{ 0x15B3, 0x1003, PCI_ANY_ID, PCI_ANY_ID },
+	{ 0x15B3, 0x1004, PCI_ANY_ID, PCI_ANY_ID },
+	{ 0x15B3, 0x1005, PCI_ANY_ID, PCI_ANY_ID },
+	{ 0x15B3, 0x1006, PCI_ANY_ID, PCI_ANY_ID },
 	{ 0x15B3, 0x1007, PCI_ANY_ID, PCI_ANY_ID },
+	{ 0x15B3, 0x1008, PCI_ANY_ID, PCI_ANY_ID },
+	{ 0x15B3, 0x1009, PCI_ANY_ID, PCI_ANY_ID },
+	{ 0x15B3, 0x100a, PCI_ANY_ID, PCI_ANY_ID },
+	{ 0x15B3, 0x100b, PCI_ANY_ID, PCI_ANY_ID },
+	{ 0x15B3, 0x100c, PCI_ANY_ID, PCI_ANY_ID },
+	{ 0x15B3, 0x100d, PCI_ANY_ID, PCI_ANY_ID },
+	{ 0x15B3, 0x100e, PCI_ANY_ID, PCI_ANY_ID },
+	{ 0x15B3, 0x100f, PCI_ANY_ID, PCI_ANY_ID },
+	{ 0x15B3, 0x1010, PCI_ANY_ID, PCI_ANY_ID },
 	{0}     /* Terminating entry */
 };
 

---
base-commit: 8138ac52582c197d82c73c4314441ebf38e12456
change-id: 20260917-pr-khorenko-vstor-145951-mlx4-3291ae3f0da3

Best regards,
--  
Konstantin Khorenko <khorenko at virtuozzo.com>



More information about the Devel mailing list