Tape drive connected to LSI SAS1064ET doesn't shot in /dev/

I’m upgrading from CentOS7 to Rocky9. My LTO tape drive doesn’t show. It works fine in centos7. I tried
modprobe mptsas
but the drive is not showing as /dev/st0 or /dev/nst0

in centos7 these modules are loaded:

lsmod |grep mpt
mptsas                 62316  0
scsi_transport_sas     41224  1 mptsas
mptscsih               40150  1 mptsas
mptbase               106036  2 mptsas,mptscsih
dmesg |grep -i mpt
[    1.085782] Fusion MPT base driver 3.04.20
[    1.096725] Fusion MPT SAS Host driver 3.04.20
[    1.099995] mptbase: ioc0: Initiating bringup
[   11.817166] mptsas: ioc0: attaching ssp device: fw_channel 0, fw_id 0, phy 0, sas_addr 0x500110a00155201c

these are not loaded by default in rocky9 and if I modprobe mptsas they laod but the device is not showing in /dev

Update:
installing elrepo kmod-mptsas fixed it:

yum install -y https://www.elrepo.org/elrepo-release-9.el9.elrepo.noarch.rpm
yum install -y kmod-mptsas
modprobe -r mptsas
mpdprobe mptsas
dracut --force
reboot

I don’t understand why redhat/rocky module didn’t work. I can see it’s enabled:

grep FUSION /boot/config-$(uname -r)
CONFIG_FUSION=y
CONFIG_FUSION_SPI=m
# CONFIG_FUSION_FC is not set
CONFIG_FUSION_SAS=m
CONFIG_FUSION_MAX_SGE=128
# CONFIG_FUSION_CTL is not set
CONFIG_FUSION_LOGGING=y

when I check help for this one: CONFIG_FUSION_SAS=m I see it includes my controler:
CONFIG_FUSION_SAS:

SCSI HOST support for a SAS host adapters.

List of supported controllers:

LSISAS1064
LSISAS1068
LSISAS1064E
LSISAS1068E
LSISAS1078

P.S. I hear people have problems with newer controllers too. If you have such problem try the kmod-mpt3sas module from elrepo (same steps, just replace the module name)

The best way to find out the right driver is to use the device ID pairing. Run:

lspci -nn

And find the device ID pairing [xxxx:yyyy] for the hardware. Then check it against the list provided by elrepo:

https://elrepo.org/wiki/doku.php?id=deviceids

Additional note:

Some hardware is recognized by the driver but disabled (therefore cannot be used) in RHEL. You can find the details in this article :

ELRepo’s kmods include those disabled/removed IDs.

Thanks for the info. Do you know how they removed the devices? I mean if I had to rebuild the module myself what would I have to do? I’m using the elrepo modules, but it bugs me that I couldn’t figured out what’s missing in kernel module.
Also if there is a release upgrade (from 9.3 to 9.4) do I have to update the kmod package? I think kernel upgrades within the same release don’t need kmod-* package upgrade (or at least that’s how zfs behaves).

P.S. the page you gave me requires subscription. Can you give me a list of the removed drivers? This seems like a big deal. I plan to get another tape drive and I’ll probably use another old 6GBps SAS controller. I want to be somewhat prepared.

P.S.2 I want to comlain but I can’t - it’s a free software :smiling_face_with_tear:.

That depends on how the module is built.

All el9_3 kernel have version 5.14.0-362.x. The el9_2 kernels were 5.14.0-284.x. That implies that all kernels for one point update ought to have stable interface, and each point update differs more from previous.

The ELRepo, and apparently ZFS, build modules that are not limited to one specific kernel version, e.g. 5.14.0-362.24.1.el9_3, but should work on all 5.14.0-362.x.el9_3. Yes, on each point update one has to wait until both new kernel and modules from third parties are available. (One might have to do same with repos, like EPEL too, op point updates even though those are not kernel-related dependencies. Overall, point update adds features and study of release notes is worthwhile before hitting dnf up.)

Some other repos, like NVidia’s CUDA repo, build modules separately for each specific kernel. Such module built for 5.14.0-362.24.1.el9_3 does not work with 5.14.0-362.18.1.el9_3 and vice versa.

You can find how the driver was patched in elrepo’s git repository. For example, this is a patch for kmod-mptsas:

You don’t need subscription. Just open an account with RH. The referenced page is too “huge” to quote here.

Thanks!
So if I’m desperate I can just remove the CONFIG_RHEL_DIFFERENCES to enable all deprecated features.
in menuconfig:
[*] Remove support for deprecated features

I logged in with a redhat account but page still says I need subscription. you can upload the list here:

I’ll provide link back here for reference.

On the RH page, the only thing I can see is:

Driver: megaraid_sas
0x1000:0x0411	Broadcom / LSI: MegaRAID SAS 1068	0:R	0:R	1:H
0x1000:0x0413	Broadcom / LSI: MegaRAID SAS 1068 ZCR	0:R	0:R	1:H

the 1:H means hardware disabled in el9. Is the SAS controller build-in to the tape drive, or could you use a different SAS? Are there any newer tape drives that are fully supported?