RE: [Patch v3 02/19] CIFS: SMBD: Add SMBDirect protocol and transport constants

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> -----Original Message-----
> From: Pavel Shilovsky [mailto:piastryyy@xxxxxxxxx]
> Sent: Wednesday, August 30, 2017 11:19 AM
> To: Long Li <longli@xxxxxxxxxxxxx>
> Cc: Steve French <sfrench@xxxxxxxxx>; linux-cifs <linux-
> cifs@xxxxxxxxxxxxxxx>; samba-technical <samba-technical@xxxxxxxxxxxxxxx>;
> Kernel Mailing List <linux-kernel@xxxxxxxxxxxxxxx>; linux-
> rdma@xxxxxxxxxxxxxxx; Christoph Hellwig <hch@xxxxxxxxxxxxx>; Tom Talpey
> <ttalpey@xxxxxxxxxxxxx>; Matthew Wilcox <mawilcox@xxxxxxxxxxxxx>
> Subject: Re: [Patch v3 02/19] CIFS: SMBD: Add SMBDirect protocol and
> transport constants
> 
> 2017-08-29 16:00 GMT-07:00 Long Li <longli@xxxxxxxxxxxxx>:
> >> -----Original Message-----
> >> From: Pavel Shilovsky [mailto:piastryyy@xxxxxxxxx]
> >> Sent: Tuesday, August 29, 2017 3:45 PM
> >> To: Long Li <longli@xxxxxxxxxxxxx>
> >> Cc: Steve French <sfrench@xxxxxxxxx>; linux-cifs <linux-
> >> cifs@xxxxxxxxxxxxxxx>; samba-technical
> >> <samba-technical@xxxxxxxxxxxxxxx>;
> >> Kernel Mailing List <linux-kernel@xxxxxxxxxxxxxxx>; linux-
> >> rdma@xxxxxxxxxxxxxxx; Christoph Hellwig <hch@xxxxxxxxxxxxx>; Tom
> >> Talpey <ttalpey@xxxxxxxxxxxxx>; Matthew Wilcox
> >> <mawilcox@xxxxxxxxxxxxx>; Long Li <longli@xxxxxxxxxxxxx>
> >> Subject: Re: [Patch v3 02/19] CIFS: SMBD: Add SMBDirect protocol and
> >> transport constants
> >>
> >> 2017-08-29 12:28 GMT-07:00 Long Li <longli@xxxxxxxxxxxxxxxxxxxxxx>:
> >> > From: Long Li <longli@xxxxxxxxxxxxx>
> >> >
> >> > To prepare for protocol implementation, add constants and
> >> > user-configurable values in the SMBDirect protocol.
> >> >
> >> > Signed-off-by: Long Li <longli@xxxxxxxxxxxxx>
> >> > ---
> >> >  fs/cifs/smbdirect.c | 78
> >> > +++++++++++++++++++++++++++++++++++++++++++++++++++++
> >> >  fs/cifs/smbdirect.h | 20 ++++++++++++++
> >> >  2 files changed, 98 insertions(+)
> >> >  create mode 100644 fs/cifs/smbdirect.c  create mode 100644
> >> > fs/cifs/smbdirect.h
> >> >
> >> > diff --git a/fs/cifs/smbdirect.c b/fs/cifs/smbdirect.c new file
> >> > mode
> >> > 100644 index 0000000..d785bc1
> >> > --- /dev/null
> >> > +++ b/fs/cifs/smbdirect.c
> >> > @@ -0,0 +1,78 @@
> >> > +/*
> >> > + *   Copyright (C) 2017, Microsoft Corporation.
> >> > + *
> >> > + *   Author(s): Long Li <longli@xxxxxxxxxxxxx>
> >> > + *
> >> > + *   This program is free software;  you can redistribute it and/or modify
> >> > + *   it under the terms of the GNU General Public License as published
> by
> >> > + *   the Free Software Foundation; either version 2 of the License, or
> >> > + *   (at your option) any later version.
> >> > + *
> >> > + *   This program is distributed in the hope that it will be useful,
> >> > + *   but WITHOUT ANY WARRANTY;  without even the implied warranty
> of
> >> > + *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
> >> > + *   the GNU General Public License for more details.
> >> > + */
> >> > +#include <linux/module.h>
> >> > +#include "smbdirect.h"
> >> > +#include "cifs_debug.h"
> >> > +
> >> > +/* SMBD version number */
> >> > +#define SMBD_V1        0x0100
> >> > +
> >> > +/* Port numbers for SMBD transport */
> >> > +#define SMB_PORT       445
> >> > +#define SMBD_PORT      5445
> >> > +
> >> > +/* Address lookup and resolve timeout in ms */
> >> > +#define RDMA_RESOLVE_TIMEOUT   5000
> >> > +
> >> > +/* SMBD negotiation timeout in seconds */ #define
> >> > +SMBD_NEGOTIATE_TIMEOUT 120
> >> > +
> >> > +/* SMBD minimum receive size and fragmented sized defined in [MS-
> >> SMBD] */
> >> > +#define SMBD_MIN_RECEIVE_SIZE          128
> >> > +#define SMBD_MIN_FRAGMENTED_SIZE       131072
> >> > +
> >> > +/*
> >> > + * Default maximum number of RDMA read/write outstanding on this
> >> > +connection
> >> > + * This value is possibly decreased during QP creation on hardware
> >> > +limit  */
> >> > +#define SMBD_CM_RESPONDER_RESOURCES    32
> >> > +
> >> > +/* Maximum number of retries on data transfer operations */
> >> > +#define SMBD_CM_RETRY                  6
> >> > +/* No need to retry on Receiver Not Ready since SMBD manages
> >> > +credits
> >> */
> >> > +#define SMBD_CM_RNR_RETRY              0
> >> > +
> >> > +/*
> >> > + * User configurable initial values per SMBD transport connection
> >> > + * as defined in [MS-SMBD] 3.1.1.1
> >> > + * Those may change after a SMBD negotiation  */
> >>
> >> Since these value are per transport connection, why they are global?
> >> Shouldn't they be inside a some structure that is created for a
> >> particular connection? Also the constants below should be defines.
> >
> > Those are configurable initial values (default values) for all connections.
> >
> > Each connection has its own values based on those initial values. But
> connection-based values can change after negotiation is done, or after
> RDMA hardware capabilities are probed.
> 
> If these are configurable values, let's add a way to actually configure them.
> Through /proc?

You mean putting them in /proc/fs/cifs?

Or how about module_param?

> 
> --
> Best regards,
> Pavel Shilovsky
��.n��������+%������w��{.n�����{���fk��ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux