On certain newer Linux distributions running on Intel platforms, additional kernel security features may be enabled by default.
Under these environments, some SupremeRAID driver packages may not be compatible with the enabled kernel security configuration. This can cause the SupremeRAID driver to fail during startup.
For affected driver versions and operating system combinations, disabling Intel Indirect Branch Tracking through the GRUB kernel parameters can be used as a temporary workaround.
Product:
SupremeRAID SR/ SE/ AE/ HE
Host Hardware: Intel platform
Operating System: Linux distributions with Intel IBT enabled
SupremeRAID Driver Version: Versions without IBT-compatible driver images, including version 1.7.2
After installing the SupremeRAID driver, the driver fails directly during the startup or kernel module loading process.
The SupremeRAID kernel module may fail to load:
modprobe graid
Depending on the product and driver version, the related GRAID service may also remain in a failed or inactive state:
systemctl status graid
The driver startup failure may also prevent the SupremeRAID controller or related graid devices from being initialized correctly.
Related errors can be reviewed using the following commands:
dmesg | grep -i graid
journalctl -k -b --no-pager | grep -i graid
For products that use the graid systemd service, check the service log:
journalctl -u graid -b --no-pager
Some newer Linux distributions enable Intel Indirect Branch Tracking by default.
IBT is part of Intel Control-flow Enforcement Technology and is used to provide additional protection against certain control-flow attacks.
Kernel modules loaded on an IBT-enabled system must be built with compatible IBT support. If the installed GRAID driver image is not compatible with the IBT-enabled kernel, the kernel may reject the module during the loading process.
As a result, the GRAID driver fails to start and the related GRAID devices or services cannot be initialized.
For GRAID driver versions that do not provide an IBT-compatible driver image for the installed operating system, add the following kernel parameter to disable IBT:
ibt=off
A system reboot is required after changing the kernel parameter.
This method applies to distributions such as:
AlmaLinux
CentOS Stream
Oracle Linux
Red Hat Enterprise Linux
Rocky Linux
Add ibt=off to all installed kernel entries:
grubby --update-kernel=ALL --args="ibt=off"
Verify that the parameter has been added:
grubby --info=ALL | grep args
Reboot the system:
reboot
Edit the GRUB configuration file:
vi /etc/default/grub
Append ibt=off to the existing GRUB_CMDLINE_LINUX_DEFAULT value.
For example:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash ibt=off"
Do not remove any existing kernel parameters.
Update the GRUB configuration:
update-grub
Reboot the system:
reboot
After the system restarts, verify that ibt=off is included in the active kernel command line:
cat /proc/cmdline
Expected result:
... ibt=off ...
Verify that the GRAID kernel module can be loaded:
modprobe graid
Check whether the module is loaded:
lsmod | grep graid
For products that use the graid systemd service, restart and verify the service:
systemctl restart graid
systemctl status graid
Verify that the GRAID controller or related devices are detected using the applicable product management tool.
For SupremeRAID products, for example:
graidctl show
After upgrading to a SupremeRAID driver package that provides IBT-compatible support for the installed operating system and kernel, remove the ibt=off parameter to restore the operating system's IBT protection.
Before removing the workaround, confirm compatibility in the applicable release notes or support matrix.
Remove the parameter from all installed kernels:
grubby --update-kernel=ALL --remove-args="ibt=off"
Reboot the system:
reboot
Edit the GRUB configuration:
vi /etc/default/grub
Remove ibt=off from GRUB_CMDLINE_LINUX_DEFAULT.
Update GRUB and reboot:
update-grub
reboot
Verify that ibt=off is no longer present:
cat /proc/cmdline
This issue may affect the full SupremeRAID product line, depending on the installed driver version, Linux distribution, kernel version, and IBT configuration.
Disabling IBT removes one of the operating system's control-flow protection mechanisms. Customers should review the security impact before applying this workaround.
The availability of an IBT-compatible prebuilt driver image depends on the GRAID release, Linux distribution, and kernel version.
Some supported environments may include compatible prebuilt driver images beginning with newer SupremeRAID driver releases. Refer to the applicable release notes and compatibility matrix for detailed support information.
Do not assume that all Linux distributions or kernels are covered by the same SupremeRAID driver release.
Do not remove other existing GRUB kernel parameters when adding or removing ibt=off.
A reboot is required for the kernel parameter change to take effect.