Bug 243490

Summary: grub fails on FS with 512-byte inodes
Product: [Fedora] Fedora Reporter: Bill Nottingham <notting>
Component: grubAssignee: Eric Sandeen <esandeen>
Status: CLOSED RAWHIDE QA Contact:
Severity: low Docs Contact:
Priority: low    
Version: rawhideCC: esandeen, k.georgiou, rvokal
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-08-13 18:05:15 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 205161    
Attachments:
Description Flags
untested patch none

Description Bill Nottingham 2007-06-09 00:44:09 UTC
Description of problem:

ext3 lets you change the size of the inode. This is useful for keeping extended
attributes in-inode (see bug #205161 for some 'interesting' fun when they're not
in-inode).

However, if you do this, grub chokes, and fails to properly install.

grub-install errors with:

The file /boot/grub/stage1 not read correctly.

Version-Release number of selected component (if applicable):

grub-0.97-13

Additional info:

The message not proper english.

Comment 1 Bill Nottingham 2007-06-09 00:49:56 UTC
If you boot,you are dropped to the grub prompt. Attempting to read the FS yields
"Error 2: Bad file or directory type"

Comment 2 Bill Nottingham 2007-06-09 01:14:20 UTC
Looking briefly at the code, this seems to be 'expected' from the way it's
written. Ugh.

Comment 3 Eric Sandeen 2007-08-02 14:48:34 UTC
Oh... bummer.  Workaround would be to have a separate /boot of course, if
further 512-byte inode testing was desired.  I suppose grub needs to be told
about this new format.  I'll see if I can take a look...

Comment 4 Eric Sandeen 2007-08-02 21:23:15 UTC
Created attachment 160552 [details]
untested patch

Grub is using sizeof(struct ext2_inode) to calculate inode offsets in the inode
table.	Looking at the inode size in the superblock instead should fix this. 
Attached patch builds but is untested.

Comment 5 Eric Sandeen 2007-08-13 18:05:15 UTC
patch in comment #4 has been tested, is in devel/ now.  Thanks pjones!