Mounting Promise Pegasus - Stex.ko driver

Hello
I have a Promise Pegasus 2-R disk box that runs on Thunderbolt 2. I have had it connected to a Dell 7530 workstation on Centos 7.7 for a few years and all works fine. Having taken the leap to Rocky, I can no longer mount the box. It shows up as in the Thunderbolt preferences but there is no sign of it the disk list.
It seems that there is a driver called
Stex.ko
that has been in the centos kernels for many years but I cannot find it in the Rocky Kernel.
I found a copy of it in on an old centos kernel


> /lib/modules/3.10.0-1160.36.2.el7.x86_64/kernel/drivers/scsi/stex.ko.xz

and copied the file it to the rocky kernel  at the equivalent folder. 
Sadly, it crashed my rocky kernel 
4.18.0-348.23.1.el8_5.x86_64

Does anyone know if I could make this work?
Many thanks

Copying a kernel module from a kernel that doesn’t match the one you are running isn’t going to work. It would require building that module for your kernel on Rocky.

That said, the module is available in the elrepo kernels, kernel-lt for sure, which is 5.4. So you can install elrepo by doing this:

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
dnf install https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm
dnf config-manager --set-enabled elrepo-kernel
dnf install kernel-lt

now reboot your kernel so that it is running kernel-lt-5.4. Then you can do this:

[root@rocky ~]# modprobe stex

[root@rocky ~]# lsmod | grep stex
stex                   28672  0

as you can see the module is there. I cannot test it, since I don’t have that hardware. Alternatively, if that doesn’t work, use the mainline kernel instead and try that one:

dnf install kernel-ml

Link to elrepo page: ELRepo | HomePage

Hello
Thank you for replying.
I have already tried installing a latest 5.* but the boot up does not get past
Started Gnome Display Monitor
I did as you suggested above and I get the same result. Do you have an idea why 4. kernels work but 5. block with the Gnome?
Thanks

Not sure to be honest, my test above was just done on a VM with a minimal install, so without the graphical environment it’s booting fine. Although I realise that doesn’t help you. Could be a display driver problem, what graphics card is in your machine? There should be a way around that issue to get the machine booted though.

Are you still on the text screen when it says it’s started GDM, or did it just go black? You could always try CTRL-ALT-F1 (or even F2-F6) to see if the console windows are accessible.

I am a far from a linux master so playing with kernels is not really my thing. From what I read on the centos forum, it is an issue with a NVIDIA drivers that I have installed to replace the nouveau driver. My objective is to use Rocky for video editing software.
This morning, I just cannot get my head around how to reinstall the NVIDIA drivers for the 5. version when it does not boot properly.

The GRUB (bootloader) allows editing boot menu entry before loading kernel.
There you can modify kernel command-line parameters.

For example, add systemd.unit=multi-user.target
That makes the system boot into text-mode. I would use that, if I can’t get to text console with the Ctrl-Alt-F[1-6] shortcuts.
Alternatively, I could ‘ssh’ into system and call systemctl set-default multi-user.target which makes the system boot to text-mode by default. (The GUI is started with graphical.target )

Part of the NVidia driver in kernel module. Kernel modules must be compiled for each version of kernel. (The ELRepo builds special, “less specific” modules that work with multiple very similar kernels. Kernels released for one point update of RHEL are similar.) The 5.xx kernels are totally different from RHEL 4.18.0-348.y kernels.

I would go to text-mode and uninstall the NVidia’s drivers. Then I should have the option to start GUI with Nouveau.
One can shift (from multi-user.target) into graphical.target with: systemctl isolate graphical.target
Once I have usable system (well, text-mode is usable for me), I can attempt installing NVidia’s driver for the 5.xx kernel.

Thank you to you both for giving me the keys to get out of my mess.

For those that are newbies like me. Below are some of the missing info to solve this issue.

Firstly, I had to get to a terminal prompt when the boot stopped at
Started Gnome Display Monitor
(Each major kernel version has to have the NVIDIA drivers built for its, so I needed to uninstall the 4.* Kernel NVIDIA and install the same driver in the 5.* kernel.
This is what I used:

I then launched the NVIDIA driver install from paragraph 2.8.2

https://www.if-not-true-then-false.com/2021/install-nvidia-drivers-on-centos-rhel-rocky-linux/

but the NVIDIA install got stuck as the 5.17 kernel was missing the header
so I used

sudo dnf --enablerepo=elrepo-kernel install kernel-ml-{devel,headers}
1 Like

Reinstalled the NVIDIA driver without issue. The 5.17 kernel booted properly with the NVIDIA driver and the PROMISE R6 RAID mounted without issue.
HOORAH
Finally, I uninstalled the 4.* kernels using this method

I hope this helps someone else.
Thank you

1 Like

I am coming back on this one as I am starting to appreciate how updating the kernel from the official version causes issues with updates between the rocky updating and dependencies and particularly NVIDIA (one day I really hope NVIDIA create a far more robust deployment system on linux than the one they have now)
I migrated from centos 7 that is running a kernel 3.10. Stex was part of this kernel. Stex is also part of 5.*.
I can also find it in the kernel below …
https://archlinux.pkgs.org/rolling/seblu-x86_64/linux-4.18.0-seblu-4.18.0-1-x86_64.pkg.tar.xz.html

So why would this driver disappear from the Rocky 4.18 ?
I am really no linux specialist so I am wary to install a non rocky kernel in case I break the machine again. Thank you

Rocky Linux 8 does not have stex.ko because RHEL-8 does not have it. Rocky is a rebuild of RHEL, feature-for-feature.

But if you are running ELRepo’s kernel-ml, it should have the stex driver enabled.

OK. I can see stex in the Centos 7 kernel package contents and it worked great for me on 7.9. So I presume that RH removed it in 8. That is very disappointing.
Thank you for the confirmation.

Quick note: A second method for installing NVIDIA drivers involves downloading from the NVIDIA dev repo

Note that you cannot use switch between both method and uninstalling either completely lead to system problems that I could not solve. The repo solution is definitely easier on a virgin installation.

Thanks to Toracat and ELREPO, the stex driver is now available as an rpm and works on 8.6 and should work on 9.

https://elrepo.org/linux/elrepo/el8/x86_64/RPMS/kmod-stex-6.02.0000.01-1.el8_6.elrepo.x86_64.rpm

Here is the ELREPO ticket

Please note that “The module can be used on RHEL and anny compatible distro (e.g, Ricky, ALMA etc, but not CentOS Stream)”

https://elrepo.org/bugs/view.php?id=1238