* [PATCH] CIFS: SMBD: fix configurations with INFINIBAND=m
@ 2017-12-19 10:12 Arnd Bergmann
[not found] ` <20171219101327.2165797-1-arnd-r2nGTMty4D4@public.gmane.org>
0 siblings, 1 reply; 8+ messages in thread
From: Arnd Bergmann @ 2017-12-19 10:12 UTC (permalink / raw)
To: Steve French
Cc: Arnd Bergmann, Pavel Shilovsky, Jean Delvare, Long Li, linux-cifs,
samba-technical, linux-kernel
A built-in SMB file system cannot link against a modular
infiniband core module:
fs/cifs/smbdirect.o: In function `smbd_destroy_rdma_work':
smbdirect.c:(.text+0x28e3): undefined reference to `ib_drain_qp'
smbdirect.c:(.text+0x2915): undefined reference to `rdma_destroy_qp'
smbdirect.c:(.text+0x2d08): undefined reference to `ib_free_cq'
smbdirect.c:(.text+0x2d3d): undefined reference to `ib_free_cq'
smbdirect.c:(.text+0x2d6f): undefined reference to `ib_dealloc_pd'
smbdirect.c:(.text+0x2d9a): undefined reference to `rdma_destroy_id'
fs/cifs/smbdirect.o: In function `smbd_disconnect_rdma_work':
smbdirect.c:(.text+0x3d3e): undefined reference to `rdma_disconnect'
fs/cifs/smbdirect.o: In function `_smbd_get_connection':
smbdirect.c:(.text+0x5bc2): undefined reference to `rdma_create_id'
smbdirect.c:(.text+0x5cc5): undefined reference to `rdma_resolve_addr'
smbdirect.c:(.text+0x5cda): undefined reference to `rdma_destroy_id'
smbdirect.c:(.text+0x5da7): undefined reference to `rdma_destroy_id'
smbdirect.c:(.text+0x5e89): undefined reference to `rdma_resolve_route'
smbdirect.c:(.text+0x5f07): undefined reference to `rdma_destroy_id'
This changes the Kconfig dependency to enforce selecting one of the
valid configurations.
Fixes: bbc50d2ad317 ("CIFS: SMBD: Introduce kernel config option CONFIG_CIFS_SMB_DIRECT")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
fs/cifs/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/fs/cifs/Kconfig b/fs/cifs/Kconfig
index 500fd69fb58b..3bfc55c08bef 100644
--- a/fs/cifs/Kconfig
+++ b/fs/cifs/Kconfig
@@ -199,6 +199,7 @@ config CIFS_SMB311
config CIFS_SMB_DIRECT
bool "SMB Direct support (Experimental)"
depends on CIFS && INFINIBAND
+ depends on CIFS=m || INFINIBAND=y
help
Enables SMB Direct experimental support for SMB 3.0, 3.02 and 3.1.1.
SMB Direct allows transferring SMB packets over RDMA. If unsure,
--
2.9.0
^ permalink raw reply related [flat|nested] 8+ messages in thread[parent not found: <20171219101327.2165797-1-arnd-r2nGTMty4D4@public.gmane.org>]
* Re: [PATCH] CIFS: SMBD: fix configurations with INFINIBAND=m [not found] ` <20171219101327.2165797-1-arnd-r2nGTMty4D4@public.gmane.org> @ 2017-12-19 10:33 ` Stefan Metzmacher 2017-12-19 10:56 ` Arnd Bergmann 2017-12-19 12:39 ` Jean Delvare 2017-12-19 21:21 ` Long Li 2 siblings, 1 reply; 8+ messages in thread From: Stefan Metzmacher @ 2017-12-19 10:33 UTC (permalink / raw) To: Arnd Bergmann, Steve French Cc: linux-cifs-u79uwXL29TY76Z2rM5mHXA, samba-technical-w/Ol4Ecudpl8XjKLYN78aQ, linux-kernel-u79uwXL29TY76Z2rM5mHXA, Pavel Shilovsky, Jean Delvare [-- Attachment #1.1: Type: text/plain, Size: 726 bytes --] Hi Arnd, > diff --git a/fs/cifs/Kconfig b/fs/cifs/Kconfig > index 500fd69fb58b..3bfc55c08bef 100644 > --- a/fs/cifs/Kconfig > +++ b/fs/cifs/Kconfig > @@ -199,6 +199,7 @@ config CIFS_SMB311 > config CIFS_SMB_DIRECT > bool "SMB Direct support (Experimental)" > depends on CIFS && INFINIBAND > + depends on CIFS=m || INFINIBAND=y > help > Enables SMB Direct experimental support for SMB 3.0, 3.02 and 3.1.1. > SMB Direct allows transferring SMB packets over RDMA. If unsure, Is this really correct? Should CIFS_SMB_DIRECT be allowed with: CIFS=n and INFINIBAND=y ??? or CIFS=m and INFINIBAND=n ??? I guess a more complex logic should be used here or am I missing something? metze [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] CIFS: SMBD: fix configurations with INFINIBAND=m 2017-12-19 10:33 ` Stefan Metzmacher @ 2017-12-19 10:56 ` Arnd Bergmann [not found] ` <CAK8P3a3TQSt8skuyu7uHBbyG_jHS8wUaPPJ1XSh4u+aHxBzN8w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 0 siblings, 1 reply; 8+ messages in thread From: Arnd Bergmann @ 2017-12-19 10:56 UTC (permalink / raw) To: Stefan Metzmacher Cc: Steve French, linux-cifs, samba-technical, Linux Kernel Mailing List, Pavel Shilovsky, Jean Delvare On Tue, Dec 19, 2017 at 11:33 AM, Stefan Metzmacher <metze@samba.org> wrote: > Hi Arnd, > >> diff --git a/fs/cifs/Kconfig b/fs/cifs/Kconfig >> index 500fd69fb58b..3bfc55c08bef 100644 >> --- a/fs/cifs/Kconfig >> +++ b/fs/cifs/Kconfig >> @@ -199,6 +199,7 @@ config CIFS_SMB311 >> config CIFS_SMB_DIRECT >> bool "SMB Direct support (Experimental)" >> depends on CIFS && INFINIBAND >> + depends on CIFS=m || INFINIBAND=y >> help >> Enables SMB Direct experimental support for SMB 3.0, 3.02 and 3.1.1. >> SMB Direct allows transferring SMB packets over RDMA. If unsure, > > Is this really correct? Should CIFS_SMB_DIRECT be allowed with: > > CIFS=n and INFINIBAND=y ??? > or > CIFS=m and INFINIBAND=n ??? > > I guess a more complex logic should be used here > or am I missing something? The two ones you listed are prohibited by the existing 'depends on CIFS && INFINIBAND' dependency. We could rephrase the dependency as depends on (CIFS=y && INFINIBAND=y) || \ (CIFS=m && INFINIBAND=y) || \ (CIFS=m && INFINIBAND=m) which has the same effect as depends on CIFS && INFINIBAND depends on CIFS=m || INFINIBAND=y but I don't think that adds any clarity. Arnd ^ permalink raw reply [flat|nested] 8+ messages in thread
[parent not found: <CAK8P3a3TQSt8skuyu7uHBbyG_jHS8wUaPPJ1XSh4u+aHxBzN8w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>]
* Re: [PATCH] CIFS: SMBD: fix configurations with INFINIBAND=m [not found] ` <CAK8P3a3TQSt8skuyu7uHBbyG_jHS8wUaPPJ1XSh4u+aHxBzN8w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> @ 2017-12-19 11:01 ` Stefan Metzmacher 0 siblings, 0 replies; 8+ messages in thread From: Stefan Metzmacher @ 2017-12-19 11:01 UTC (permalink / raw) To: Arnd Bergmann Cc: linux-cifs-u79uwXL29TY76Z2rM5mHXA, samba-technical-w/Ol4Ecudpl8XjKLYN78aQ, Linux Kernel Mailing List, Steve French, Pavel Shilovsky, Jean Delvare [-- Attachment #1.1: Type: text/plain, Size: 1686 bytes --] Am 19.12.2017 um 11:56 schrieb Arnd Bergmann via samba-technical: > On Tue, Dec 19, 2017 at 11:33 AM, Stefan Metzmacher <metze-eUNUBHrolfbYtjvyW6yDsg@public.gmane.org> wrote: >> Hi Arnd, >> >>> diff --git a/fs/cifs/Kconfig b/fs/cifs/Kconfig >>> index 500fd69fb58b..3bfc55c08bef 100644 >>> --- a/fs/cifs/Kconfig >>> +++ b/fs/cifs/Kconfig >>> @@ -199,6 +199,7 @@ config CIFS_SMB311 >>> config CIFS_SMB_DIRECT >>> bool "SMB Direct support (Experimental)" >>> depends on CIFS && INFINIBAND >>> + depends on CIFS=m || INFINIBAND=y >>> help >>> Enables SMB Direct experimental support for SMB 3.0, 3.02 and 3.1.1. >>> SMB Direct allows transferring SMB packets over RDMA. If unsure, >> >> Is this really correct? Should CIFS_SMB_DIRECT be allowed with: >> >> CIFS=n and INFINIBAND=y ??? >> or >> CIFS=m and INFINIBAND=n ??? >> >> I guess a more complex logic should be used here >> or am I missing something? > > The two ones you listed are prohibited by the existing > 'depends on CIFS && INFINIBAND' dependency. > > We could rephrase the dependency as > > depends on (CIFS=y && INFINIBAND=y) || \ > (CIFS=m && INFINIBAND=y) || \ > (CIFS=m && INFINIBAND=m) > > which has the same effect as > > depends on CIFS && INFINIBAND > depends on CIFS=m || INFINIBAND=y > > but I don't think that adds any clarity. Thanks for the clarification! I somehow assumed the patch has been: - depends on CIFS && INFINIBAND + depends on CIFS=m || INFINIBAND=y instead of: depends on CIFS && INFINIBAND + depends on CIFS=m || INFINIBAND=y metze [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] CIFS: SMBD: fix configurations with INFINIBAND=m [not found] ` <20171219101327.2165797-1-arnd-r2nGTMty4D4@public.gmane.org> 2017-12-19 10:33 ` Stefan Metzmacher @ 2017-12-19 12:39 ` Jean Delvare 2017-12-19 21:21 ` Long Li 2 siblings, 0 replies; 8+ messages in thread From: Jean Delvare @ 2017-12-19 12:39 UTC (permalink / raw) To: Arnd Bergmann Cc: Steve French, Pavel Shilovsky, Long Li, linux-cifs-u79uwXL29TY76Z2rM5mHXA, samba-technical-w/Ol4Ecudpl8XjKLYN78aQ, linux-kernel-u79uwXL29TY76Z2rM5mHXA On Tue, 19 Dec 2017 11:12:57 +0100, Arnd Bergmann wrote: > A built-in SMB file system cannot link against a modular > infiniband core module: > > fs/cifs/smbdirect.o: In function `smbd_destroy_rdma_work': > smbdirect.c:(.text+0x28e3): undefined reference to `ib_drain_qp' > smbdirect.c:(.text+0x2915): undefined reference to `rdma_destroy_qp' > smbdirect.c:(.text+0x2d08): undefined reference to `ib_free_cq' > smbdirect.c:(.text+0x2d3d): undefined reference to `ib_free_cq' > smbdirect.c:(.text+0x2d6f): undefined reference to `ib_dealloc_pd' > smbdirect.c:(.text+0x2d9a): undefined reference to `rdma_destroy_id' > fs/cifs/smbdirect.o: In function `smbd_disconnect_rdma_work': > smbdirect.c:(.text+0x3d3e): undefined reference to `rdma_disconnect' > fs/cifs/smbdirect.o: In function `_smbd_get_connection': > smbdirect.c:(.text+0x5bc2): undefined reference to `rdma_create_id' > smbdirect.c:(.text+0x5cc5): undefined reference to `rdma_resolve_addr' > smbdirect.c:(.text+0x5cda): undefined reference to `rdma_destroy_id' > smbdirect.c:(.text+0x5da7): undefined reference to `rdma_destroy_id' > smbdirect.c:(.text+0x5e89): undefined reference to `rdma_resolve_route' > smbdirect.c:(.text+0x5f07): undefined reference to `rdma_destroy_id' > > This changes the Kconfig dependency to enforce selecting one of the > valid configurations. > > Fixes: bbc50d2ad317 ("CIFS: SMBD: Introduce kernel config option CONFIG_CIFS_SMB_DIRECT") > Signed-off-by: Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org> > --- > fs/cifs/Kconfig | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/fs/cifs/Kconfig b/fs/cifs/Kconfig > index 500fd69fb58b..3bfc55c08bef 100644 > --- a/fs/cifs/Kconfig > +++ b/fs/cifs/Kconfig > @@ -199,6 +199,7 @@ config CIFS_SMB311 > config CIFS_SMB_DIRECT > bool "SMB Direct support (Experimental)" > depends on CIFS && INFINIBAND > + depends on CIFS=m || INFINIBAND=y > help > Enables SMB Direct experimental support for SMB 3.0, 3.02 and 3.1.1. > SMB Direct allows transferring SMB packets over RDMA. If unsure, Looks good to me. Reviewed-by: Jean Delvare <jdelvare-l3A5Bk7waGM@public.gmane.org> -- Jean Delvare SUSE L3 Support ^ permalink raw reply [flat|nested] 8+ messages in thread
* RE: [PATCH] CIFS: SMBD: fix configurations with INFINIBAND=m [not found] ` <20171219101327.2165797-1-arnd-r2nGTMty4D4@public.gmane.org> 2017-12-19 10:33 ` Stefan Metzmacher 2017-12-19 12:39 ` Jean Delvare @ 2017-12-19 21:21 ` Long Li [not found] ` <MWHPR21MB08468B3FE04EAF4B41A92B75CE0F0-saRRjQKJ25OdAu0pOMKhMc1VXTxX1y3OvxpqHgZTriW3zl9H0oFU5g@public.gmane.org> 2017-12-20 8:17 ` Arnd Bergmann 2 siblings, 2 replies; 8+ messages in thread From: Long Li @ 2017-12-19 21:21 UTC (permalink / raw) To: Arnd Bergmann, Steve French Cc: Pavel Shilovskiy, Jean Delvare, linux-cifs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, samba-technical-w/Ol4Ecudpl8XjKLYN78aQ@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org > depends on CIFS && INFINIBAND > + depends on CIFS=m || INFINIBAND=y How about we change them to depends on CIFS=m && INFINIBAND || CIFS=y && INFINIBAND=y This makes it easy to read. ^ permalink raw reply [flat|nested] 8+ messages in thread
[parent not found: <MWHPR21MB08468B3FE04EAF4B41A92B75CE0F0-saRRjQKJ25OdAu0pOMKhMc1VXTxX1y3OvxpqHgZTriW3zl9H0oFU5g@public.gmane.org>]
* Re: [PATCH] CIFS: SMBD: fix configurations with INFINIBAND=m [not found] ` <MWHPR21MB08468B3FE04EAF4B41A92B75CE0F0-saRRjQKJ25OdAu0pOMKhMc1VXTxX1y3OvxpqHgZTriW3zl9H0oFU5g@public.gmane.org> @ 2017-12-20 6:34 ` Stefan Metzmacher 0 siblings, 0 replies; 8+ messages in thread From: Stefan Metzmacher @ 2017-12-20 6:34 UTC (permalink / raw) To: Long Li, Arnd Bergmann, Steve French Cc: linux-cifs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, samba-technical-w/Ol4Ecudpl8XjKLYN78aQ@public.gmane.org, Pavel Shilovskiy, Jean Delvare, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org [-- Attachment #1.1: Type: text/plain, Size: 310 bytes --] Am 19.12.2017 um 22:21 schrieb Long Li via samba-technical: >> depends on CIFS && INFINIBAND >> + depends on CIFS=m || INFINIBAND=y > > How about we change them to > > depends on CIFS=m && INFINIBAND || CIFS=y && INFINIBAND=y > > This makes it easy to read. I like it :-) metze [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] CIFS: SMBD: fix configurations with INFINIBAND=m 2017-12-19 21:21 ` Long Li [not found] ` <MWHPR21MB08468B3FE04EAF4B41A92B75CE0F0-saRRjQKJ25OdAu0pOMKhMc1VXTxX1y3OvxpqHgZTriW3zl9H0oFU5g@public.gmane.org> @ 2017-12-20 8:17 ` Arnd Bergmann 1 sibling, 0 replies; 8+ messages in thread From: Arnd Bergmann @ 2017-12-20 8:17 UTC (permalink / raw) To: Long Li Cc: Steve French, Pavel Shilovskiy, Jean Delvare, linux-cifs@vger.kernel.org, samba-technical@lists.samba.org, linux-kernel@vger.kernel.org On Tue, Dec 19, 2017 at 10:21 PM, Long Li <longli@microsoft.com> wrote: >> depends on CIFS && INFINIBAND >> + depends on CIFS=m || INFINIBAND=y > > How about we change them to > > depends on CIFS=m && INFINIBAND || CIFS=y && INFINIBAND=y > > This makes it easy to read. Yes, that seems fine. I would normally group them using () to avoid any confusion with operator precedence, but your version is also correct, so just pick the one you like best. Arnd ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2017-12-20 8:17 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-12-19 10:12 [PATCH] CIFS: SMBD: fix configurations with INFINIBAND=m Arnd Bergmann
[not found] ` <20171219101327.2165797-1-arnd-r2nGTMty4D4@public.gmane.org>
2017-12-19 10:33 ` Stefan Metzmacher
2017-12-19 10:56 ` Arnd Bergmann
[not found] ` <CAK8P3a3TQSt8skuyu7uHBbyG_jHS8wUaPPJ1XSh4u+aHxBzN8w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2017-12-19 11:01 ` Stefan Metzmacher
2017-12-19 12:39 ` Jean Delvare
2017-12-19 21:21 ` Long Li
[not found] ` <MWHPR21MB08468B3FE04EAF4B41A92B75CE0F0-saRRjQKJ25OdAu0pOMKhMc1VXTxX1y3OvxpqHgZTriW3zl9H0oFU5g@public.gmane.org>
2017-12-20 6:34 ` Stefan Metzmacher
2017-12-20 8:17 ` Arnd Bergmann
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox