Grub error after upgrading from CentOS 7.9 to Alma

Hello,

I am having difficulties updating a VM with CentOS 7.9 installed.

Prior to upgrading I had to deal with two inhibitors, one being a running NFS service and second, two drivers for which the support in RHEL8 was dropped (mptctl and mptbase).

I blacklisted them by adding both to the module_blacklist GRUB_CMDLINE_LINUX parameter in /etc/default/grub.

Upgrade afterwards went as expected but after the reboot from ELevate install, the system does not boot and displays GRUB error:

symbol 'grub_calloc' not found

I have read up on the internet about it and most of the resources suggest that this is caused by a partial update to GRUB, thus it tries to call a function that does not exist in a module that is not updated.

Following that logic I was able to start the system off Alma ISO, reinstall GRUB and the system boots as expected and finishes the upgrade.

I noticed that in leapp-report there is an entry that’s permanently there indicating that GRUB Core is not automatically updated during the grub upgrade, which would explain this error quite accurately, but the latest version available for CentOS 7.9 of GRUB2 is installed on the VM. So I am not sure what more can I do about it.

Some additional info about the VM config:

There is a RAID array running on the VM.

lsblk
sda                    8:0    0   120G  0 disk
├─sda1                 8:1    0   500M  0 part
│ └─md0                9:0    0   499M  0 raid1 /boot
└─sda2                 8:2    0 119.5G  0 part
 └─md1                9:1    0 119.5G  0 raid1
   ├─rootvg-lv_root 253:0    0    40G  0 lvm   /
   ├─rootvg-lv_swap 253:1    0   7.9G  0 lvm   [SWAP]
   └─rootvg-lv_home 253:2    0  71.6G  0 lvm   /home
sdb                    8:16   0   120G  0 disk
├─sdb1                 8:17   0   500M  0 part
│ └─md0                9:0    0   499M  0 raid1 /boot
└─sdb2                 8:18   0 119.5G  0 part
 └─md1                9:1    0 119.5G  0 raid1
   ├─rootvg-lv_root 253:0    0    40G  0 lvm   /
   ├─rootvg-lv_swap 253:1    0   7.9G  0 lvm   [SWAP]
   └─rootvg-lv_home 253:2    0  71.6G  0 lvm   /home
sr0                   11:0    1  1024M  0 rom

Now my question is, what can I do prior to running the upgrade to prevent this from happening? If that was a one off upgrade I would not mind the extra steps to fix it, but I am expecting to go thru this procedure on a lot of environments like that.