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

From: Ren Zhijie
Date: Fri Jul 08 2022 - 22:51:00 EST


Hi, Bjorn and jon

Just a friendly ping ...

Is this patch be merged or squashed?

在 2022/6/30 2:51, Randy Dunlap 写道:

On 6/27/22 13:25, Bjorn Helgaas wrote:
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
--
Works for me. Thanks.

Acked-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
Tested-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> # build-tested

maybe even
Reported-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
(see https://lore.kernel.org/linux-next/835b844b-9d9d-615c-af11-44154c2a8102@xxxxxxxxxxxxx/)