lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Fri, 22 Sep 2023 19:41:36 +0900
From:   Masahiro Yamada <masahiroy@...nel.org>
To:     Martin Nybo Andersen <tweek@...ek.dk>
Cc:     Tor Vic <torvic9@...lbox.org>,
        Nathan Chancellor <nathan@...nel.org>,
        Nick Desaulniers <ndesaulniers@...gle.com>,
        Nicolas Schier <nicolas@...sle.eu>,
        Nick Terrell <terrelln@...com>, linux-kbuild@...r.kernel.org,
        linux-kernel@...r.kernel.org,
        Lucas De Marchi <lucas.de.marchi@...il.com>
Subject: Re: [PATCH] Use CRC32 and a 1MiB dictionary for XZ compressed modules

On Fri, Sep 22, 2023 at 5:52 PM Martin Nybo Andersen <tweek@...ek.dk> wrote:
>
> On Fri, 22 Sep 2023, Tor Vic wrote:
>
> >>
> >> Hello?
> >
> > Hello,
>
> :)
>
> >> Anyone?
> >>
> >> Best regards,
> >> - Martin
> >>
> >> On Fri, 15 Sep 2023, Martin Nybo Andersen wrote:
> >>
> >>> Kmod is now using the kernel decompressor which doesn't handle CRC64
> >>> and dictionaries larger than 1MiB.
> >>>
> >>> Fixes: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1050582
> >>> Signed-off-by: Martin Nybo Andersen <tweek@...ek.dk>
> >>> ---
> >>> scripts/Makefile.modinst | 2 +-
> >>> 1 file changed, 1 insertion(+), 1 deletion(-)
> >>>
> >>> diff --git a/scripts/Makefile.modinst b/scripts/Makefile.modinst
> >>> index c59cc57286ba..ffbafbd3aeea 100644
> >>> --- a/scripts/Makefile.modinst
> >>> +++ b/scripts/Makefile.modinst
> >>> @@ -144,7 +144,7 @@ endif
> >>> quiet_cmd_gzip = GZIP    $@
> >>>       cmd_gzip = $(KGZIP) -n -f $<
> >>> quiet_cmd_xz = XZ      $@
> >>> -      cmd_xz = $(XZ) --lzma2=dict=2MiB -f $<
> >>> +      cmd_xz = $(XZ) --check=crc32 --lzma2=dict=1MiB -f $<
> >
> > I wonder whether it should be guarded with
> >    ifdef CONFIG_MODULE_DECOMPRESS
> >
> > But on the other hand, the difference between 1M and 2M is likely very small
> > in terms of compression ratio.
>
> That would work, since kmod decompress the modules in userspace if
> CONFIG_MODULE_DECOMPRESS if off.
>
> What I'm aiming for is just that the kernel should be able to decompress
> its own modules, when it advertises it.


Hello, sorry for the delay.

I am OK with picking the patch to my tree.


I think we can use --check=crc32 --lzma2=dict=1MiB
unconditionally.

(But, if the in-kernel decompressor is improved
to understand CRC64 in the future, we can loosen
this restriction again.)



Just small change requests.

Please do not use the Fixes tag to point at the Debian bug tracker.


Instead, you can do

Link: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1050582

   or

Closes: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1050582



Also, mention that this change happened in

kmod commit 09c9f8c5df04 ("libkmod: Use kernel decompression when available")

in the commit description might be helpful.




I added Lukas to CC.
He is the author of the change on kmod side.






> Cheers,
> Martin
>
> > Cheers,
> > Tor Vic
> >
> >>> quiet_cmd_zstd = ZSTD    $@
> >>>       cmd_zstd = $(ZSTD) -T0 --rm -f -q $<
> >>>
> >>> --
> >>> 2.40.1
> >>>
> >>>
> >>
> >
> >



-- 
Best Regards
Masahiro Yamada

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