[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <a8e1da0707200309n377eca1fwa640eeceb920959b@mail.gmail.com>
Date: Fri, 20 Jul 2007 10:09:10 +0000
From: "Dave Young" <hidave.darkstar@...il.com>
To: "Denis Cheng" <crquan@...il.com>
Cc: "Miklos Szeredi" <miklos@...redi.hu>,
fuse-devel@...ts.sourceforge.net, viro@...iv.linux.org.uk,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] fs/fuse/dev.c: use zero_user_page instead
>On 7/20/07, Denis Cheng <crquan@...il.com> wrote:
> Signed-off-by: Denis Cheng <crquan@...il.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@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists