From 62a9821627baaa284e3f44e3aedb5e16cff69f48 Mon Sep 17 00:00:00 2001 From: Phil Sutter Date: Mon, 16 Jul 2012 15:10:12 +0200 Subject: [PATCH] no need to hold mm->mmap_sem in write lock As other examples show, read lock suffices although pages are being written later on. Signed-off-by: Phil Sutter --- zc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/zc.c b/zc.c index db28b58..884dbab 100644 --- a/zc.c +++ b/zc.c @@ -58,10 +58,10 @@ int __get_userbuf(uint8_t __user *addr, uint32_t len, int write, return 0; } - down_write(&mm->mmap_sem); + down_read(&mm->mmap_sem); ret = get_user_pages(task, mm, (unsigned long)addr, pgcount, write, 0, pg, NULL); - up_write(&mm->mmap_sem); + up_read(&mm->mmap_sem); if (ret != pgcount) return -EINVAL; -- 2.11.4.GIT