I am using pygrub to boot and this is how I got it to work:
xm create -c <path to >dev3.cfg
at the boot splash select the kernel you are using to boot with.. press e to edit. press e and edit the kernel line and put single right after the kernel designation....
i.e. kernel /vmlinuz-2.6.18-274.3.1.el5xen single ro root=/dev/VolGroup00/LogVol00 ..... press enter to save your change. It will return back to the boot option menu
pyGRUB version 0.6 ?????????????????????????????????????????????????????????????????????????? ? kernel /vmlinuz-2.6.18-274.3.1.el5xen single ro root=/dev/VolGroup00/> ? ? initrd /initrd-2.6.18-274.3.1.el5xen.img ? ? ? ? ? ? ? ? ? ? ? ? ? ?????????????????????????????????????????????????????????????????????????? Use the ^ and v keys to select which entry is highlighted. Press 'b' to boot, 'e' to edit the selected command in the boot sequence, 'c' for a command-line, 'o' to open a new line after ('O' for before) the selected line, 'd' to remove the selected line, or escape to go back to the main menu.
hit b to boot...
it worked for me a couple of times in succession.
Good luck.