I also have this issue on my intel based dv9000, it seems to be a bios issue. This patched was created by phcoder in #grub on irc.freenode.net
--- Orig/grub2-1.97+experimental.20091026/kern/i386/pc/startup.S 2009-10-26 01:05:30.000000000 +0000 +++ V04/grub2-1.97+experimental.20091026/kern/i386/pc/startup.S 2009-11-10 14:31:11.567518029 +0000 @@ -776,6 +777,11 @@ movw %cx, %ax movw %bx, %ds int $0x13 /* do the operation */ + jc noclean + /* Clean return value if carry isn't set to workaround + some buggy BIOSes. */ + xor %ax, %ax +noclean: movb %ah, %bl /* save return value in %bl */ /* back to protected mode */ DATA32 call real_to_prot @@ -820,6 +826,9 @@ movb $0x8, %ah int $0x13 /* do the operation */ /* check if successful */ + jc noclean2 + xor %ax, %ax +noclean2: testb %ah, %ah jnz 1f /* bogus BIOSes may not return an error number */ The patch should now be in grub2's experimental source repo. It fixed the issue for me.