Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751888AbXKIIpc (ORCPT ); Fri, 9 Nov 2007 03:45:32 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751169AbXKIIpY (ORCPT ); Fri, 9 Nov 2007 03:45:24 -0500 Received: from wa-out-1112.google.com ([209.85.146.181]:8282 "EHLO wa-out-1112.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750966AbXKIIpX (ORCPT ); Fri, 9 Nov 2007 03:45:23 -0500 DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=rc5hjua0n1tx3ekWRSW4vCzHwsvtxJqkVxMgmFF6g+yomhxb1x5IZVkaNOfjwW6W1fkeq3c6KofdYraHDLZ84VGoUtgkCzoz9S3+YZ+J2G+tVi0aTG7aFbM1F9nyV2lpkLI6k7ooLTzxCUIKwpwOcSbPspsD07LxjupgnanIVAk= Message-ID: Date: Fri, 9 Nov 2007 09:45:21 +0100 From: "Dmitry Adamushko" To: vatsa@linux.vnet.ibm.com Subject: Re: [BUG]: Crash with CONFIG_FAIR_CGROUP_SCHED=y Cc: sukadev@us.ibm.com, balbir@in.ibm.com, Containers , ckrm-tech@lists.sourceforge.net, linux-kernel@vger.kernel.org, dhaval@linux.vnet.ibm.com, "Ingo Molnar" , efault@gmx.de In-Reply-To: <20071109070214.GO3143@linux.vnet.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <20071108234805.GA2240@us.ibm.com> <20071109070214.GO3143@linux.vnet.ibm.com> Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1635 Lines: 53 Hi Srivatsa, > [ ... ] > -- > > current task is not present in its runqueue in case of sched_fair class > tasks. Take care of this fact in rt_mutex_setprio(), > sched_setscheduler() and sched_move_task() routines. > > Signed-off-by : Srivatsa Vaddagiri > > > --- > kernel/sched.c | 45 +++++++++++++++++++++++++-------------------- > 1 files changed, 25 insertions(+), 20 deletions(-) > > Index: current/kernel/sched.c > =================================================================== > --- current.orig/kernel/sched.c > +++ current/kernel/sched.c > @@ -3986,11 +3986,13 @@ void rt_mutex_setprio(struct task_struct > oldprio = p->prio; > on_rq = p->se.on_rq; > running = task_running(rq, p); > - if (on_rq) { > + if (on_rq) > dequeue_task(rq, p, 0); > - if (running) > - p->sched_class->put_prev_task(rq, p); > - } > + /* current task is not kept in its runqueue in case of sched_fair class. > + * Hence we need the 'on_rq?' and 'running?' tests to be separate. Humm... the 'current' is not kept within the tree but current->se.on_rq is supposed to be '1' , so the old code looks ok to me (at least for the 'leaf' elements). Maybe you were able to get more useful oops on your site? > -- > Regards, > vatsa > -- Best regards, Dmitry Adamushko - 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/