Re: [PATCH 13/18] crypto: octeontx2: fix objects shared between several modules

From: Masahiro Yamada
Date: Wed Nov 23 2022 - 11:28:29 EST


On Sun, Nov 20, 2022 at 8:09 AM Alexander Lobakin <alobakin@xxxxx> wrote:
>
> cn10k_cpt.o, otx2_cptlf.o and otx2_cpt_mbox_common.o are linked
> into both rvu_cptpf and rvu_cptvf modules:
>
> > scripts/Makefile.build:252: ./drivers/crypto/marvell/octeontx2/Makefile:
> > cn10k_cpt.o is added to multiple modules: rvu_cptpf rvu_cptvf
> > scripts/Makefile.build:252: ./drivers/crypto/marvell/octeontx2/Makefile:
> > otx2_cptlf.o is added to multiple modules: rvu_cptpf rvu_cptvf
> > scripts/Makefile.build:252: ./drivers/crypto/marvell/octeontx2/Makefile:
> > otx2_cpt_mbox_common.o is added to multiple modules: rvu_cptpf rvu_cptvf
>
> Despite they're build under the same Kconfig option
> (CONFIG_CRYPTO_DEV_OCTEONTX2_CPT), it's better do link the common
> code into a standalone module and export the shared functions. Under
> certain circumstances, this can lead to the same situation as fixed
> by commit 637a642f5ca5 ("zstd: Fixing mixed module-builtin objects").
> Plus, those three common object files are relatively big to duplicate
> them several times.
>
> Introduce the new module, rvu_cptcommon, to provide the common
> functions to both modules.
>
> Fixes: 19d8e8c7be15 ("crypto: octeontx2 - add virtual function driver support")
> Suggested-by: Masahiro Yamada <masahiroy@xxxxxxxxxx>
> Signed-off-by: Alexander Lobakin <alobakin@xxxxx>
> ---



Reviewed-by: Masahiro Yamada <masahiroy@xxxxxxxxxx>




--
Best Regards
Masahiro Yamada