From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tejun Heo Subject: Re: [PATCH v2] cgroup: Remove task_lock() from cgroup_post_fork() Date: Fri, 23 Dec 2011 15:00:13 -0800 Message-ID: <20111223230013.GV17084@google.com> References: <1324610723-30080-1-git-send-email-fweisbec@gmail.com> Mime-Version: 1.0 Return-path: DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=09zBcSkd4K9ouU8ySekwIXJo+0p8fNpGfGAfTr464S4=; b=c/PSo4RMHpUkovQ1XV/wsJP7ndU86hGxxgO7FgVvAR9341rhleWdM48+kmIeyevGT8 LghritekFWScHC960aI92BtJdpPzrmQi2hhZnwmECg4oGWcTJ0BwpMgOq08Kv+nEEuX+ zzEx3Giu4BlNmjpY1kogSW9tSxLG0uVBXpVpo= Content-Disposition: inline In-Reply-To: <1324610723-30080-1-git-send-email-fweisbec-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> Sender: cgroups-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org List-ID: Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Frederic Weisbecker Cc: Li Zefan , LKML , Containers , Cgroups , KAMEZAWA Hiroyuki , Oleg Nesterov , Andrew Morton , Paul Menage , Mandeep Singh Baines On Fri, Dec 23, 2011 at 04:25:23AM +0100, Frederic Weisbecker wrote: > cgroup_post_fork() is protected between threadgroup_change_begin() > and threadgroup_change_end() against concurrent changes of the > child's css_set in cgroup_task_migrate(). Also the child can't > exit and call cgroup_exit() at this stage, this means it's css_set > can't be changed with init_css_set concurrently. > > For these reasons, we don't need to hold task_lock() on the child > because it's css_set can only remain stable in this place. > > Let's remove the lock there. > > v2: Update comment to explain that we are safe against > cgroup_exit() > > Signed-off-by: Frederic Weisbecker > Cc: Li Zefan > Cc: Tejun Heo > Cc: Containers > Cc: Cgroups > Cc: KAMEZAWA Hiroyuki > Cc: Oleg Nesterov > Cc: Andrew Morton > Cc: Paul Menage > Cc: Mandeep Singh Baines Li, does this look good to you? Thanks. -- tejun From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757960Ab1LWXAV (ORCPT ); Fri, 23 Dec 2011 18:00:21 -0500 Received: from mail-iy0-f174.google.com ([209.85.210.174]:50250 "EHLO mail-iy0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757914Ab1LWXAT (ORCPT ); Fri, 23 Dec 2011 18:00:19 -0500 Date: Fri, 23 Dec 2011 15:00:13 -0800 From: Tejun Heo To: Frederic Weisbecker Cc: Li Zefan , LKML , Containers , Cgroups , KAMEZAWA Hiroyuki , Oleg Nesterov , Andrew Morton , Paul Menage , Mandeep Singh Baines Subject: Re: [PATCH v2] cgroup: Remove task_lock() from cgroup_post_fork() Message-ID: <20111223230013.GV17084@google.com> References: <1324610723-30080-1-git-send-email-fweisbec@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1324610723-30080-1-git-send-email-fweisbec@gmail.com> User-Agent: Mutt/1.5.20 (2009-06-14) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Dec 23, 2011 at 04:25:23AM +0100, Frederic Weisbecker wrote: > cgroup_post_fork() is protected between threadgroup_change_begin() > and threadgroup_change_end() against concurrent changes of the > child's css_set in cgroup_task_migrate(). Also the child can't > exit and call cgroup_exit() at this stage, this means it's css_set > can't be changed with init_css_set concurrently. > > For these reasons, we don't need to hold task_lock() on the child > because it's css_set can only remain stable in this place. > > Let's remove the lock there. > > v2: Update comment to explain that we are safe against > cgroup_exit() > > Signed-off-by: Frederic Weisbecker > Cc: Li Zefan > Cc: Tejun Heo > Cc: Containers > Cc: Cgroups > Cc: KAMEZAWA Hiroyuki > Cc: Oleg Nesterov > Cc: Andrew Morton > Cc: Paul Menage > Cc: Mandeep Singh Baines Li, does this look good to you? Thanks. -- tejun