Message ID | 20170904152848.3471-1-yuval.shaia@oracle.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
2017-09-04 17:28 GMT+02:00 Yuval Shaia <yuval.shaia@oracle.com>: > No reason to have dependency on PCI for the entire infiniband stack so > move it to KConfig of only the drivers that actually using PCI. > > Signed-off-by: Yuval Shaia <yuval.shaia@oracle.com> > --- > v0 -> v1: > * As suggested by Thomas Bogendoerfer: > * Remove unneeded header inclusion from ipoib > * Remove PCI dependency from ipoib's Kconfig > --- > drivers/infiniband/Kconfig | 1 - > drivers/infiniband/hw/cxgb3/Kconfig | 1 + > drivers/infiniband/hw/cxgb4/Kconfig | 1 + > drivers/infiniband/hw/hfi1/Kconfig | 1 + > drivers/infiniband/hw/i40iw/Kconfig | 1 + > drivers/infiniband/hw/qedr/Kconfig | 1 + > drivers/infiniband/hw/qib/Kconfig | 1 + > drivers/infiniband/sw/rdmavt/Kconfig | 1 + > drivers/infiniband/ulp/ipoib/ipoib_main.c | 1 - > 9 files changed, 7 insertions(+), 2 deletions(-) > > diff --git a/drivers/infiniband/Kconfig b/drivers/infiniband/Kconfig > index 234fe01904e7..568088a9298c 100644 > --- a/drivers/infiniband/Kconfig > +++ b/drivers/infiniband/Kconfig > @@ -1,6 +1,5 @@ > menuconfig INFINIBAND > tristate "InfiniBand support" > - depends on PCI || BROKEN > depends on HAS_IOMEM > depends on NET > depends on INET > diff --git a/drivers/infiniband/hw/cxgb3/Kconfig b/drivers/infiniband/hw/cxgb3/Kconfig > index 2b6352b85485..bd32926afa77 100644 > --- a/drivers/infiniband/hw/cxgb3/Kconfig > +++ b/drivers/infiniband/hw/cxgb3/Kconfig > @@ -1,5 +1,6 @@ > config INFINIBAND_CXGB3 > tristate "Chelsio RDMA Driver" > + depends on PCI || BROKEN > depends on CHELSIO_T3 && INET > select GENERIC_ALLOCATOR > ---help--- > diff --git a/drivers/infiniband/hw/cxgb4/Kconfig b/drivers/infiniband/hw/cxgb4/Kconfig > index afe8b28e0878..7910fdd88619 100644 > --- a/drivers/infiniband/hw/cxgb4/Kconfig > +++ b/drivers/infiniband/hw/cxgb4/Kconfig > @@ -1,6 +1,7 @@ > config INFINIBAND_CXGB4 > tristate "Chelsio T4/T5 RDMA Driver" > depends on CHELSIO_T4 && INET && (IPV6 || IPV6=n) > + depends on PCI || BROKEN > select CHELSIO_LIB > select GENERIC_ALLOCATOR > ---help--- > diff --git a/drivers/infiniband/hw/hfi1/Kconfig b/drivers/infiniband/hw/hfi1/Kconfig > index f6ea0881765a..5072d083f53b 100644 > --- a/drivers/infiniband/hw/hfi1/Kconfig > +++ b/drivers/infiniband/hw/hfi1/Kconfig > @@ -1,6 +1,7 @@ > config INFINIBAND_HFI1 > tristate "Intel OPA Gen1 support" > depends on X86_64 && INFINIBAND_RDMAVT && I2C > + depends on PCI || BROKEN > select MMU_NOTIFIER > select CRC32 > select I2C_ALGOBIT > diff --git a/drivers/infiniband/hw/i40iw/Kconfig b/drivers/infiniband/hw/i40iw/Kconfig > index 6e7d27a14061..9cfef1370445 100644 > --- a/drivers/infiniband/hw/i40iw/Kconfig > +++ b/drivers/infiniband/hw/i40iw/Kconfig > @@ -1,6 +1,7 @@ > config INFINIBAND_I40IW > tristate "Intel(R) Ethernet X722 iWARP Driver" > depends on INET && I40E > + depends on PCI || BROKEN > select GENERIC_ALLOCATOR > ---help--- > Intel(R) Ethernet X722 iWARP Driver > diff --git a/drivers/infiniband/hw/qedr/Kconfig b/drivers/infiniband/hw/qedr/Kconfig > index 6c9f3923e838..8db2966f52c2 100644 > --- a/drivers/infiniband/hw/qedr/Kconfig > +++ b/drivers/infiniband/hw/qedr/Kconfig > @@ -1,6 +1,7 @@ > config INFINIBAND_QEDR > tristate "QLogic RoCE driver" > depends on 64BIT && QEDE > + depends on PCI || BROKEN > select QED_LL2 > select QED_RDMA > ---help--- > diff --git a/drivers/infiniband/hw/qib/Kconfig b/drivers/infiniband/hw/qib/Kconfig > index e0fdb9201423..522a6fcaa9d8 100644 > --- a/drivers/infiniband/hw/qib/Kconfig > +++ b/drivers/infiniband/hw/qib/Kconfig > @@ -1,6 +1,7 @@ > config INFINIBAND_QIB > tristate "Intel PCIe HCA support" > depends on 64BIT && INFINIBAND_RDMAVT > + depends on PCI || BROKEN > ---help--- > This is a low-level driver for Intel PCIe QLE InfiniBand host > channel adapters. This driver does not support the Intel > diff --git a/drivers/infiniband/sw/rdmavt/Kconfig b/drivers/infiniband/sw/rdmavt/Kconfig > index fdd001ce13d8..605bfb1da9df 100644 > --- a/drivers/infiniband/sw/rdmavt/Kconfig > +++ b/drivers/infiniband/sw/rdmavt/Kconfig > @@ -1,6 +1,7 @@ > config INFINIBAND_RDMAVT > tristate "RDMA verbs transport library" > depends on 64BIT > + depends on PCI || BROKEN > select DMA_VIRT_OPS > ---help--- > This is a common software verbs provider for RDMA networks. does the RDMAVT really depends on PCI, to me looks not, we can also remove the included in drivers/infiniband/sw/rdmavt/vt.h? Other than this, I think the change make sense to me! Cheers, Jack > diff --git a/drivers/infiniband/ulp/ipoib/ipoib_main.c b/drivers/infiniband/ulp/ipoib/ipoib_main.c > index 6c77df34869d..3fc3b7b20297 100644 > --- a/drivers/infiniband/ulp/ipoib/ipoib_main.c > +++ b/drivers/infiniband/ulp/ipoib/ipoib_main.c > @@ -51,7 +51,6 @@ > #include <net/addrconf.h> > #include <linux/inetdevice.h> > #include <rdma/ib_cache.h> > -#include <linux/pci.h> > > #define DRV_VERSION "1.0.0" > > -- > 2.13.5 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-rdma" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Mon, Sep 04, 2017 at 05:48:29PM +0200, Jack Wang wrote: > 2017-09-04 17:28 GMT+02:00 Yuval Shaia <yuval.shaia@oracle.com>: > > No reason to have dependency on PCI for the entire infiniband stack so > > move it to KConfig of only the drivers that actually using PCI. > > > > Signed-off-by: Yuval Shaia <yuval.shaia@oracle.com> > > --- > > v0 -> v1: > > * As suggested by Thomas Bogendoerfer: > > * Remove unneeded header inclusion from ipoib > > * Remove PCI dependency from ipoib's Kconfig > > --- > > drivers/infiniband/Kconfig | 1 - > > drivers/infiniband/hw/cxgb3/Kconfig | 1 + > > drivers/infiniband/hw/cxgb4/Kconfig | 1 + > > drivers/infiniband/hw/hfi1/Kconfig | 1 + > > drivers/infiniband/hw/i40iw/Kconfig | 1 + > > drivers/infiniband/hw/qedr/Kconfig | 1 + > > drivers/infiniband/hw/qib/Kconfig | 1 + > > drivers/infiniband/sw/rdmavt/Kconfig | 1 + > > drivers/infiniband/ulp/ipoib/ipoib_main.c | 1 - > > 9 files changed, 7 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/infiniband/Kconfig b/drivers/infiniband/Kconfig > > index 234fe01904e7..568088a9298c 100644 > > --- a/drivers/infiniband/Kconfig > > +++ b/drivers/infiniband/Kconfig > > @@ -1,6 +1,5 @@ > > menuconfig INFINIBAND > > tristate "InfiniBand support" > > - depends on PCI || BROKEN > > depends on HAS_IOMEM > > depends on NET > > depends on INET > > diff --git a/drivers/infiniband/hw/cxgb3/Kconfig b/drivers/infiniband/hw/cxgb3/Kconfig > > index 2b6352b85485..bd32926afa77 100644 > > --- a/drivers/infiniband/hw/cxgb3/Kconfig > > +++ b/drivers/infiniband/hw/cxgb3/Kconfig > > @@ -1,5 +1,6 @@ > > config INFINIBAND_CXGB3 > > tristate "Chelsio RDMA Driver" > > + depends on PCI || BROKEN > > depends on CHELSIO_T3 && INET > > select GENERIC_ALLOCATOR > > ---help--- > > diff --git a/drivers/infiniband/hw/cxgb4/Kconfig b/drivers/infiniband/hw/cxgb4/Kconfig > > index afe8b28e0878..7910fdd88619 100644 > > --- a/drivers/infiniband/hw/cxgb4/Kconfig > > +++ b/drivers/infiniband/hw/cxgb4/Kconfig > > @@ -1,6 +1,7 @@ > > config INFINIBAND_CXGB4 > > tristate "Chelsio T4/T5 RDMA Driver" > > depends on CHELSIO_T4 && INET && (IPV6 || IPV6=n) > > + depends on PCI || BROKEN > > select CHELSIO_LIB > > select GENERIC_ALLOCATOR > > ---help--- > > diff --git a/drivers/infiniband/hw/hfi1/Kconfig b/drivers/infiniband/hw/hfi1/Kconfig > > index f6ea0881765a..5072d083f53b 100644 > > --- a/drivers/infiniband/hw/hfi1/Kconfig > > +++ b/drivers/infiniband/hw/hfi1/Kconfig > > @@ -1,6 +1,7 @@ > > config INFINIBAND_HFI1 > > tristate "Intel OPA Gen1 support" > > depends on X86_64 && INFINIBAND_RDMAVT && I2C > > + depends on PCI || BROKEN > > select MMU_NOTIFIER > > select CRC32 > > select I2C_ALGOBIT > > diff --git a/drivers/infiniband/hw/i40iw/Kconfig b/drivers/infiniband/hw/i40iw/Kconfig > > index 6e7d27a14061..9cfef1370445 100644 > > --- a/drivers/infiniband/hw/i40iw/Kconfig > > +++ b/drivers/infiniband/hw/i40iw/Kconfig > > @@ -1,6 +1,7 @@ > > config INFINIBAND_I40IW > > tristate "Intel(R) Ethernet X722 iWARP Driver" > > depends on INET && I40E > > + depends on PCI || BROKEN > > select GENERIC_ALLOCATOR > > ---help--- > > Intel(R) Ethernet X722 iWARP Driver > > diff --git a/drivers/infiniband/hw/qedr/Kconfig b/drivers/infiniband/hw/qedr/Kconfig > > index 6c9f3923e838..8db2966f52c2 100644 > > --- a/drivers/infiniband/hw/qedr/Kconfig > > +++ b/drivers/infiniband/hw/qedr/Kconfig > > @@ -1,6 +1,7 @@ > > config INFINIBAND_QEDR > > tristate "QLogic RoCE driver" > > depends on 64BIT && QEDE > > + depends on PCI || BROKEN > > select QED_LL2 > > select QED_RDMA > > ---help--- > > diff --git a/drivers/infiniband/hw/qib/Kconfig b/drivers/infiniband/hw/qib/Kconfig > > index e0fdb9201423..522a6fcaa9d8 100644 > > --- a/drivers/infiniband/hw/qib/Kconfig > > +++ b/drivers/infiniband/hw/qib/Kconfig > > @@ -1,6 +1,7 @@ > > config INFINIBAND_QIB > > tristate "Intel PCIe HCA support" > > depends on 64BIT && INFINIBAND_RDMAVT > > + depends on PCI || BROKEN > > ---help--- > > This is a low-level driver for Intel PCIe QLE InfiniBand host > > channel adapters. This driver does not support the Intel > > diff --git a/drivers/infiniband/sw/rdmavt/Kconfig b/drivers/infiniband/sw/rdmavt/Kconfig > > index fdd001ce13d8..605bfb1da9df 100644 > > --- a/drivers/infiniband/sw/rdmavt/Kconfig > > +++ b/drivers/infiniband/sw/rdmavt/Kconfig > > @@ -1,6 +1,7 @@ > > config INFINIBAND_RDMAVT > > tristate "RDMA verbs transport library" > > depends on 64BIT > > + depends on PCI || BROKEN > > select DMA_VIRT_OPS > > ---help--- > > This is a common software verbs provider for RDMA networks. > > does the RDMAVT really depends on PCI, to me looks not, we can also > remove the included in drivers/infiniband/sw/rdmavt/vt.h? I thought that this is used by the set of macros just below (rvt_pr_* family). Anyway, tried that and got compilation errors. (See function get_pci_dev declaration in include/rdma/rdma_vt.h) > > Other than this, I think the change make sense to me! > > Cheers, > Jack > > > diff --git a/drivers/infiniband/ulp/ipoib/ipoib_main.c b/drivers/infiniband/ulp/ipoib/ipoib_main.c > > index 6c77df34869d..3fc3b7b20297 100644 > > --- a/drivers/infiniband/ulp/ipoib/ipoib_main.c > > +++ b/drivers/infiniband/ulp/ipoib/ipoib_main.c > > @@ -51,7 +51,6 @@ > > #include <net/addrconf.h> > > #include <linux/inetdevice.h> > > #include <rdma/ib_cache.h> > > -#include <linux/pci.h> > > > > #define DRV_VERSION "1.0.0" > > > > -- > > 2.13.5 > > > > -- > > To unsubscribe from this list: send the line "unsubscribe linux-rdma" in > > the body of a message to majordomo@vger.kernel.org > > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- > To unsubscribe from this list: send the line "unsubscribe linux-rdma" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Mon, Sep 04, 2017 at 06:28:48PM +0300, Yuval Shaia wrote: > No reason to have dependency on PCI for the entire infiniband stack so > move it to KConfig of only the drivers that actually using PCI. > > Signed-off-by: Yuval Shaia <yuval.shaia@oracle.com> > --- > v0 -> v1: > * As suggested by Thomas Bogendoerfer: > * Remove unneeded header inclusion from ipoib > * Remove PCI dependency from ipoib's Kconfig > --- > drivers/infiniband/Kconfig | 1 - > drivers/infiniband/hw/cxgb3/Kconfig | 1 + > drivers/infiniband/hw/cxgb4/Kconfig | 1 + > drivers/infiniband/hw/hfi1/Kconfig | 1 + > drivers/infiniband/hw/i40iw/Kconfig | 1 + > drivers/infiniband/hw/qedr/Kconfig | 1 + > drivers/infiniband/hw/qib/Kconfig | 1 + > drivers/infiniband/sw/rdmavt/Kconfig | 1 + > drivers/infiniband/ulp/ipoib/ipoib_main.c | 1 - > 9 files changed, 7 insertions(+), 2 deletions(-) > > diff --git a/drivers/infiniband/Kconfig b/drivers/infiniband/Kconfig > index 234fe01904e7..568088a9298c 100644 > --- a/drivers/infiniband/Kconfig > +++ b/drivers/infiniband/Kconfig > @@ -1,6 +1,5 @@ > menuconfig INFINIBAND > tristate "InfiniBand support" > - depends on PCI || BROKEN > depends on HAS_IOMEM > depends on NET > depends on INET > diff --git a/drivers/infiniband/hw/cxgb3/Kconfig b/drivers/infiniband/hw/cxgb3/Kconfig > index 2b6352b85485..bd32926afa77 100644 > --- a/drivers/infiniband/hw/cxgb3/Kconfig > +++ b/drivers/infiniband/hw/cxgb3/Kconfig > @@ -1,5 +1,6 @@ > config INFINIBAND_CXGB3 > tristate "Chelsio RDMA Driver" > + depends on PCI || BROKEN > depends on CHELSIO_T3 && INET Yuval, Why do we need to be dependent on CONFIG_BROKEN? Is it still valid for IB stack? Thanks,
diff --git a/drivers/infiniband/Kconfig b/drivers/infiniband/Kconfig index 234fe01904e7..568088a9298c 100644 --- a/drivers/infiniband/Kconfig +++ b/drivers/infiniband/Kconfig @@ -1,6 +1,5 @@ menuconfig INFINIBAND tristate "InfiniBand support" - depends on PCI || BROKEN depends on HAS_IOMEM depends on NET depends on INET diff --git a/drivers/infiniband/hw/cxgb3/Kconfig b/drivers/infiniband/hw/cxgb3/Kconfig index 2b6352b85485..bd32926afa77 100644 --- a/drivers/infiniband/hw/cxgb3/Kconfig +++ b/drivers/infiniband/hw/cxgb3/Kconfig @@ -1,5 +1,6 @@ config INFINIBAND_CXGB3 tristate "Chelsio RDMA Driver" + depends on PCI || BROKEN depends on CHELSIO_T3 && INET select GENERIC_ALLOCATOR ---help--- diff --git a/drivers/infiniband/hw/cxgb4/Kconfig b/drivers/infiniband/hw/cxgb4/Kconfig index afe8b28e0878..7910fdd88619 100644 --- a/drivers/infiniband/hw/cxgb4/Kconfig +++ b/drivers/infiniband/hw/cxgb4/Kconfig @@ -1,6 +1,7 @@ config INFINIBAND_CXGB4 tristate "Chelsio T4/T5 RDMA Driver" depends on CHELSIO_T4 && INET && (IPV6 || IPV6=n) + depends on PCI || BROKEN select CHELSIO_LIB select GENERIC_ALLOCATOR ---help--- diff --git a/drivers/infiniband/hw/hfi1/Kconfig b/drivers/infiniband/hw/hfi1/Kconfig index f6ea0881765a..5072d083f53b 100644 --- a/drivers/infiniband/hw/hfi1/Kconfig +++ b/drivers/infiniband/hw/hfi1/Kconfig @@ -1,6 +1,7 @@ config INFINIBAND_HFI1 tristate "Intel OPA Gen1 support" depends on X86_64 && INFINIBAND_RDMAVT && I2C + depends on PCI || BROKEN select MMU_NOTIFIER select CRC32 select I2C_ALGOBIT diff --git a/drivers/infiniband/hw/i40iw/Kconfig b/drivers/infiniband/hw/i40iw/Kconfig index 6e7d27a14061..9cfef1370445 100644 --- a/drivers/infiniband/hw/i40iw/Kconfig +++ b/drivers/infiniband/hw/i40iw/Kconfig @@ -1,6 +1,7 @@ config INFINIBAND_I40IW tristate "Intel(R) Ethernet X722 iWARP Driver" depends on INET && I40E + depends on PCI || BROKEN select GENERIC_ALLOCATOR ---help--- Intel(R) Ethernet X722 iWARP Driver diff --git a/drivers/infiniband/hw/qedr/Kconfig b/drivers/infiniband/hw/qedr/Kconfig index 6c9f3923e838..8db2966f52c2 100644 --- a/drivers/infiniband/hw/qedr/Kconfig +++ b/drivers/infiniband/hw/qedr/Kconfig @@ -1,6 +1,7 @@ config INFINIBAND_QEDR tristate "QLogic RoCE driver" depends on 64BIT && QEDE + depends on PCI || BROKEN select QED_LL2 select QED_RDMA ---help--- diff --git a/drivers/infiniband/hw/qib/Kconfig b/drivers/infiniband/hw/qib/Kconfig index e0fdb9201423..522a6fcaa9d8 100644 --- a/drivers/infiniband/hw/qib/Kconfig +++ b/drivers/infiniband/hw/qib/Kconfig @@ -1,6 +1,7 @@ config INFINIBAND_QIB tristate "Intel PCIe HCA support" depends on 64BIT && INFINIBAND_RDMAVT + depends on PCI || BROKEN ---help--- This is a low-level driver for Intel PCIe QLE InfiniBand host channel adapters. This driver does not support the Intel diff --git a/drivers/infiniband/sw/rdmavt/Kconfig b/drivers/infiniband/sw/rdmavt/Kconfig index fdd001ce13d8..605bfb1da9df 100644 --- a/drivers/infiniband/sw/rdmavt/Kconfig +++ b/drivers/infiniband/sw/rdmavt/Kconfig @@ -1,6 +1,7 @@ config INFINIBAND_RDMAVT tristate "RDMA verbs transport library" depends on 64BIT + depends on PCI || BROKEN select DMA_VIRT_OPS ---help--- This is a common software verbs provider for RDMA networks. diff --git a/drivers/infiniband/ulp/ipoib/ipoib_main.c b/drivers/infiniband/ulp/ipoib/ipoib_main.c index 6c77df34869d..3fc3b7b20297 100644 --- a/drivers/infiniband/ulp/ipoib/ipoib_main.c +++ b/drivers/infiniband/ulp/ipoib/ipoib_main.c @@ -51,7 +51,6 @@ #include <net/addrconf.h> #include <linux/inetdevice.h> #include <rdma/ib_cache.h> -#include <linux/pci.h> #define DRV_VERSION "1.0.0"
No reason to have dependency on PCI for the entire infiniband stack so move it to KConfig of only the drivers that actually using PCI. Signed-off-by: Yuval Shaia <yuval.shaia@oracle.com> --- v0 -> v1: * As suggested by Thomas Bogendoerfer: * Remove unneeded header inclusion from ipoib * Remove PCI dependency from ipoib's Kconfig --- drivers/infiniband/Kconfig | 1 - drivers/infiniband/hw/cxgb3/Kconfig | 1 + drivers/infiniband/hw/cxgb4/Kconfig | 1 + drivers/infiniband/hw/hfi1/Kconfig | 1 + drivers/infiniband/hw/i40iw/Kconfig | 1 + drivers/infiniband/hw/qedr/Kconfig | 1 + drivers/infiniband/hw/qib/Kconfig | 1 + drivers/infiniband/sw/rdmavt/Kconfig | 1 + drivers/infiniband/ulp/ipoib/ipoib_main.c | 1 - 9 files changed, 7 insertions(+), 2 deletions(-)