From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1KE6Tf-0000tY-1Z for mharc-grub-devel@gnu.org; Wed, 02 Jul 2008 13:50:47 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1KE6Td-0000tN-A4 for grub-devel@gnu.org; Wed, 02 Jul 2008 13:50:45 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1KE6Tb-0000t7-BQ for grub-devel@gnu.org; Wed, 02 Jul 2008 13:50:44 -0400 Received: from [199.232.76.173] (port=49693 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KE6Tb-0000t4-8H for grub-devel@gnu.org; Wed, 02 Jul 2008 13:50:43 -0400 Received: from mta-out.inet.fi ([195.156.147.13]:51915 helo=kirsi1.rokki.sonera.fi) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1KE6Ta-0002ZF-4g for grub-devel@gnu.org; Wed, 02 Jul 2008 13:50:42 -0400 Received: from [127.0.0.1] (88.193.32.97) by kirsi1.rokki.sonera.fi (8.5.014) id 483E837C01838C58 for grub-devel@gnu.org; Wed, 2 Jul 2008 20:50:37 +0300 Message-ID: <486BBFFC.3070907@nic.fi> Date: Wed, 02 Jul 2008 20:50:52 +0300 From: =?ISO-8859-1?Q?Vesa_J=E4=E4skel=E4inen?= User-Agent: Thunderbird 2.0.0.14 (Windows/20080421) MIME-Version: 1.0 To: The development of GRUB 2 References: In-Reply-To: X-Enigmail-Version: 0.95.6 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) Subject: Re: [PATCH] LZMA support in i386-pc kernel X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: The development of GRUB 2 List-Id: The development of GRUB 2 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 02 Jul 2008 17:50:45 -0000 Bean wrote: > Hi, > > This patch add support for lzma decompression. The assembly code > lzma_decode.S is manually optimized to reduce size. The result decoder > is tiny, only 416 bytes longer than the lzo version. Not bad. > I also include lzma encode from the LZMA SDK. grub needs to use the > ANSI-C version of encoder, which is only present in the latest 4.58 > beta. I can't find ready to use shared library in most distro. > Including the encoder/decoder has advantages as well. We don't need to > worry about the host os, and lzma encoder/decoder can be used in other > place, like font compression. We can load more complete decoder module after we can load modules and leave more optimized version in boot code. > I use lzma as default, it's still possible to use the old lzo > compression, you just need to add --enable-lzo option when running > configure. > > PS, here are some information about the lzma decoder: > > properties: lc = 3 lp = 0 pb = 2 > memory requirement for the decoder: 15980 bytes Can we probe for best values and then use always the best? Perhaps embed them as constants to boot code? > Result of > ./grub-mkimage -o core.img biosdisk pc ext2 lvm raid > > lzma version: 27,776 bytes > lzo version: 32,768 bytes Not bad. Not bad at all.