Old Dell PERC H310 with kmod-megaraid_sas and Rocky 9.4 Cant see controller or disks

Hi,

Host to be upgraded to Rocky from CentOS 7 originally can see disks on H310 controller

[root@oldhost ~]# df -h /disk?
Filesystem Size Used Avail Use% Mounted on
/dev/sdc3 890G 803G 42G 96% /disk1
/dev/sdb1 5.5T 910G 4.6T 17% /disk2
/dev/sda1 5.5T 1.1T 4.4T 20% /disk3
/dev/sdc1 14G 9.1G 3.9G 70% /

[root@oldhost ~]# lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
└─sda1 ext4 disk3 80a7e0d0-352d-462e-9ce0-28bca58623bd /disk3
sdb
└─sdb1 ext4 disk2 126299ad-fc81-4d15-b663-fb5fdd004549 /disk2
sdc
├─sdc1 ext4 centos77 a62434fa-f6d2-4ea5-9745-18add783f74a /
├─sdc2 swap swap bfd223fd-4caa-4253-9fd4-1065eec21fc0 [SWAP]
└─sdc3 ext4 disk1 fcd362db-421c-4a01-bda8-58689eada250 /disk1

Rocky Installed on 1TB SATA fine of course

[root@newhost ~]# lspci -nn | grep -i sas
06:00.0 RAID bus controller [0104]: Broadcom / LSI
MegaRAID SAS 2008 [Falcon] [1000:0073] (rev 03)

The card is a Dell PERC H310
Drives are Toshiba HDWE160 6TB or so
There is actually no configured raid the 2 disks are just two independent sata disks on a
raid controller as the silly mobo only has 2 sata ports, one is being used for o/s disk.

According to device id and elrepo wiki page re which kmod to use

kmod-megaraid_sas.x86_64 from elrepo for el 9

Still cant see drives though with lsblk -f

[root@newhost ~]# lsmod | grep -i mega
megaraid_sas 212992 0

zero devices using the module?

dmesg

[ 17.170695] megasas: 07.727.03.00-rc1
[ 17.170752] Warning: Unmaintained Hardware is detected:
megaraid_sas:1000:0073 @ 0000:06:00.0
[ 17.171061] megaraid_sas 0000:06:00.0: BAR:0x1 BAR’s base_addr
(phys):0x00000000f7260000 mapped virt_addr:0x(ptrval)
[ 17.171068] megaraid_sas 0000:06:00.0: FW now in Ready state
[ 17.171071] megaraid_sas 0000:06:00.0: 63 bit DMA mask and 32 bit
consistent mask
[ 17.171258] megaraid_sas 0000:06:00.0: requested/available msix 1/1
poll_queue 0
[ 17.171262] megaraid_sas 0000:06:00.0: current msix/online cpus : (1/16)
[ 17.171265] megaraid_sas 0000:06:00.0: RDPQ mode : (disabled)
…snip…
[ 17.192782] megaraid_sas 0000:06:00.0: Failed to init firmware
[ 17.192860] megaraid_sas 0000:06:00.0: Failed from megasas_init_fw 6537
[ 17.210928] ACPI: bus type drm_connector registered
[ 17.213635] ahci 0000:00:1f.2: version 3.0
[ 17.213858] ahci 0000:00:1f.2: AHCI 0001.0300 32 slots 6 ports 6 Gbps 0x1
impl SATA mode
[ 17.213862] ahci 0000:00:1f.2: flags: 64bit ncq sntf pm led clo pio slum
part ems apst
[ 17.214380] scsi host1: ahci
[ 17.214592] scsi host2: ahci
[ 17.214733] scsi host3: ahci
[ 17.214933] scsi host4: ahci
[ 17.215074] scsi host5: ahci
[ 17.215199] scsi host6: ahci

[root@mewhost log]# uname -a
Linux newhost 5.14.0-427.42.1.el9_4.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Oct
31 14:01:51 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

find /lib/modules -name megaraid_sas.ko

/lib/modules/5.14.0-427.13.1.el9_4.x86_64/extra/megaraid_sas/megaraid_sas.ko

weak-updates symbolic link to above

/lib/modules/5.14.0-427.42.1.el9_4.x86_64/weak-updates/megaraid_sas/
megaraid_sas.ko

…weak-updates is a sym link to the one installed to handle kernel updates

lsmod | grep -i mega shows it is loaded but not used by anything?
megaraid_sas 212992 0

modinfo megaraid_sas shows the weak-updates link is being used as the file

Downloaded and intalled the perc utility from dell and it thinks there are no
controllers

[root@newhost perccli]# ./perccli64 show
CLI Version = 007.2616.0000.0000 Dec 06, 2023
Operating system = Linux 5.14.0-427.42.1.el9_4.x86_64
Status Code = 0
Status = Success
Description = None

Number of Controllers = 0
Host Name = newhost
Operating System = Linux 5.14.0-427.42.1.el9_4.x86_64

Removed kmod:

modinfo megaraid_sas
filename:
/lib/modules/5.14.0-427.42.1.el9_4.x86_64/kernel/drivers/scsi/megaraid/
megaraid_sas.ko.xz

This is the base distribution kernel one , so although I removed with
modprobe -r before a reboot , it is still loaded , just not the elrepo one.

Neither the elrepo one or the one in the base distribution work.

lsblk -f doesn’t show the 2x 5TB disks.

Do I need to use the elrepo long term kernel?

I hope not as that makes me feel squirly and think I should just buy modern
hardware - persuade someone to upgrade after +10 years…

Maybe I’ve missed something, other ancient controllers just needed the kmod pkg
appropriate to them though.

Any pointers would be appreciated.

Regards,
Stephen.

Really odd that the kmod package is not working.

Would you mind filing a report at My View - ELRepo Bugs ?

Hi,
Turns out that if I boot the Dell Precision 5600T in legacy mode then the stock Rocky 9 kernel / installation process can see the disks on the H310 and this is without any additional kmod from el repo. I had installed it using UEFI mode, on the first internal SATA hard disk.

Now I don’t completely understand why but suspect because there is no RAID configuration and the 2 data disks are “handled by bios” according to the H310 firmware splash notice - which I thought meant the BIOS on the H310 rather than the server’s BIOS - the server BIOS see’s these 2 disks only in legacy mode because they had been previously used aka formatted and partitioned as non UEFI data disk then.

To be honest I’m guessing and think I need to read more about the actual differences between legacy and UEFI and it’s strengths and weaknesses. Especially as I am often handling hardware that’s more than 10 years old.

Thank you for your time.

I encountered something similar on an Intel server several years ago. It turned out to be a bug in grub2, which was acknowledged by the grub2 maintainers, but at the time they indicated they didn’t have plans to fix it any time soon. The manifestation was that after booting in EFI mode the system couldn’t see the megaraid_sas device (which has exactly the same 0073 id number that yours has), while it could after booting in non-EFI mode. You might like to check with the grub2 maintainers whether they thought they’d fixed it or not - my guess is not.