(Finally figured out how to git send-email on this patch properly.)
As reported earlier, when booted in UEFI mode, Grub would fail to load a
ramdisk of size larger than "(total_pages >> 2)" with
"error: out of memory"
(https://git.savannah.gnu.org/cgit/grub.git/tree/grub-core/kern/efi/mm.c#n
GET_ARRAY_INFO's info.nr_disks does not map to GET_DISK_INFO's
disk.number, which is an internal kernel index. If an array has had drives
added, removed, etc, there may be gaps in GET_DISK_INFO's results. But
since the consumer of devicelist cannot tolerate gaps (it expects to walk
a NULL-terminate