From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751833Ab0ELHTd (ORCPT ); Wed, 12 May 2010 03:19:33 -0400 Received: from cn.fujitsu.com ([222.73.24.84]:64443 "EHLO song.cn.fujitsu.com" rhost-flags-OK-FAIL-OK-OK) by vger.kernel.org with ESMTP id S1750912Ab0ELHTc (ORCPT ); Wed, 12 May 2010 03:19:32 -0400 Message-ID: <4BEA56D3.6040705@cn.fujitsu.com> Date: Wed, 12 May 2010 15:20:51 +0800 From: Miao Xie Reply-To: miaox@cn.fujitsu.com User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.1.9) Gecko/20100317 Thunderbird/3.0.4 MIME-Version: 1.0 To: Andrew Morton , David Rientjes , Lee Schermerhorn , Nick Piggin , Paul Menage CC: Linux-Kernel , Linux-MM Subject: [PATCH -mm] cpuset,mm: fix no node to alloc memory when changing cpuset's mems - fix2 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org - cleanup unnecessary header file - fix the race between set_mempolicy() and cpuset_change_task_nodemask() Signed-off-by: Miao Xie --- kernel/cpuset.c | 3 +-- kernel/exit.c | 1 - kernel/fork.c | 1 - 3 files changed, 1 insertions(+), 4 deletions(-) diff --git a/kernel/cpuset.c b/kernel/cpuset.c index 30cb9a2..d243a22 100644 --- a/kernel/cpuset.c +++ b/kernel/cpuset.c @@ -963,7 +963,6 @@ repeat: task_lock(tsk); nodes_or(tsk->mems_allowed, tsk->mems_allowed, *newmems); mpol_rebind_task(tsk, newmems, MPOL_REBIND_STEP1); - task_unlock(tsk); /* @@ -985,6 +984,7 @@ repeat: * for the read-side. */ while (ACCESS_ONCE(tsk->mems_allowed_change_disable)) { + task_unlock(tsk); if (!task_curr(tsk)) yield(); goto repeat; @@ -999,7 +999,6 @@ repeat: */ smp_mb(); - task_lock(tsk); mpol_rebind_task(tsk, newmems, MPOL_REBIND_STEP2); tsk->mems_allowed = *newmems; task_unlock(tsk); diff --git a/kernel/exit.c b/kernel/exit.c index 41bc5b2..0ecb17b 100644 --- a/kernel/exit.c +++ b/kernel/exit.c @@ -16,7 +16,6 @@ #include #include #include -#include #include #include #include diff --git a/kernel/fork.c b/kernel/fork.c index 6e87c95..f4f0951 100644 --- a/kernel/fork.c +++ b/kernel/fork.c @@ -31,7 +31,6 @@ #include #include #include -#include #include #include #include -- 1.6.5.2 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail144.messagelabs.com (mail144.messagelabs.com [216.82.254.51]) by kanga.kvack.org (Postfix) with SMTP id 8FBAD6B0205 for ; Wed, 12 May 2010 03:19:33 -0400 (EDT) Message-ID: <4BEA56D3.6040705@cn.fujitsu.com> Date: Wed, 12 May 2010 15:20:51 +0800 From: Miao Xie Reply-To: miaox@cn.fujitsu.com MIME-Version: 1.0 Subject: [PATCH -mm] cpuset,mm: fix no node to alloc memory when changing cpuset's mems - fix2 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Sender: owner-linux-mm@kvack.org To: Andrew Morton , David Rientjes , Lee Schermerhorn , Nick Piggin , Paul Menage Cc: Linux-Kernel , Linux-MM List-ID: - cleanup unnecessary header file - fix the race between set_mempolicy() and cpuset_change_task_nodemask() Signed-off-by: Miao Xie --- kernel/cpuset.c | 3 +-- kernel/exit.c | 1 - kernel/fork.c | 1 - 3 files changed, 1 insertions(+), 4 deletions(-) diff --git a/kernel/cpuset.c b/kernel/cpuset.c index 30cb9a2..d243a22 100644 --- a/kernel/cpuset.c +++ b/kernel/cpuset.c @@ -963,7 +963,6 @@ repeat: task_lock(tsk); nodes_or(tsk->mems_allowed, tsk->mems_allowed, *newmems); mpol_rebind_task(tsk, newmems, MPOL_REBIND_STEP1); - task_unlock(tsk); /* @@ -985,6 +984,7 @@ repeat: * for the read-side. */ while (ACCESS_ONCE(tsk->mems_allowed_change_disable)) { + task_unlock(tsk); if (!task_curr(tsk)) yield(); goto repeat; @@ -999,7 +999,6 @@ repeat: */ smp_mb(); - task_lock(tsk); mpol_rebind_task(tsk, newmems, MPOL_REBIND_STEP2); tsk->mems_allowed = *newmems; task_unlock(tsk); diff --git a/kernel/exit.c b/kernel/exit.c index 41bc5b2..0ecb17b 100644 --- a/kernel/exit.c +++ b/kernel/exit.c @@ -16,7 +16,6 @@ #include #include #include -#include #include #include #include diff --git a/kernel/fork.c b/kernel/fork.c index 6e87c95..f4f0951 100644 --- a/kernel/fork.c +++ b/kernel/fork.c @@ -31,7 +31,6 @@ #include #include #include -#include #include #include #include -- 1.6.5.2 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org