Re: [PATCH] fs/fuse/dev.c: use zero_user_page instead

From: Dave Young
Date: Fri Jul 20 2007 - 06:09:29 EST


On 7/20/07, Denis Cheng <crquan@xxxxxxxxx> wrote:
Signed-off-by: Denis Cheng <crquan@xxxxxxxxx>
---
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@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/