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

From: Bjorn Helgaas
Date: Mon Jun 27 2022 - 16:08:00 EST


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
> Looking up https://lore.kernel.org/r/20220624011911.164146-1-renzhijie2%40huawei.com
> Analyzing 1 messages in the thread
> Checking attestation on all messages, may take a moment...
> ---
> [PATCH] PCI: endpoint: Fix Kconfig dependency
> ---
> Total patches: 1
> ---
> Link: https://lore.kernel.org/r/20220624011911.164146-1-renzhijie2@xxxxxxxxxx
> Base: not specified
> git am m/20220624_renzhijie2_pci_endpoint_fix_kconfig_dependency.mbx
> 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
> error: drivers/pci/endpoint/functions/Kconfig: patch does not apply
> Patch failed at 0001 PCI: endpoint: Fix Kconfig dependency
> hint: Use 'git am --show-current-patch' to see the failed patch
> When you have resolved this problem, run "git am --continue".
> If you prefer to skip this patch, run "git am --skip" instead.
> To restore the original branch and stop patching, run "git am --abort".
>
> 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".

> > ---
> > 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
> >