Re: [PATCH -next] PCI: endpoint: Fix Kconfig dependency

From: Bjorn Helgaas
Date: Mon Jun 27 2022 - 16:25:37 EST


On Mon, Jun 27, 2022 at 03:07:50PM -0500, Bjorn Helgaas wrote:
> On Mon, Jun 27, 2022 at 02:57:14PM -0500, Bjorn Helgaas wrote:
> > On Fri, Jun 24, 2022 at 09:19:11AM +0800, Ren Zhijie wrote:
> > > If CONFIG_NTB is not set and CONFIG_PCI_EPF_VNTB is y.
> > >
> > > make ARCH=x86_64 CROSS_COMPILE=x86_64-linux-gnu-, will be failed, like this:
> > >
> > > drivers/pci/endpoint/functions/pci-epf-vntb.o: In function `epf_ntb_cmd_handler':
> > > pci-epf-vntb.c:(.text+0x95e): undefined reference to `ntb_db_event'
> > > pci-epf-vntb.c:(.text+0xa1f): undefined reference to `ntb_link_event'
> > > pci-epf-vntb.c:(.text+0xa42): undefined reference to `ntb_link_event'
> > > drivers/pci/endpoint/functions/pci-epf-vntb.o: In function `pci_vntb_probe':
> > > pci-epf-vntb.c:(.text+0x1250): undefined reference to `ntb_register_device'
> > >
> > > The functions ntb_*() are defined in drivers/ntb/core.c, which need CONFIG_NTB setting y to be build-in.
> > > To fix this build error, add depends on NTB.
> > >
> > > Reported-by: Hulk Robot <hulkci@xxxxxxxxxx>
> > > Fixes: ff32fac00d97("NTB: EPF: support NTB transfer between PCI RC and EP connection")
> > > Signed-off-by: Ren Zhijie <renzhijie2@xxxxxxxxxx>
> > > Acked-by: Frank Li <frank.li@xxxxxxx>
> >
> > Am I missing something?
> >
> > 02:54:01 ~/linux (next)$ git checkout -b wip/ren-endpoint-ntb v5.19-rc1
> > Switched to a new branch 'wip/ren-endpoint-ntb'
> > 02:54:23 ~/linux (wip/ren-endpoint-ntb)$ b4 am -om/ https://lore.kernel.org/r/20220624011911.164146-1-renzhijie2@xxxxxxxxxx
> > 02:54:47 ~/linux (wip/ren-endpoint-ntb)$ git am m/20220624_renzhijie2_pci_endpoint_fix_kconfig_dependency.mbx
> > Applying: PCI: endpoint: Fix Kconfig dependency
> > error: patch failed: drivers/pci/endpoint/functions/Kconfig:29
> >
> > Obviously I could fix this manually, but if there's something wrong
> > with your patch posting process, we should fix it.
>
> Oh, I see the problem. This patch depends on some other VNTB patch
> that hasn't been merged yet. That means this fix should be squashed
> into the VNTB patch that adds "config PCI_EPF_VNTB".

Well, I saw *part* of the problem. This fixes something that is in
-next, added by ff32fac00d97 ("NTB: EPF: support NTB transfer between
PCI RC and EP connection") [1], which was merged by Jon.

So I guess Jon will squash and update his branch or merge the
fixup(s).

(Jon, if you squash, note there are several typos in the commit log:
s/Virtual NTB/virtual NTB/, s/include/includes/, s/3 part/3 parts/,
s/virutal/virtual, s/pci/PCI/, s/BUS/Bus/)

[1] https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=ff32fac00d97

> > > ---
> > > v2: Fix some commit message errors
> > > ---
> > > drivers/pci/endpoint/functions/Kconfig | 1 +
> > > 1 file changed, 1 insertion(+)
> > >
> > > diff --git a/drivers/pci/endpoint/functions/Kconfig b/drivers/pci/endpoint/functions/Kconfig
> > > index 362555b024e8..9beee4f0f4ee 100644
> > > --- a/drivers/pci/endpoint/functions/Kconfig
> > > +++ b/drivers/pci/endpoint/functions/Kconfig
> > > @@ -29,6 +29,7 @@ config PCI_EPF_NTB
> > > config PCI_EPF_VNTB
> > > tristate "PCI Endpoint NTB driver"
> > > depends on PCI_ENDPOINT
> > > + depends on NTB
> > > select CONFIGFS_FS
> > > help
> > > Select this configuration option to enable the Non-Transparent
> > > --
> > > 2.17.1
> > >