Hello, I've implemented support for LZO in grub, this includes: - import of minilzo library (from [1]) - support for LZO (de)compression in btrfs (compress=lzo mount option) - lzopio - for reading lzop compressed files
Some comments: - with this code one is able to boot from btrfs partition that was mounted with compress=lzo, also did some tests with grub-fstest (crc, testload) on some various files, seems to be working fine, - lzopio works ok with grub-fstest (crc, testload), also able to load modules compressed with lzop, but compressing all modules and doing grub-install --modules=lzopio fails to boot, still need to investigate that - lzopio have room for speed optimisation i.e. decompressing directly to target buffer when possible, currently there is always memcpy from temp buffer - tested on 32bit x86 only, I'll try to do some tests on different platforms as well (on QEMU) but brave people could test it on some real hardware :) - there are also some addons which could be used by other grub code as well: * suport for adler32 checksum (for lzop) * helper functions for easier unaligned access Last but not least: code is available at [2]. Comments and testing are welcome :) [1] http://www.oberhumer.com/opensource/lzo/#minilzo [2] http://bzr.savannah.gnu.org/r/grub/people/janc/lzo/ -- Szymon K. Janc [email protected] // GG: 1383435 _______________________________________________ Grub-devel mailing list [email protected] https://lists.gnu.org/mailman/listinfo/grub-devel
