lkml.org 
[lkml]   [2022]   [May]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH kernel v2] zstd: Fixing mixed module-builtin objects
On Wed, May 11, 2022 at 11:03 AM Alexey Kardashevskiy <aik@ozlabs.ru> wrote:
>
>
>
> On 4/29/22 15:33, Alexey Kardashevskiy wrote:
> > With CONFIG_ZSTD_COMPRESS=m and CONFIG_ZSTD_DECOMPRESS=y we end up in
> > a situation when files from lib/zstd/common/ are compiled once to be
> > linked later for ZSTD_DECOMPRESS (build-in) and ZSTD_COMPRESS (module)
> > even though CFLAGS are different for builtins and modules.
> > So far somehow this was not a problem but enabling LLVM LTO exposes
> > the problem as:
> >
> > ld.lld: error: linking module flags 'Code Model': IDs have conflicting values in 'lib/built-in.a(zstd_common.o at 5868)' and 'ld-temp.o'
> >
> > This particular conflict is caused by KBUILD_CFLAGS=-mcmodel=medium vs.
> > KBUILD_CFLAGS_MODULE=-mcmodel=large , modules use the large model on
> > POWERPC as explained at
> > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/powerpc/Makefile?h=v5.18-rc4#n127
> > but the current use of common files is wrong anyway.
> >
> > This works around the issue by introducing a zstd_common module with
> > shared code.
> >
> > Cc: Masahiro Yamada <masahiroy@kernel.org>
> > Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
>
>
> Ping? Thanks,


Reviewed-by: Masahiro Yamada <masahiroy@kernel.org>







--
Best Regards
Masahiro Yamada

\
 
 \ /
  Last update: 2022-05-11 07:26    [W:0.073 / U:1.560 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site