Description of problem: grub2 in fedora 16 does not support lzo and fails to boot if /boot is on btrfs and compressed with lzo (Such as in the case where you have just / and no separate /boot. How reproducible: Always Steps to Reproduce: 1. Install using btrfs as /, no separate /boot 2. edit /etc/fstab and add compress=lzo to /, reboot or mount -o remount / for changes to take effect. 3. Edit grub files in /boot, such as mkconfig -o /boot/grub2/grub.conf 4. Get dropped in grub rescue because the files are compressed on the btrfs filesystem and can't be read by grub2 Actual results: Can't boot if grub files are modified on btrfs with lzo compression Expected results: Grub to be able to read its configuration files and such.
A fix is to boot with a rescue disk that doesn't mount the /boot with compress=lzo, and re-generate the grub files. Such as with: grub2-install --root-directory=/ /dev/sd... /sbin/grub2-mkconfig -i /boot/grub2/grub.conf The files will be generated without the compression so you will be able to boot, until an update changes some file in /boot while compression is turned on.
Upstream bug http://savannah.gnu.org/bugs/?33287 , so it should be fixed in the grub version used in f17. A backport to f16 is IMO very unlikely.