grub will only boot old kernels, new kernels lead to grub errors
Bug #345488 reported by
Andy Whitcroft
| Affects | Status | Importance | Assigned to | Milestone | |
|---|---|---|---|---|---|
| grub (Ubuntu) |
Fix Released
|
Medium
|
Colin Ian King | ||
Bug Description
I converted an ext3 filesystem to ext4 and later upgraded my Jaunty install which gave me a new kernel. The new kernel is not bootable grub thinks the block list for the file exceeds the paritition boundaries. Old kernels work just fine still.
Related branches
| Changed in grub: | |
| assignee: | nobody → colin-king |
| importance: | Undecided → Medium |
| status: | New → In Progress |
To post a comment you must log in.

Debugging this we have found that grub is getting the block numbers wrong.
vmlinuz- 2.6.28- 8-generic is the older good kerne, grub block dumpl:
(hd0, 0)402243640+ 96,402243744+ 6661
vmlinux- 2.6.28- 11-generic is the new broken kernel, grub block dump:
(hd0, 0)1546320+ 8,32+8, 4096+8, 402255872+ 8,4096+ 8,2792+ 8,402280448+ 4
Further looking at the filesystem with debugfs we find that the two inodes are in different formats:
-8-generic: 50280455- 50280466, (IND):50280467, (12-844) :50280468- 50281300
=======
Inode: 12566582 Type: regular Mode: 0644 Flags: 0x0
Generation: 3327387640 Version: 0x00000000
User: 0 Group: 0 Size: 3459328
File ACL: 0 Directory ACL: 0
Links: 1 Blockcount: 6768
Fragment: Address: 0 Number: 0 Size: 0
ctime: 0x49a7d678 -- Fri Feb 27 12:03:04 2009
atime: 0x49a7d673 -- Fri Feb 27 12:02:59 2009
mtime: 0x49a4ddf1 -- Wed Feb 25 05:58:09 2009
Size of extra inode fields: 4
BLOCKS:
(0-11):
TOTAL: 846
-11-generic :50281984- 50282495, (512-860) :50285056- 50285404
=======
Inode: 12566556 Type: regular Mode: 0644 Flags: 0x80000
Generation: 2561410428 Version: 0x00000000:00000001
User: 0 Group: 0 Size: 3524096
File ACL: 0 Directory ACL: 0
Links: 1 Blockcount: 6888
Fragment: Address: 0 Number: 0 Size: 0
ctime: 0x49c20af8:66d68468 -- Thu Mar 19 09:06:00 2009
atime: 0x49c223ad:599b6548 -- Thu Mar 19 10:51:25 2009
mtime: 0x49c1831b:00000000 -- Wed Mar 18 23:26:19 2009
crtime: 0x49c20af8:244ae248 -- Thu Mar 19 09:06:00 2009
Size of extra inode fields: 28
BLOCKS:
(0-511)
TOTAL: 861