FS#23901 - [grub2] doesn't support lzo compressed btrfs

Attached to Project: Arch Linux
Opened by Christian (kurisutian) - Saturday, 23 April 2011, 17:36 GMT
Last edited by Ronald van Haren (pressh) - Sunday, 15 January 2012, 11:03 GMT
Task Type Bug Report
Category Upstream Bugs
Status Closed
Assigned To Ronald van Haren (pressh)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 2
Private No

Details

Description:

Grub2 won't boot from an lzo compressed btrfs root partition with no additional /boot partition.


Additional info:
grub2-bios 1.99~rc2-1


Steps to reproduce:

Create a btrfs root partition without a separate /boot partition. Changing the fstab entry for the rootfs to use compression and specifically the lzo compression will not allow grub2 to boot. Grub2 could not handle this compression type.
This task depends upon

Closed by  Ronald van Haren (pressh)
Sunday, 15 January 2012, 11:03 GMT
Reason for closing:  Fixed
Additional comments about closing:  fixed with new bzr checkout
Comment by Tobias Powalowski (tpowa) - Saturday, 23 April 2011, 19:31 GMT
Such things i would expect in te bzr branch at the moment.
Comment by Anonymous Submitter - Saturday, 23 April 2011, 21:17 GMT
Seems like only zlib compression is supported. What did phcoder or cjwatson say?
Comment by Anonymous Submitter - Monday, 13 June 2011, 08:10 GMT Comment by Anonymous Submitter - Sunday, 02 October 2011, 12:40 GMT Comment by Keshav Amburay (the.ridikulus.rat) - Sunday, 09 October 2011, 12:39 GMT
@Christian: Try grub2-bios-bzr https://aur.archlinux.org/packages.php?ID=41055 . Upstream bzr rev 3436 supports BTRFS lzo compression. I guess this adds lzo2 (or is it extra/lzo) as a makedepends and depends for all grub2 packages.
Comment by Keshav Amburay (the.ridikulus.rat) - Saturday, 22 October 2011, 19:05 GMT
@pressh: How about updating grub2 packages to bzr rev 3456 or higher (http://bzr.savannah.gnu.org/lh/grub/trunk/grub/revision/3436).

Some of the changes needed in the PKGBUILDs are - no need for sed python to python2 in autogen.sh (http://bzr.savannah.gnu.org/lh/grub/trunk/grub/revision/3444), ntldr-img grub2-extras tarball needs to be updated to rev 20, lzo2 as depends (need to check using namcap though), no need for --program-transform-name=s,grub,grub, instead use --program-prefix="" .

Upstream additions in latest bzr since 1.99 release (as of rev 3456) - btrfs lzo support, LUKS support, non-512 byte aka 4K sector support, ahci module etc.
Comment by Ronald van Haren (pressh) - Saturday, 22 October 2011, 19:17 GMT
I'm okay with that if there are no releases expected by upstream.

I'd like to close a few of the other feature requests for grub2 as well. It may take a week or so before I do all that as I have a few updates pending that I need to prioritize.

[edit] You can of course speed this all up as you've done in the past by sending me suggested changes :-)
Comment by Keshav Amburay (the.ridikulus.rat) - Wednesday, 26 October 2011, 09:39 GMT
@pressh:

PKGBUILDS

http://dl.dropbox.com/u/9710721/grub2/grub2-1%3A1.99-6.src.tar.gz
http://dl.dropbox.com/u/9710721/grub2/grub2-efi-x86_64-1%3A1.99-3.src.tar.gz

Updated source files

http://dl.dropbox.com/u/9710721/grub2/grub2_r3732.tar.xz
http://dl.dropbox.com/u/9710721/grub2/grub2_extras_ntldr-img_r20.tar.xz
(rest all ver not changed)

This should solve

1. This bug
2. https://bugs.archlinux.org/task/26430
3. https://bugs.archlinux.org/task/26463 (depends on 2)
4. https://bugs.archlinux.org/task/25551 (might be solved - I never encountered this bug)
5. https://bugs.archlinux.org/task/25816 (added note in separate post_install scripts)

About the 915resolution feature requests - seems like upstream is not interested in incorporating the changes. I have not added the patches as that feature is minor and the package can be easily recompiled if needed.

EDIT: I also removed automatic generation of grub.cfg using grub-mkconfig. Added a note in post_install scripts instead. This is due to problem with grub-probe unable to detect rootfs in certain configs (like no-initrd systems etc.). Also did not change the pkgver, simply bumped the pkgrel.

EDIT: Update from r3485 to r3732 .

Few changes: Use /usr/bin and /usr/sbin instead of /bin and /sbin . Temoparily disabled ntldr-img (compile error http://pastebin.com/hg1Qwpbq).
Comment by Ronald van Haren (pressh) - Wednesday, 26 October 2011, 09:43 GMT
Great!

I'll get to it in one of the next few days.
Comment by Keshav Amburay (the.ridikulus.rat) - Monday, 12 December 2011, 07:50 GMT
@pressh: What is the status of this bug and the PKGBUILDs?
Comment by Keshav Amburay (the.ridikulus.rat) - Thursday, 22 December 2011, 14:22 GMT
bump
Comment by Ronald van Haren (pressh) - Monday, 26 December 2011, 11:38 GMT
@Keshav: sorry, been on holiday and had to take care of a load of things. I'm working on it now.
Comment by Keshav Amburay (the.ridikulus.rat) - Tuesday, 27 December 2011, 08:03 GMT
@pressh: Just a note, the new automake 1.11.2 gives error with grub2's Makefiles due to pkglib_DATA being present ( http://git.savannah.gnu.org/cgit/automake.git/commit/?h=maint&id=9ca632642b006ac6b0fc4ce0ae5b34023faa8cbf ). I talked to grub2 devs in irc and they mentioned to temporarily change it to pkgdata_DATA (which is /usr/share) and use --datadir=/usr/lib to work-around the problem. I have added a patch in PKGBUILD to do this, but this is a dirty hack and not a final fix. This need to be taken up with automake devs. This problem does not occur with automake 1.11.1 .

EDIT: Added --disable-werror to ./configure and also updated all the patches.

EDIT: Just wanted to add that this grub2 pkgs update is required for tpowa's next Archboot iso to work (once my patch is applied there - requires grub-mkstandalone script).

Loading...