I have seen this on HP DL360 G8 servers which were using multiple fiber channel controllers and multipath to attach several hundred SAN disks to a server.
The problem was that the kernel was booted with a serial console enabled and running at 9600 bps.
When the large number of drives was being discovered, a lot of verbose output was being dumped to the console. The slow serial console could not keep up with the messages and the soft lockup would occur.
Check /etc/default/grub
for lines that look like:
GRUB_TERMINAL="serial console"
GRUB_SERIAL_COMMAND="serial --speed=9600"
GRUB_CMDLINE_LINUX="console=tty0 console=ttyS0,9600"
If you need to maintain a serial console, change 9600 to 115200:
GRUB_TERMINAL="serial console"
GRUB_SERIAL_COMMAND="serial --speed=115200"
GRUB_CMDLINE_LINUX="console=tty0 console=ttyS0,115200"
Then reinstall grub with grub2-mkconfig -o /boot/grub2/grub.cfg
If you don't need a serial console, you can remove GRUB_SERIAL_COMMAND
and update the other two lines and reinstall grub:
GRUB_TERMINAL="console"
GRUB_CMDLINE_LINUX="console=tty0"
You may have other parameters in GRUB_CMDLINE_LINUX
, in which case you want to be careful to make sure that you only change the console so that you aren't making other changes which could negatively impact your system.