[[PATCH v1] 15/37] [CIFS] SMBD: Post a SMBD data transfer message with data payload
longli at microsoft.com
Wed Aug 30 02:17:56 UTC 2017
> -----Original Message-----
> From: Christoph Hellwig [mailto:hch at infradead.org]
> Sent: Sunday, August 13, 2017 3:24 AM
> To: Long Li <longli at microsoft.com>
> Cc: Steve French <sfrench at samba.org>; linux-cifs at vger.kernel.org; samba-
> technical at lists.samba.org; linux-kernel at vger.kernel.org; Long Li
> <longli at microsoft.com>
> Subject: Re: [[PATCH v1] 15/37] [CIFS] SMBD: Post a SMBD data transfer
> message with data payload
> You can always get the struct page for kernel allocations using virt_to_page
> (or vmalloc_to_page, but this code would not handle the vmalloc case either),
> so I don't think you need this helper and can always use the one added in the
> previous patch.
I partially addressed this issue in the V3 patch. Most of the duplicate code on sending path is merged.
The difficulty with translating the buffer to pages is that: I don't know how many pages will be translated, and how many struct page I need to allocate in advance to hold them. I try to avoid memory allocation in the I/O path as much as possible. So I keep two functions of sending data: one for buffer and one for pages.
More information about the samba-technical