summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorLong Li <longli@microsoft.com>2019-05-15 23:09:04 +0200
committerSteve French <stfrench@microsoft.com>2019-05-16 05:27:45 +0200
commit3b249115719ba2cb56d3f92ee7492e033059d3f3 (patch)
treecf68df1fc926cc4416cb8325f98f295f907ff08f /fs
parentcifs:smbd Use the correct DMA direction when sending data (diff)
downloadlinux-3b249115719ba2cb56d3f92ee7492e033059d3f3.tar.xz
linux-3b249115719ba2cb56d3f92ee7492e033059d3f3.zip
cifs: Don't match port on SMBDirect transport
SMBDirect manages its own ports in the transport layer, there is no need to check the port to find a connection. Signed-off-by: Long Li <longli@microsoft.com> Signed-off-by: Steve French <stfrench@microsoft.com> Reviewed-by: Ronnie sahlberg <lsahlber@redhat.com>
Diffstat (limited to 'fs')
-rw-r--r--fs/cifs/connect.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/cifs/connect.c b/fs/cifs/connect.c
index 0b3ac8b76d18..8c4121da624e 100644
--- a/fs/cifs/connect.c
+++ b/fs/cifs/connect.c
@@ -2446,6 +2446,10 @@ match_port(struct TCP_Server_Info *server, struct sockaddr *addr)
{
__be16 port, *sport;
+ /* SMBDirect manages its own ports, don't match it here */
+ if (server->rdma)
+ return true;
+
switch (addr->sa_family) {
case AF_INET:
sport = &((struct sockaddr_in *) &server->dstaddr)->sin_port;