Hm , i think i missed the grub section to mention - sorry Example: ... <bootloader> <global> <activate>true</activate> <boot_extended>true</boot_extended> <default>openSUSE 11.1 - 2.6.27.7-9 (pae)</default> <generic_mbr>true</generic_mbr> <gfxmenu>/boot/message</gfxmenu> <lines_cache_id>5</lines_cache_id> <timeout config:type="integer">8</timeout> </global> ... <sections config:type="list"> <section> <append>smp pci=noacpi resume=/dev/sda5 splash=silent showopts vga=0x315</append> <image>/boot/vmlinuz-2.6.27.7-9-pae</image> <initial>1</initial> <initrd>/boot/initrd-2.6.27.7-9-pae</initrd> <lines_cache_id>0</lines_cache_id> <name>openSUSE 11.1 - 2.6.27.7-9 (pae)</name> <original_name>linux</original_name> <type>image</type> </section> <section> <append>showopts ide=nodma apm=off noresume nosmp maxcpus=0 edd=off powersaved=off nohz=off highres=off processor.max_cst ate=1 x11failsafe</append> <image>/boot/vmlinuz-2.6.27.7-9-pae</image> <initrd>/boot/initrd-2.6.27.7-9-pae</initrd> <lines_cache_id>1</lines_cache_id> <name>Failsafe -- openSUSE 11.1 - 2.6.27.7-9 (pae)</name> <original_name>failsafe</original_name> <type>image</type> </section> </sections> </bootloader> ... So IMO you must configure the kernel section AND the grub section. Thus grub knows what to start. If everything fails you can change the kernel in a post init script. Meaning installing the default kernel and then chancing to the required one.
But now that you mention it: We do not use <do_online_update>, because the packages in our repo are already the newest version. Is this bad practice? I have only working practise :-). I never cared about this " <do_online_update> "
For details see http://ugansert.blogspot.com/2008_07_01_archive.html Cheers Hajo