Re: [PATCH 2/2] ksmbd: smbd: change the default maximum read/write, receive size

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

 



2022년 1월 18일 (화) 오전 8:33, Namjae Jeon <linkinjeon@xxxxxxxxxx>님이 작성:
>
> 2022-01-10 10:37 GMT+09:00, Hyunchul Lee <hyc.lee@xxxxxxxxx>:
> > 2022년 1월 9일 (일) 오후 9:56, Namjae Jeon <linkinjeon@xxxxxxxxxx>님이 작성:
> >>
> >> 2022-01-09 15:44 GMT+09:00, Steve French <smfrench@xxxxxxxxx>:
> >> > Do you have more detail on what the negotiated readsize/writesize
> >> > would be for Windows clients with this size? for Linux clients?
> >> Hyunchul, Please answer.
> >>
> >
> > For a Linux client, if connected using smb-direct,
> > the size will be 1048512. But connected with multichannel,
> > the size will be 4MB instead of 1048512. And this causes
> > problems because the read/write size is bigger than 1048512.
> > It looks like a bug. I have to limit the ksmbd's SMB2 maximum
> > read/write size for a test.
> >
> > For Windows clients, the actual read/write size is less than
> > 1048512.
> In the case of my Chelsio device, Need to set it to about
> 512K(512*1024 - 64) for it to work.
> The 1048512 value seems insufficient to cover all devices. Is there
> any other way to set the minimum read/write value? Calibrate this
> minimum value by looking at
> the device information? For example variables in ib_dev->attrs.
>

Let me check it. But I think multiple buffer descriptors caused
this problem. because of a client's device limitation, a client
seems to send a read/write request with multiple buffer descriptors
for sending 1048512 bytes.

To check this assumption, can you tell me the buffer descriptors'
content when the default read/write size is 1048512?

> >
> >> >
> >> > It looked like it would still be 4MB at first glance (although in
> >> > theory some Windows could do 8MB) ... I may have missed something
> >> I understood that multiple-buffer descriptor support was required to
> >> set a read/write size of 1MB or more. As I know, Hyunchul is currently
> >> working on it.
> >> It seems to be set to the smaller of max read/write size in smb-direct
> >> negotiate and max read/write size in smb2 negotiate.
> >>
> >> Hyunchul, I have one question more, How did you get 1048512 setting value
> >> ?
> >> >
> >
> > I remember when the size was 1MB, Windows clients requested read/write with
> > 1048512 and 64.
> >
> >> > On Sat, Jan 8, 2022 at 8:43 PM Namjae Jeon <linkinjeon@xxxxxxxxxx>
> >> > wrote:
> >> >>
> >> >> 2022-01-07 14:45 GMT+09:00, Hyunchul Lee <hyc.lee@xxxxxxxxx>:
> >> >> > Due to restriction that cannot handle multiple
> >> >> > buffer descriptor structures, decrease the maximum
> >> >> > read/write size for Windows clients.
> >> >> >
> >> >> > And set the maximum fragmented receive size
> >> >> > in consideration of the receive queue size.
> >> >> >
> >> >> > Signed-off-by: Hyunchul Lee <hyc.lee@xxxxxxxxx>
> >> >> Acked-by: Namjae Jeon <linkinjeon@xxxxxxxxxx>
> >> >
> >> >
> >> >
> >> > --
> >> > Thanks,
> >> >
> >> > Steve
> >> >
> >
> >
> >
> > --
> > Thanks,
> > Hyunchul
> >



-- 
Thanks,
Hyunchul




[Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux