RE: [EXT] Re: [PATCH] crypto: octeontx2 - Add dependency on NET_VENDOR_MARVELL

2021-01-31 Thread Srujana Challa
> Hi Srujana,
> 
> On Fri, Jan 29, 2021 at 6:53 AM Herbert Xu 
> wrote:
> > On Mon, Jan 25, 2021 at 09:41:12AM -0800, Randy Dunlap wrote:
> > > on x86_64:
> > >
> > > ld: drivers/crypto/marvell/octeontx2/otx2_cptpf_main.o: in function
> `cptpf_flr_wq_handler':
> > > otx2_cptpf_main.c:(.text+0x2b): undefined reference to
> `otx2_mbox_alloc_msg_rsp'
> >
> > Thanks for the report.  The issue is that the crypto driver depends on
> > code that sits under net so if that option is off then you'll end up
> > with these errors.
> >
> > ---8<---
> > The crypto octeontx2 driver depends on the mbox code in the network
> > tree.  It tries to select the MBOX Kconfig option but that option
> > itself depends on many other options which are not selected, e.g.,
> > CONFIG_NET_VENDOR_MARVELL.  It would be inappropriate to select them
> > all as randomly prompting the user for network options which would
> > oterhwise be disabled just because a crypto driver has been enabled
> > makes no sense.
> >
> > This patch fixes this by adding a dependency on NET_VENDOR_MARVELL.
> > This makes the crypto driver invisible if the network option is off.
> >
> > If the crypto driver must be visible even without the network stack
> > then the shared mbox code should be moved out of drivers/net.
> >
> > Reported-by: Randy Dunlap 
> > Reported-by: kernel test robot 
> > Fixes: 5e8ce8334734 ("crypto: marvell - add Marvell OcteonTX2 CPT...")
> > Signed-off-by: Herbert Xu 
> >
> > diff --git a/drivers/crypto/marvell/Kconfig
> > b/drivers/crypto/marvell/Kconfig index 2efbd79180ce..a188ad1fadd3
> > 100644
> > --- a/drivers/crypto/marvell/Kconfig
> > +++ b/drivers/crypto/marvell/Kconfig
> > @@ -41,6 +41,7 @@ config CRYPTO_DEV_OCTEONTX2_CPT
> > depends on ARM64 || COMPILE_TEST
> 
> Why the dependency on ARM64? Perhaps this should be a dependency on
> ARCH_THUNDER instead?
This driver depends on ARM64 because the silicon is ARM64 based and for
operations like lmtst
([PATCH v10,net-next,1/3] octeontx2-pf: move lmt flush to include/linux/soc)
we use arm64 assembly instructions.

> I see this driver is a PCI driver. Can the PCI device be present on a generic
> PCI(e) expansion card, or is it always embedded in an Octeon SoC?
> 
> Thanks!
>
This PCI device is present only on OcteonTx2 SoC and not as a independent
PCIe endpoint.
  
> > depends on PCI_MSI && 64BIT
> > depends on CRYPTO_LIB_AES
> > +   depends on NET_VENDOR_MARVELL
> > select OCTEONTX2_MBOX
> > select CRYPTO_DEV_MARVELL
> > select CRYPTO_SKCIPHER
> > --
> > Email: Herbert Xu  Home Page:
> > https://urldefense.proofpoint.com/v2/url?u=http-3A__gondor.apana.org.a
> > u_-
> 7Eherbert_=DwIBaQ=nKjWec2b6R0mOyPaz7xtfQ=Fj4OoD5hcKFpANh
> TWdwQ
> > zjT1Jpf7veC5263T47JVpnc=dRYGbkafMlmqjN6rLZeFXL0zOADTNp6sYkm-
> lHW4_cA&
> > s=sbjI8As-bTTHmNW8JKq01AP2qaDCAWuVmHAOVz7tEGI=
> > PGP Key:
> > https://urldefense.proofpoint.com/v2/url?u=http-3A__gondor.apana.org.a
> > u_-
> 7Eherbert_pubkey.txt=DwIBaQ=nKjWec2b6R0mOyPaz7xtfQ=Fj4OoD
> 5hcK
> >
> FpANhTWdwQzjT1Jpf7veC5263T47JVpnc=dRYGbkafMlmqjN6rLZeFXL0zOA
> DTNp6sYk
> > m-lHW4_cA=Qv1MXxxyejkh_qp7LaT0xDiOL1kNRvo4BP4Lz1gQMJI=
> 
> Gr{oetje,eeting}s,
> 
> Geert
> 
> --
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-
> m68k.org
> 
> In personal conversations with technical people, I call myself a hacker. But
> when I'm talking to journalists I just say "programmer" or something like
> that.
> -- Linus Torvalds


