As far as I remember, the issue is not actually writing to the disk bypassing the FS. It is the fact that XFS can consider files stored only in the journal as committed on the disk, and then later on moves the data from the journal to the final locations. GRUB 1's XFS module used to ignore the journal, so it might not see the most recent versions of all files. I also don't know if the grub installation procedure might embed sector locations for boot files while they still exist only in the journal.
Sadly, I don't know if this problem has been solved.
GRUB 2 becomes the default bootloader in Ubuntu 9.10
Posted Jun 25, 2009 16:31 UTC (Thu) by proski (subscriber, #104)
[Link]
GRUB 2 don't require direct writing to any filesystem for installation. Direct read access to the filesystem at the installation time is possible, but it's discouraged, and it's not the default mode of operation. The default is embedding the core into the sectors following the MBR (master boot record, the first sector of the hard drive).
GRUB 2 becomes the default bootloader in Ubuntu 9.10
Posted Jul 1, 2009 8:02 UTC (Wed) by The_Barbarian (subscriber, #48152)
[Link]
Or for GPT, grub is normally put into the BIOS boot partition or the EFI system partition.
GRUB 2 becomes the default bootloader in Ubuntu 9.10
Posted Jun 25, 2009 20:36 UTC (Thu) by cjwatson (subscriber, #7322)
[Link]
It was at least solved in recent Debian versions of GRUB Legacy by way of xfs_freeze -f/-u, so in the worst case it'd be straightforward to apply the same hack for GRUB 2; I forget where this came up, but I understand that the XFS kernel code itself is also better at handling freeze/thaw now in a way that isn't quite so unfriendly to GRUB.
GRUB 2 becomes the default bootloader in Ubuntu 9.10
Posted Jul 4, 2009 9:58 UTC (Sat) by abpsoft (guest, #53672)
[Link]
Calling it solved is a bit bold - that xfs_freeze hack has the tendency of freezing - indeed - the whole box solid, provided that system has / (including /boot) on XFS and an unsuspecting admin tries to run grub-install. That hack might work when run from d-i, but in a live system (let's say, after upgrading from etch to lenny and pondering whether it may be time to finally replace LILO) it's a disaster. It should at least print a big fat warning before actually freezing a live FS that might have plenty of write activity.