• aboot unzip "unknown compression method" on recent (post 6.4) kernels?

    From Alex Winbow@21:1/5 to All on Sat Nov 23 09:40:01 2024
    Hi,

        I have been unable to boot kernels after 6.4; aboot fails with
    "unzip: unknown compression method". Specifically:

            - vmlinuz-6.4.0-1-alpha-generic --> works
            - vmlinuz-6.6.15-alpha-generic --> fails
            - vmlinuz-6.11.6-alpha-generic --> fails

        This is on a XP1000 (EV67/Tsunami/Monet). aboot is
    1.0~pre20200212-1. FWIW, "gzip -l --verbose" says all kernels are
    compressed with the same method:

    $gzip -l --verbose vmlinuz-6*
    method  crc     date  time           compressed uncompressed  ratio
    uncompressed_name
    defla 2ad47e09 Nov  4 13:57             7010635 24244720  71.1% vmlinuz-6.11.6-alpha-generic
    defla 148fa7ac Jul 22 23:53             6814008 23614088  71.1% vmlinuz-6.4.0-1-alpha-generic
    defla 30836626 Feb  4 12:28             7045662 24145360  70.8% vmlinuz-6.6.15-alpha-generic

        Did something more subtle change in compression in between kernel
    6.4 and 6.6?

                        Thanks,

                        -Alex

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From John Paul Adrian Glaubitz@21:1/5 to Alex Winbow on Sat Nov 23 18:40:01 2024
    Hi Alex,

    On Fri, 2024-11-22 at 23:56 -0800, Alex Winbow wrote:
        I have been unable to boot kernels after 6.4; aboot fails with "unzip: unknown compression method". Specifically:

            - vmlinuz-6.4.0-1-alpha-generic --> works
            - vmlinuz-6.6.15-alpha-generic --> fails
            - vmlinuz-6.11.6-alpha-generic --> fails

        This is on a XP1000 (EV67/Tsunami/Monet). aboot is 1.0~pre20200212-1. FWIW, "gzip -l --verbose" says all kernels are
    compressed with the same method:

    $gzip -l --verbose vmlinuz-6*
    method  crc     date  time           compressed uncompressed  ratio
    uncompressed_name
    defla 2ad47e09 Nov  4 13:57             7010635 24244720  71.1%
    vmlinuz-6.11.6-alpha-generic
    defla 148fa7ac Jul 22 23:53             6814008 23614088  71.1% vmlinuz-6.4.0-1-alpha-generic
    defla 30836626 Feb  4 12:28             7045662 24145360  70.8%
    vmlinuz-6.6.15-alpha-generic

        Did something more subtle change in compression in between kernel 6.4 and 6.6?

    Maybe the kernel has become just too large for aboot to decompress it?

    I am planning to work on aboot in the near future and bring the package
    back into shape. I will also look into this particular issue then, so
    thanks for reporting it.

    Adrian

    --
    .''`. John Paul Adrian Glaubitz
    : :' : Debian Developer
    `. `' Physicist
    `- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Michael Cree@21:1/5 to Alex Winbow on Sun Nov 24 00:30:01 2024
    On Fri, Nov 22, 2024 at 11:56:51PM -0800, Alex Winbow wrote:
        I have been unable to boot kernels after 6.4; aboot fails with "unzip: unknown compression method". Specifically:

            - vmlinuz-6.4.0-1-alpha-generic --> works
            - vmlinuz-6.6.15-alpha-generic --> fails
            - vmlinuz-6.11.6-alpha-generic --> fails

        This is on a XP1000 (EV67/Tsunami/Monet). aboot is 1.0~pre20200212-1.

    Interesting, my xp1000 boots vmlinuz-6.11.6-alpha-generic.

    Are you sure that the newest aboot version is written to the boot
    block of your boot disk? You should be able to see the version as it
    boots from SRM into aboot. If it isn't you will need to use

    swriteboot

    to write the aboot image (/boot/bootlx) to the boot sectors of the
    boot disk.

    Cheers,
    Michael.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Alex Winbow@21:1/5 to Michael Cree on Sun Nov 24 02:20:01 2024
    Hi, Michael,

        I'm not sure. From SRM, "boot -fl i" reports that aboot is 1.0~pre20040408.

        Meanwhile, aboot is 1.0~pre20200212-1, but interestingly does not contain /boot/bootlx.

        /boot/bootlx is in aboot-base, which is 1.0~pre20040408-4, which
    also appears to be the newest version in sid.

        Were there updates to aboot proper (ie, /boot/bootlx) upstream from 1.0~pre20040408 --> 1.0~pre20200212 relevant to recent kernel builds,
    which are somehow not propagated into aboot-base in Debian? (If so, how
    do I obtain an updated /boot/bootlx file?)

                    Thanks,

                    -Alex


    On 11/23/24 2:44 PM, Michael Cree wrote:
    On Fri, Nov 22, 2024 at 11:56:51PM -0800, Alex Winbow wrote:
        I have been unable to boot kernels after 6.4; aboot fails with "unzip:
    unknown compression method". Specifically:

            - vmlinuz-6.4.0-1-alpha-generic --> works
            - vmlinuz-6.6.15-alpha-generic --> fails
            - vmlinuz-6.11.6-alpha-generic --> fails

        This is on a XP1000 (EV67/Tsunami/Monet). aboot is 1.0~pre20200212-1.
    Interesting, my xp1000 boots vmlinuz-6.11.6-alpha-generic.

    Are you sure that the newest aboot version is written to the boot
    block of your boot disk? You should be able to see the version as it
    boots from SRM into aboot. If it isn't you will need to use

    swriteboot

    to write the aboot image (/boot/bootlx) to the boot sectors of the
    boot disk.

    Cheers,
    Michael.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Michael Cree@21:1/5 to Alex Winbow on Sun Nov 24 09:40:01 2024
    On Sat, Nov 23, 2024 at 04:58:37PM -0800, Alex Winbow wrote:
        I'm not sure. From SRM, "boot -fl i" reports that aboot is 1.0~pre20040408.

        Meanwhile, aboot is 1.0~pre20200212-1, but interestingly does not
    contain /boot/bootlx.

        /boot/bootlx is in aboot-base, which is 1.0~pre20040408-4, which also appears to be the newest version in sid.

    Oh, you are right. I hadn't noticed that aboot-base was a much
    older version.

    So it is interesting that my XP1000 boots the newest kernels,
    but yours doesn't. There is a possibility I updated aboot from
    upstream (mattst88 github repo) but I can't remember for sure.

    Cheers,
    Michael.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Alex Winbow@21:1/5 to Michael Cree on Sun Nov 24 21:20:01 2024
    Following up on your suggestion, I downloaded the mattst88 github
    version of aboot, built it successfully (once realizing the need for libext2fs-dev!), swriteboot'ed it, and ... no difference. Same unzip error.

    Note that the upstream version has files that were updated ~3 years ago (consistent with being pre20200212), but I found that aboot's
    hello-world string still says 1.0_pre20040408, so your boot console
    won't tell you which version you actually have written to the partition.

        See: include/config.h:#define ABOOT_VERSION "1.0_pre20040408"

    https://github.com/mattst88/aboot/blob/master/include/config.h

    I wasn't able to build the debian version from the "aboot" source
    package. "debian/rules build" seems to fail at the linking stage due to multiple definitions. Errors below.

        Thanks,
        -Alex


    errors from "debian/rules build" of aboot:
    ld -static -N -Taboot.lds --relax head.o aboot.o cons.o utils.o
    zip/misc.o zip/unzip.o zip/inflate.o disk.o fs/ext2.o fs/ufs.o
    fs/dummy.o fs/iso.o -o aboot lib/libaboot.a
    ld: cons.o:./include/utils.h:22: multiple definition of `free_mem_ptr'; aboot.o:./include/utils.h:22: first defined here
    ld: disabling relaxation; it will not work with multiple definitions
    ld: utils.o:././utils.c:13: multiple definition of `free_mem_ptr'; aboot.o:./include/utils.h:22: first defined here
    ld: zip/misc.o:./include/utils.h:22: multiple definition of
    `free_mem_ptr'; aboot.o:./include/utils.h:22: first defined here
    ld: zip/unzip.o:./zip/gzip.h:34: multiple definition of `inbuf'; zip/misc.o:./zip/gzip.h:34: first defined here
    ld: zip/unzip.o:./zip/gzip.h:35: multiple definition of `window'; zip/misc.o:./zip/gzip.h:35: first defined here
    ld: zip/inflate.o:./zip/gzip.h:34: multiple definition of `inbuf'; zip/misc.o:./zip/gzip.h:34: first defined here
    ld: zip/inflate.o:./zip/gzip.h:35: multiple definition of `window'; zip/misc.o:./zip/gzip.h:35: first defined here
    ld: disk.o:./include/utils.h:22: multiple definition of `free_mem_ptr'; aboot.o:./include/utils.h:22: first defined here
    ld: disk.o:./include/bootfs.h:22: multiple definition of `ext2fs'; zip/misc.o:./include/bootfs.h:22: first defined here
    ld: fs/ext2.o:./include/bootfs.h:22: multiple definition of `ext2fs'; zip/misc.o:./include/bootfs.h:22: first defined here
    ld: fs/ext2.o:./include/utils.h:22: multiple definition of
    `free_mem_ptr'; aboot.o:./include/utils.h:22: first defined here
    ld: fs/ufs.o:./include/utils.h:22: multiple definition of
    `free_mem_ptr'; aboot.o:./include/utils.h:22: first defined here
    ld: fs/ufs.o:./include/bootfs.h:22: multiple definition of `ext2fs'; zip/misc.o:./include/bootfs.h:22: first defined here
    ld: fs/dummy.o:./include/utils.h:22: multiple definition of
    `free_mem_ptr'; aboot.o:./include/utils.h:22: first defined here
    ld: fs/dummy.o:./include/bootfs.h:22: multiple definition of `ext2fs'; zip/misc.o:./include/bootfs.h:22: first defined here
    ld: fs/iso.o:./include/bootfs.h:22: multiple definition of `ext2fs'; zip/misc.o:./include/bootfs.h:22: first defined here
    ld: lib/libaboot.a(isolib.o):./lib/../include/utils.h:22: multiple
    definition of `free_mem_ptr'; aboot.o:./include/utils.h:22: first
    defined here
    ld: warning: __remlu.o: missing .note.GNU-stack section implies
    executable stack
    ld: NOTE: This behaviour is deprecated and will be removed in a future
    version of the linker
    ld: warning: aboot has a LOAD segment with RWX permissions



    On 11/24/24 12:30 AM, Michael Cree wrote:
    On Sat, Nov 23, 2024 at 04:58:37PM -0800, Alex Winbow wrote:
        I'm not sure. From SRM, "boot -fl i" reports that aboot is
    1.0~pre20040408.

        Meanwhile, aboot is 1.0~pre20200212-1, but interestingly does not
    contain /boot/bootlx.

        /boot/bootlx is in aboot-base, which is 1.0~pre20040408-4, which also
    appears to be the newest version in sid.
    Oh, you are right. I hadn't noticed that aboot-base was a much
    older version.

    So it is interesting that my XP1000 boots the newest kernels,
    but yours doesn't. There is a possibility I updated aboot from
    upstream (mattst88 github repo) but I can't remember for sure.

    Cheers,
    Michael.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)