On Thu, Sep 01, 2022 at 09:25:39AM -0300, Jason Gunthorpe wrote: > On Wed, Aug 31, 2022 at 12:30:48PM -0400, Tom Talpey wrote: > > The SoftiWARP Kconfig is missing "select" for CRYPTO and CRYPTO_CRC32C. > > > > In addition, it improperly "depends on" LIBCRC32C, this should be a > > "select", similar to net/sctp and others. As a dependency, SIW fails > > to appear in generic configurations. > > > > Signed-off-by: Tom Talpey <tom@xxxxxxxxxx> > > --- > > drivers/infiniband/sw/siw/Kconfig | 5 ++++- > > 1 file changed, 4 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/infiniband/sw/siw/Kconfig > > b/drivers/infiniband/sw/siw/Kconfig > > index 1b5105cbabae..81b70a3eeb87 100644 > > --- a/drivers/infiniband/sw/siw/Kconfig > > +++ b/drivers/infiniband/sw/siw/Kconfig > > @@ -1,7 +1,10 @@ > > config RDMA_SIW > > tristate "Software RDMA over TCP/IP (iWARP) driver" > > - depends on INET && INFINIBAND && LIBCRC32C > > + depends on INET && INFINIBAND > > depends on INFINIBAND_VIRT_DMA > > + select LIBCRC32C > > + select CRYPTO > > + select CRYPTO_CRC32C > > This is against the kconfig instructions Documentation/kbuild/kconfig-language.rst: > > Note: > select should be used with care. select will force > a symbol to a value without visiting the dependencies. > By abusing select you are able to select a symbol FOO even > if FOO depends on BAR that is not set. > In general use select only for non-visible symbols > (no prompts anywhere) and for symbols with no dependencies. > That will limit the usefulness but on the other hand avoid > the illegal configurations all over. > > None of them meet that criteria even though other places do abuse > select like this as well. > > It looked fine to me the way it was, you are supposed to have to > select libcrc32c manually to make siw appear, and it already brings in > the other symbols. He took his snippet from RXE. Thanks > > Jason