Mpt3sas does not work with RockyLinux 9

I was using CentOS 8 and have now migrated to RockyLinux 9.
As I had experienced in the past, all (non-boot) drives connected to LSI SAS2008 were not recognized.
So I downloaded and installed kmod-mpt3sas from elrepo.
The mpt3sas appears to load, but the system still does not recognize the drives.
I honestly do not know what is happening. I need help.

$ cat /etc/redhat-release
Rocky Linux release 9.0 (Blue Onyx)

$ uname -r
5.14.0-70.22.1.el9_0.x86_64

$ lspci -nn
01:00.0 Serial Attached SCSI controller [0107]: Broadcom / LSI SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] [1000:0072] (rev 03)

$ dmesg
[    3.984424] mpt3sas version 39.100.00.00 loaded
[    3.984479] Warning: Disabled Hardware is detected: mpt3sas:0072:1000 @ 0000:01:00.0 is no longer enabled in this release.

If that message is from ELRepo’s driver, then you should ask in ELRepo’s bugzilla My View - ELRepo Bugs

1 Like

Please show us the output from:

find /lib/modules -name mpt3sas.ko

and

modinfo mpt3sas | grep filename

This is the output:

$ find /lib/modules -name mpt3sas.ko
/lib/modules/5.14.0-70.17.1.el9_0.x86_64/weak-updates/mpt3sas/mpt3sas.ko
/lib/modules/5.14.0-70.22.1.el9_0.x86_64/weak-updates/mpt3sas/mpt3sas.ko
/lib/modules/5.14.0-70.13.1.el9_0.x86_64/extra/mpt3sas/mpt3sas.ko

$ modinfo mpt3sas | grep filename
filename:       /lib/modules/5.14.0-70.22.1.el9_0.x86_64/weak-updates/mpt3sas/mpt3sas.ko

I am very confused now and don’t know who is outputting this message. I will consider if I should report it when the situation becomes clearer. Thanks.

I would say the results of your output are for the elrepo mpt3sas module, since when I did this on a standard rocky9 system without any elrepo stuff installed, this is what I get:

[root@rocky9 ~]# modinfo mpt3sas | grep -i filename
filename:       /lib/modules/5.14.0-70.17.1.el9_0.x86_64/kernel/drivers/scsi/mpt3sas/mpt3sas.ko.xz

as you can see, the path is different. In that case, if the elrepo package doesn’t support your LSI SAS2008 you would need to open a bug report with elrepo using the link @jlehtone provided.

Alternatively, you can uninstall the kmod-mpt3sas and try loading the one that is there by default like I just did, and see if your card works or not. If not, then it also means that RHEL deprecated older cards, which was mentioned in this link: removal of SAS-2 controller drivers in RHEL 8 - Red Hat Customer Portal for RHEL8, which would have applied to Rocky8 as well. Hence why installing from elrepo for Rocky8 worked. In that instance if neither works, then we just have to hope that elrepo will build for the older cards as well to support those. But you would need to open a bug as mentioned and ask for the support for the LSI SAS2008 card.

Did you reboot the system after the kmod installation? Does the same warning still show up in dmesg?

On my system, as root

modinfo mpt3sas
filename:       /lib/modules/5.14.0-70.17.1.el9_0.x86_64/kernel/drivers/scsi/mpt3sas/mpt3sas.ko.xz
alias:          mpt2sas
version:        39.100.00.00
description:    LSI MPT Fusion SAS 3.0 Device Driver
author:         Avago Technologies <MPT-FusionLinux.pdl@avagotech.com>
rhelversion:    9.0
signer:         Rocky kernel signing key

so it looks like there’s already an official ‘mpt3sas’ in Rocky 9.

There might be a good reason to install the ELRepo version, but I don’t know why, and it could conflict or break on the next kernel update.

ELRepo’s kernel modules tend to work with all kernels of a point update, so all 5.14.0-70.* of 9.0 should work with same package. It is the next point update (9.1), whose kernel needs new (re)build of the additional modules. The timing of when ELRepo releases version for (RHEL) 9.1 and when Rocky releases 9.1 affects updates on certain time window.

The “weak-updates” point to the “extra” and that is from ELRepo.

The modinfo mpt3sas should list several lines that start: alias:
Those lines contain PCI ID’s of the devices that the module supposedly supports.

When Rocky 9 was installed, the included driver was there already. If the system did fail to support the device with that driver, then how could it do that now? It is highly unlikely that the included drivers would change within 9.0, so new hardware won’t get more support before 9.1.

1 Like

In RHEL 8 (1) and 9, a number of devices were made unsupported/disabled or simply removed. Device IDs of those devices might show up in the alias section of modinfo. This makes it hard to find out if a given device is still supported by looking at the output of modinfo.

Anyway, ELRepo provides kmod packages that have added back the unsupported/disabled/removed devices. Many of them also require a driver update disk (DUD) for the installation of the OS. This is also available from ELRepo.

(1) 8.6 Release Notes Red Hat Enterprise Linux 8 | Red Hat Customer Portal

2 Likes

The Release Notes for RHEL-9 does not have the " Deprecated and unmaintained devices" section. Instead, this doc is available:

2 Likes

Yes, the message appears each time the system is rebooted.

I removed the elrepo package and tried the default module. The path became almost the same as what you wrote, but the system still could not find drives.

I will consider submitting a bug report to elrepo. Thank you all.

1 Like

That is unfortunate.

Your device [1000:0072] is placed in the “disabled” list in the source code of RHEL 9. So you definitely need a kmod package. Yes, this can be taken care of in ELRepo’s bug tracker.

Indeed it is unfortunate. It is Red Hat’s bad decision. [1000:0072] is one of them together with other “disabled” devices. They are shown in the alias list of modinfo in RHEL 9.

I can’t find 0x1000:0x0072 from that “Considerations for Adopting” list either.

Ahh, it was deprecated already in RHEL 7.6 … Chapter 64. Deprecated Adapters Red Hat Enterprise Linux 7 | Red Hat Customer Portal

Oh my, I thought it was new in RHEL 8.0. There is no kmod for el7 and no one has asked for it so far …

Ah, it says

The following adapters continue to be supported until the end of life of Red Hat Enterprise Linux 7 but will likely not be supported in future major releases of this product and are not recommended for new deployments.

@yuria

A modified version of kmod-mpt3sas will show up in the ELRepo testing repository shortly. You can install it by running:

sudo dnf --enablerepo=elrepo-testing install kmod-mpt3sas

Please give it a try.

I am pleased to inform you that this issue has been resolved. I hope this will help those who are suffering from the same problem. Thank you all.
https://elrepo.org/bugs/view.php?id=1252

3 Likes