[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <MWHPR21MB019066558DAE185D630EC2E7CE530@MWHPR21MB0190.namprd21.prod.outlook.com>
Date: Sun, 5 Nov 2017 19:19:45 +0000
From: Long Li <longli@...rosoft.com>
To: Long Li <longli@...rosoft.com>,
Matthew Wilcox <mawilcox@...rosoft.com>,
Pavel Shilovsky <piastryyy@...il.com>
CC: linux-cifs <linux-cifs@...r.kernel.org>,
Stephen Hemminger <sthemmin@...rosoft.com>,
"linux-rdma@...r.kernel.org" <linux-rdma@...r.kernel.org>,
Kernel Mailing List <linux-kernel@...r.kernel.org>,
Steve French <sfrench@...ba.org>
Subject: RE: [Patch v5 08/21] CIFS: SMBD: Upper layer reconnects to SMB Direct
session
> -----Original Message-----
> From: samba-technical [mailto:samba-technical-bounces@...ts.samba.org]
> On Behalf Of Long Li via samba-technical
> Sent: Sunday, November 5, 2017 10:37 AM
> To: Matthew Wilcox <mawilcox@...rosoft.com>; Pavel Shilovsky
> <piastryyy@...il.com>
> Cc: linux-cifs <linux-cifs@...r.kernel.org>; Stephen Hemminger
> <sthemmin@...rosoft.com>; linux-rdma@...r.kernel.org; samba-technical
> <samba-technical@...ts.samba.org>; Kernel Mailing List <linux-
> kernel@...r.kernel.org>; Steve French <sfrench@...ba.org>
> Subject: RE: [Patch v5 08/21] CIFS: SMBD: Upper layer reconnects to SMB
> Direct session
>
> > -----Original Message-----
> > From: Matthew Wilcox
> > Sent: Wednesday, November 1, 2017 12:45 PM
> > To: Pavel Shilovsky <piastryyy@...il.com>; Long Li
> > <longli@...rosoft.com>
> > Cc: Steve French <sfrench@...ba.org>; linux-cifs <linux-
> > cifs@...r.kernel.org>; samba-technical
> > <samba-technical@...ts.samba.org>;
> > Kernel Mailing List <linux-kernel@...r.kernel.org>; linux-
> > rdma@...r.kernel.org; Tom Talpey <ttalpey@...rosoft.com>; Stephen
> > Hemminger <sthemmin@...rosoft.com>; Long Li <longli@...rosoft.com>
> > Subject: RE: [Patch v5 08/21] CIFS: SMBD: Upper layer reconnects to
> > SMB Direct session
> >
> > From: Pavel Shilovsky [mailto:piastryyy@...il.com]
> > > 2017-10-18 16:09 GMT-07:00 Long Li <longli@...hange.microsoft.com>:
> > > > From: Long Li <longli@...rosoft.com>
> > > >
> > > > Do a reconnect on SMB Direct when it is used as the connection.
> > > > Reconnect
> > > can
> > > > happen for many reasons and it's mostly the decision of SMB2 upper
> > layer.
> > > >
> > > > Signed-off-by: Long Li <longli@...rosoft.com>
> > > > ---
> > > > fs/cifs/connect.c | 7 +++++++
> > > > 1 file changed, 7 insertions(+)
> > > >
> > > > diff --git a/fs/cifs/connect.c b/fs/cifs/connect.c index
> > > > 2c0b34a..8ca3c13 100644
> > > > --- a/fs/cifs/connect.c
> > > > +++ b/fs/cifs/connect.c
> > > > @@ -406,7 +406,14 @@ cifs_reconnect(struct TCP_Server_Info
> > > > *server)
> > > >
> > > > /* we should try only the port we connected to before */
> > > > mutex_lock(&server->srv_mutex);
> > > > +#ifdef CONFIG_CIFS_SMB_DIRECT
> > > > + if (server->rdma)
> > > > + rc = smbd_reconnect(server);
> > > > + else
> > > > + rc = generic_ip_connect(server);
> > >
> > > Minor: here and in other similar places we can remove #else part
> > > below and put #endif before else block above.
> > >
> > > > +#else
> > > > rc = generic_ip_connect(server);
> > > > +#endif
> >
> > I'd suggest rather:
> >
> > #ifdef CONFIG_CIFS_SMB_DIRECT
> > #define cifs_rdma_enabled(server) ((server)->rdma)
> > #else
> > #define cifs_rdma_enabled(server) 0
> > #endif
> >
> > Then we don't need an ifdef in the users, just:
> >
> > if (cifs_rdma_enabled(server))
> > rc = smbd_reconnect(server);
> > else
> > rc = generic_ip_connect(server);
It doesn't work well, because smbd_reconnect is defined when CONFIG_CIFS_SMB_DIRECT is set. Now the compiler is complaining it can't find this function. Maybe compiler is not smart enough :)
I have sent v6 for all the other comments.
Powered by blists - more mailing lists