RE: [[PATCH v1] 04/37] [CIFS] SMBD: Define per-channel SMBD transport parameters and default values
> -Original Message- > From: Tom Talpey > Sent: Monday, August 14, 2017 12:29 PM > To: Christoph Hellwig <h...@infradead.org>; Long Li <lon...@microsoft.com> > Cc: Steve French <sfre...@samba.org>; linux-c...@vger.kernel.org; samba- > techni...@lists.samba.org; linux-kernel@vger.kernel.org > Subject: RE: [[PATCH v1] 04/37] [CIFS] SMBD: Define per-channel SMBD > transport parameters and default values > > > -Original Message- > > From: linux-cifs-ow...@vger.kernel.org [mailto:linux-cifs- > > ow...@vger.kernel.org] On Behalf Of Christoph Hellwig > > Sent: Sunday, August 13, 2017 6:12 AM > > To: Long Li <lon...@microsoft.com> > > Cc: Steve French <sfre...@samba.org>; linux-c...@vger.kernel.org; > > samba- techni...@lists.samba.org; linux-kernel@vger.kernel.org; Long > > Li <lon...@microsoft.com> > > Subject: Re: [[PATCH v1] 04/37] [CIFS] SMBD: Define per-channel SMBD > > transport parameters and default values > > > > > +/* > > > + * Per RDMA transport connection parameters > > > + * as defined in [MS-SMBD] 3.1.1.1 > > > + */ > > > +static int receive_credit_max = 512; static int send_credit_target > > > += 512; static int max_send_size = 8192; static int > > > +max_fragmented_recv_size = 1024*1024; static int max_receive_size = > > > +8192; > > > > Are these protocol constants? If so please use either #defines or > > enums with upper case names for them. > > These are not defined constants, but the values beg for some explanatory > text why they are chosen. Windows uses, and negotiates by default, a 1364- > byte maximum send size, and caps credits to 255. The other values match. > > BTW, the parameters are defined in MS-SMBD 3.1.1.1 but the chosen values > are in behavior notes 2 and 7. I will change those values to more inline with what Windows choses. The different values don't have a visible impact to performance while RDMA read/write is used. > > Tom.
RE: [[PATCH v1] 04/37] [CIFS] SMBD: Define per-channel SMBD transport parameters and default values
> -Original Message- > From: Tom Talpey > Sent: Monday, August 14, 2017 12:29 PM > To: Christoph Hellwig ; Long Li > Cc: Steve French ; linux-c...@vger.kernel.org; samba- > techni...@lists.samba.org; linux-kernel@vger.kernel.org > Subject: RE: [[PATCH v1] 04/37] [CIFS] SMBD: Define per-channel SMBD > transport parameters and default values > > > -Original Message- > > From: linux-cifs-ow...@vger.kernel.org [mailto:linux-cifs- > > ow...@vger.kernel.org] On Behalf Of Christoph Hellwig > > Sent: Sunday, August 13, 2017 6:12 AM > > To: Long Li > > Cc: Steve French ; linux-c...@vger.kernel.org; > > samba- techni...@lists.samba.org; linux-kernel@vger.kernel.org; Long > > Li > > Subject: Re: [[PATCH v1] 04/37] [CIFS] SMBD: Define per-channel SMBD > > transport parameters and default values > > > > > +/* > > > + * Per RDMA transport connection parameters > > > + * as defined in [MS-SMBD] 3.1.1.1 > > > + */ > > > +static int receive_credit_max = 512; static int send_credit_target > > > += 512; static int max_send_size = 8192; static int > > > +max_fragmented_recv_size = 1024*1024; static int max_receive_size = > > > +8192; > > > > Are these protocol constants? If so please use either #defines or > > enums with upper case names for them. > > These are not defined constants, but the values beg for some explanatory > text why they are chosen. Windows uses, and negotiates by default, a 1364- > byte maximum send size, and caps credits to 255. The other values match. > > BTW, the parameters are defined in MS-SMBD 3.1.1.1 but the chosen values > are in behavior notes 2 and 7. I will change those values to more inline with what Windows choses. The different values don't have a visible impact to performance while RDMA read/write is used. > > Tom.
RE: [[PATCH v1] 04/37] [CIFS] SMBD: Define per-channel SMBD transport parameters and default values
> -Original Message- > From: linux-cifs-ow...@vger.kernel.org [mailto:linux-cifs- > ow...@vger.kernel.org] On Behalf Of Christoph Hellwig > Sent: Sunday, August 13, 2017 6:12 AM > To: Long Li <lon...@microsoft.com> > Cc: Steve French <sfre...@samba.org>; linux-c...@vger.kernel.org; samba- > techni...@lists.samba.org; linux-kernel@vger.kernel.org; Long Li > <lon...@microsoft.com> > Subject: Re: [[PATCH v1] 04/37] [CIFS] SMBD: Define per-channel SMBD > transport parameters and default values > > > +/* > > + * Per RDMA transport connection parameters > > + * as defined in [MS-SMBD] 3.1.1.1 > > + */ > > +static int receive_credit_max = 512; > > +static int send_credit_target = 512; > > +static int max_send_size = 8192; > > +static int max_fragmented_recv_size = 1024*1024; > > +static int max_receive_size = 8192; > > Are these protocol constants? If so please use either #defines > or enums with upper case names for them. These are not defined constants, but the values beg for some explanatory text why they are chosen. Windows uses, and negotiates by default, a 1364-byte maximum send size, and caps credits to 255. The other values match. BTW, the parameters are defined in MS-SMBD 3.1.1.1 but the chosen values are in behavior notes 2 and 7. Tom.
RE: [[PATCH v1] 04/37] [CIFS] SMBD: Define per-channel SMBD transport parameters and default values
> -Original Message- > From: linux-cifs-ow...@vger.kernel.org [mailto:linux-cifs- > ow...@vger.kernel.org] On Behalf Of Christoph Hellwig > Sent: Sunday, August 13, 2017 6:12 AM > To: Long Li > Cc: Steve French ; linux-c...@vger.kernel.org; samba- > techni...@lists.samba.org; linux-kernel@vger.kernel.org; Long Li > > Subject: Re: [[PATCH v1] 04/37] [CIFS] SMBD: Define per-channel SMBD > transport parameters and default values > > > +/* > > + * Per RDMA transport connection parameters > > + * as defined in [MS-SMBD] 3.1.1.1 > > + */ > > +static int receive_credit_max = 512; > > +static int send_credit_target = 512; > > +static int max_send_size = 8192; > > +static int max_fragmented_recv_size = 1024*1024; > > +static int max_receive_size = 8192; > > Are these protocol constants? If so please use either #defines > or enums with upper case names for them. These are not defined constants, but the values beg for some explanatory text why they are chosen. Windows uses, and negotiates by default, a 1364-byte maximum send size, and caps credits to 255. The other values match. BTW, the parameters are defined in MS-SMBD 3.1.1.1 but the chosen values are in behavior notes 2 and 7. Tom.
Re: [[PATCH v1] 04/37] [CIFS] SMBD: Define per-channel SMBD transport parameters and default values
> +/* > + * Per RDMA transport connection parameters > + * as defined in [MS-SMBD] 3.1.1.1 > + */ > +static int receive_credit_max = 512; > +static int send_credit_target = 512; > +static int max_send_size = 8192; > +static int max_fragmented_recv_size = 1024*1024; > +static int max_receive_size = 8192; Are these protocol constants? If so please use either #defines or enums with upper case names for them. > +// maximum number of SGEs in a RDMA I/O Please always use /* ... */ style comments in the kernel.
Re: [[PATCH v1] 04/37] [CIFS] SMBD: Define per-channel SMBD transport parameters and default values
> +/* > + * Per RDMA transport connection parameters > + * as defined in [MS-SMBD] 3.1.1.1 > + */ > +static int receive_credit_max = 512; > +static int send_credit_target = 512; > +static int max_send_size = 8192; > +static int max_fragmented_recv_size = 1024*1024; > +static int max_receive_size = 8192; Are these protocol constants? If so please use either #defines or enums with upper case names for them. > +// maximum number of SGEs in a RDMA I/O Please always use /* ... */ style comments in the kernel.