Tested on ppc64, it works. I have not got a s390 machine.
Asked a console log from qzhao for s390 boot:
Seems there is BOOT_IMAGE=0 in cmdline, it should has different meanings.
But this patch will work on all grub booted machines.
One possible fix is to exclude s390, for s390 just use /boot.