Messages in this thread | | | Date | Fri, 20 Jul 2007 10:09:10 +0000 | From | "Dave Young" <> | Subject | Re: [PATCH] fs/fuse/dev.c: use zero_user_page instead |
| |
>On 7/20/07, Denis Cheng <crquan@gmail.com> wrote: > Signed-off-by: Denis Cheng <crquan@gmail.com> > --- > I'm not very sure zero_user_page is correctly used here, > so please feel free to give comments. > > and why here it uses KM_USER1 not KM_USER0, What are the differences? > > fs/fuse/dev.c | 8 +++----- > 1 files changed, 3 insertions(+), 5 deletions(-) > > diff --git a/fs/fuse/dev.c b/fs/fuse/dev.c > index 3ad22be..e55b5e8 100644 > --- a/fs/fuse/dev.c > +++ b/fs/fuse/dev.c > @@ -533,11 +533,9 @@ static int fuse_copy_do(struct fuse_copy_state *cs, void **val, unsigned *size) > static int fuse_copy_page(struct fuse_copy_state *cs, struct page *page, > unsigned offset, unsigned count, int zeroing) > { > - if (page && zeroing && count < PAGE_SIZE) { > - void *mapaddr = kmap_atomic(page, KM_USER1); > - memset(mapaddr, 0, PAGE_SIZE); > - kunmap_atomic(mapaddr, KM_USER1); > - } > + if (page && zeroing && count < PAGE_SIZE) > + zero_user_page(page, 0, PAGE_SIZE, KM_USER1); Why clear all page? IMHO,only count bytes need to be cleared. > + > while (count) { > int err; > if (!cs->len && (err = fuse_copy_fill(cs))) - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |