This is not a Xen-only issue as qemu-kvm is also affected.
My current work-around is to use OpsCode Chef to detect if grub1 in installed and replace /usr/sbin/update-grub with a working version.
* QEMU guest environment:
$ lsb_release -sd Ubuntu 10.04.3 LTS
$ uname -srv Linux 2.6.38-11-server #50~lucid1-Ubuntu SMP Tue Sep 13 22:10:53 UTC 2011
$ cat /boot/grub/device.map (fd0) /dev/fd0 (hd0) /dev/vda
$ dpkg -l | awk '/grub/ {print $2 " " $3}' grub 0.97-29ubuntu60.10.04.1 grub-common 1.98-1ubuntu12
* Before replacing /usr/sbin/grub-update
$ sudo update-grub ... Ignoring Xen kernel on non-Xen host: vmlinuz-2.6.38-11-server ...
This is not a Xen-only issue as qemu-kvm is also affected.
My current work-around is to use OpsCode Chef to detect if grub1 in installed and replace /usr/sbin/ update- grub with a working version.
* QEMU guest environment:
$ lsb_release -sd
Ubuntu 10.04.3 LTS
$ uname -srv
Linux 2.6.38-11-server #50~lucid1-Ubuntu SMP Tue Sep 13 22:10:53 UTC 2011
$ cat /boot/grub/ device. map
(fd0) /dev/fd0
(hd0) /dev/vda
$ dpkg -l | awk '/grub/ {print $2 " " $3}' .10.04. 1
grub 0.97-29ubuntu60
grub-common 1.98-1ubuntu12
* Before replacing /usr/sbin/ grub-update
$ sudo update-grub 2.6.38- 11-server
...
Ignoring Xen kernel on non-Xen host: vmlinuz-
...