merged into cifs-2.6.git for-next pending testing On Thu, Dec 29, 2022 at 4:38 PM Fabio M. De Francesco <fmdefrancesco@xxxxxxxxx> wrote: > > On giovedì 29 dicembre 2022 23:04:46 CET Ira Weiny wrote: > > kmap_local_page() requires kunmap_local() to unmap the mapping. In > > addition memcpy_page() is provided to perform this common memcpy > > pattern. > > > > Replace the kmap_local_page() and broken kunmap() with memcpy_page() > > > > Fixes: d406d26745ab ("cifs: skip alloc when request has no pages") > > Cc: Paulo Alcantara <pc@xxxxxx> > > Cc: Steve French <sfrench@xxxxxxxxx> > > Cc: "Fabio M. De Francesco" <fmdefrancesco@xxxxxxxxx> > > Cc: linux-cifs@xxxxxxxxxxxxxxx > > Cc: samba-technical@xxxxxxxxxxxxxxx > > Signed-off-by: Ira Weiny <ira.weiny@xxxxxxxxx> > > --- > > fs/cifs/smb2ops.c | 9 ++------- > > 1 file changed, 2 insertions(+), 7 deletions(-) > > > > diff --git a/fs/cifs/smb2ops.c b/fs/cifs/smb2ops.c > > index dc160de7a6de..0d7e9bcd9f34 100644 > > --- a/fs/cifs/smb2ops.c > > +++ b/fs/cifs/smb2ops.c > > @@ -4488,17 +4488,12 @@ smb3_init_transform_rq(struct TCP_Server_Info > *server, > > int num_rqst, > > > > /* copy pages form the old */ > > for (j = 0; j < npages; j++) { > > - char *dst, *src; > > unsigned int offset, len; > > > > rqst_page_get_length(new, j, &len, &offset); > > > > - dst = kmap_local_page(new->rq_pages[j]) + > offset; > > - src = kmap_local_page(old->rq_pages[j]) + > offset; > > - > > - memcpy(dst, src, len); > > - kunmap(new->rq_pages[j]); > > - kunmap(old->rq_pages[j]); > > + memcpy_page(new->rq_pages[j], offset, > > + old->rq_pages[j], offset, len); > > > FWIW, it looks good to me... > > Reviewed-by: Fabio M. De Francesco > > Thanks, > > Fabio > > } > > } > > > > > > --- > > base-commit: 1b929c02afd37871d5afb9d498426f83432e71c2 > > change-id: 20221229-cifs-kmap-6700dabafcdf > > > > Best regards, > > -- > > Ira Weiny <ira.weiny@xxxxxxxxx> > > > -- Thanks, Steve