Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S261642AbVEMVeQ (ORCPT ); Fri, 13 May 2005 17:34:16 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S262492AbVEMVbA (ORCPT ); Fri, 13 May 2005 17:31:00 -0400 Received: from orb.pobox.com ([207.8.226.5]:7882 "EHLO orb.pobox.com") by vger.kernel.org with ESMTP id S261642AbVEMV1y (ORCPT ); Fri, 13 May 2005 17:27:54 -0400 Date: Fri, 13 May 2005 16:27:45 -0500 From: Nathan Lynch To: Dinakar Guniguntala Cc: Paul Jackson , Simon.Derr@bull.net, lse-tech@lists.sourceforge.net, Andrew Morton , Nick Piggin , V Srivatsa , lkml Subject: Re: [Lse-tech] Re: [PATCH] cpusets+hotplug+preepmt broken Message-ID: <20050513212745.GJ3614@otto> References: <20050511191654.GA3916@in.ibm.com> <20050511195156.GE3614@otto> <20050513123216.GB3968@in.ibm.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20050513123216.GB3968@in.ibm.com> User-Agent: Mutt/1.5.6+20040907i Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1152 Lines: 27 On Fri, May 13, 2005 at 06:02:17PM +0530, Dinakar Guniguntala wrote: > On Wed, May 11, 2005 at 02:51:56PM -0500, Nathan Lynch wrote: > > > This trace is what should be fixed -- we're trying to schedule while > > the machine is "stopped" (all cpus except for one spinning with > > interrupts off). I'm not too familiar with the cpusets code but I > > would like to stay away from nesting these semaphores if at all > > possible. > > Vatsa pointed out another scenario where cpusets+hotplug is currently > broken. attach_task in cpuset.c is called without holding the hotplug > lock and it is possible to call set_cpus_allowed for a task with no > online cpus. > Given this I think the patch I sent first is the most appropriate > patch. Your original patch is deadlocky since cpuset_cpus_allowed() does task_lock() while write_lock_irq(&tasklist_lock) is already held by migrate_live_tasks(). Nathan - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/