Doing a quick strace its almost as if grub is looking at every block device on the system. I have thousands of disks in LVM.
read(8, "METAGET grub-pc/disk_description"..., 8192) = 45
write(7, "0 /dev/dm-1127 (107374 MB; Cloud"..., 60) = 60
read(8, "SUBST grub-pc/disk_description D"..., 8192)...