From mboxrd@z Thu Jan 1 00:00:00 1970 From: Li Zefan Subject: Re: [PATCH] cgroup: remove extra calls to find_existing_css_set Date: Mon, 30 Jan 2012 15:00:35 +0800 Message-ID: <4F264013.1040603@cn.fujitsu.com> References: <1327429591-8507-1-git-send-email-msb@chromium.org> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1327429591-8507-1-git-send-email-msb-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: containers-bounces-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org Errors-To: containers-bounces-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org To: Mandeep Singh Baines Cc: Frederic Weisbecker , containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Oleg Nesterov , Tejun Heo , cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Andrew Morton , Paul Menage List-Id: containers.vger.kernel.org Mandeep Singh Baines wrote: > In cgroup_attach_proc, we indirectly call find_existing_css_set 3 > times. It is an expensive call so we want to call it a minimum > of times. This patch only calls it once and stores the result so > that it can be used later on when we call cgroup_task_migrate. > > This required modifying cgroup_task_migrate to take the new css_set > (which we obtained from find_css_set) as a parameter. The nice side > effect of this is that cgroup_task_migrate is now identical for > cgroup_attach_task and cgroup_attach_proc. It also now returns a > void since it can never fail. > > Changes in V5: > * https://lkml.org/lkml/2012/1/20/344 (Tejun Heo) > * Remove css_set_refs > Changes in V4: > * https://lkml.org/lkml/2011/12/22/421 (Li Zefan) > * Avoid GFP_KERNEL (sleep) in rcu_read_lock by getting css_set in > a separate loop not under an rcu_read_lock > Changes in V3: > * https://lkml.org/lkml/2011/12/22/13 (Li Zefan) > * Fixed earlier bug by creating a seperate patch to remove tasklist_lock > Changes in V2: > * https://lkml.org/lkml/2011/12/20/372 (Tejun Heo) > * Move find_css_set call into loop which creates the flex array > * Author > * Kill css_set_refs and use group_size instead > * Fix an off-by-one error in counting css_set refs > * Add a retval check in out_list_teardown > > Signed-off-by: Mandeep Singh Baines Please add my ack in your changelog when you update the patch. > Cc: Tejun Heo > Cc: Li Zefan > Cc: containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org > Cc: cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org > Cc: KAMEZAWA Hiroyuki > Cc: Frederic Weisbecker > Cc: Oleg Nesterov > Cc: Andrew Morton > Cc: Paul Menage > --- > kernel/cgroup.c | 143 +++++++++++-------------------------------------------- > 1 files changed, 28 insertions(+), 115 deletions(-)