Re: [PATCH] crypto: octeontx2 - Add dependency on NET_VENDOR_MARVELL

2021-01-28 Thread Randy Dunlap
On 1/28/21 9:48 PM, Herbert Xu wrote:
> On Mon, Jan 25, 2021 at 09:41:12AM -0800, Randy Dunlap wrote:
>> on x86_64:
>>
>> ld: drivers/crypto/marvell/octeontx2/otx2_cptpf_main.o: in function 
>> `cptpf_flr_wq_handler':
>> otx2_cptpf_main.c:(.text+0x2b): undefined reference to 
>> `otx2_mbox_alloc_msg_rsp'
> 
> Thanks for the report.  The issue is that the crypto driver depends
> on code that sits under net so if that option is off then you'll end
> up with these errors.
> 
> ---8<---
> The crypto octeontx2 driver depends on the mbox code in the network
> tree.  It tries to select the MBOX Kconfig option but that option
> itself depends on many other options which are not selected, e.g.,
> CONFIG_NET_VENDOR_MARVELL.  It would be inappropriate to select them
> all as randomly prompting the user for network options which would
> oterhwise be disabled just because a crypto driver has been enabled
> makes no sense.
> 
> This patch fixes this by adding a dependency on NET_VENDOR_MARVELL.
> This makes the crypto driver invisible if the network option is off.
> 
> If the crypto driver must be visible even without the network stack
> then the shared mbox code should be moved out of drivers/net.
> 
> Reported-by: Randy Dunlap 
> Reported-by: kernel test robot 
> Fixes: 5e8ce8334734 ("crypto: marvell - add Marvell OcteonTX2 CPT...")
> Signed-off-by: Herbert Xu 

Thanks, Herbert.

Acked-by: Randy Dunlap  # build-tested


> diff --git a/drivers/crypto/marvell/Kconfig b/drivers/crypto/marvell/Kconfig
> index 2efbd79180ce..a188ad1fadd3 100644
> --- a/drivers/crypto/marvell/Kconfig
> +++ b/drivers/crypto/marvell/Kconfig
> @@ -41,6 +41,7 @@ config CRYPTO_DEV_OCTEONTX2_CPT
>   depends on ARM64 || COMPILE_TEST
>   depends on PCI_MSI && 64BIT
>   depends on CRYPTO_LIB_AES
> + depends on NET_VENDOR_MARVELL
>   select OCTEONTX2_MBOX
>   select CRYPTO_DEV_MARVELL
>   select CRYPTO_SKCIPHER
> 


-- 
~Randy



[PATCH] crypto: octeontx2 - Add dependency on NET_VENDOR_MARVELL

2021-01-28 Thread Herbert Xu
On Mon, Jan 25, 2021 at 09:41:12AM -0800, Randy Dunlap wrote:
> on x86_64:
> 
> ld: drivers/crypto/marvell/octeontx2/otx2_cptpf_main.o: in function 
> `cptpf_flr_wq_handler':
> otx2_cptpf_main.c:(.text+0x2b): undefined reference to 
> `otx2_mbox_alloc_msg_rsp'

Thanks for the report.  The issue is that the crypto driver depends
on code that sits under net so if that option is off then you'll end
up with these errors.

---8<---
The crypto octeontx2 driver depends on the mbox code in the network
tree.  It tries to select the MBOX Kconfig option but that option
itself depends on many other options which are not selected, e.g.,
CONFIG_NET_VENDOR_MARVELL.  It would be inappropriate to select them
all as randomly prompting the user for network options which would
oterhwise be disabled just because a crypto driver has been enabled
makes no sense.

This patch fixes this by adding a dependency on NET_VENDOR_MARVELL.
This makes the crypto driver invisible if the network option is off.

If the crypto driver must be visible even without the network stack
then the shared mbox code should be moved out of drivers/net.

Reported-by: Randy Dunlap 
Reported-by: kernel test robot 
Fixes: 5e8ce8334734 ("crypto: marvell - add Marvell OcteonTX2 CPT...")
Signed-off-by: Herbert Xu 

diff --git a/drivers/crypto/marvell/Kconfig b/drivers/crypto/marvell/Kconfig
index 2efbd79180ce..a188ad1fadd3 100644
--- a/drivers/crypto/marvell/Kconfig
+++ b/drivers/crypto/marvell/Kconfig
@@ -41,6 +41,7 @@ config CRYPTO_DEV_OCTEONTX2_CPT
depends on ARM64 || COMPILE_TEST
depends on PCI_MSI && 64BIT
depends on CRYPTO_LIB_AES
+   depends on NET_VENDOR_MARVELL
select OCTEONTX2_MBOX
select CRYPTO_DEV_MARVELL
select CRYPTO_SKCIPHER
-- 
Email: Herbert Xu 
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt