From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1763870AbcINQLM (ORCPT ); Wed, 14 Sep 2016 12:11:12 -0400 Received: from bombadil.infradead.org ([198.137.202.9]:49133 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756775AbcINQLL (ORCPT ); Wed, 14 Sep 2016 12:11:11 -0400 Date: Wed, 14 Sep 2016 18:11:03 +0200 From: Peter Zijlstra To: Arve =?iso-8859-1?B?SGr4bm5lduVn?= Cc: Greg Kroah-Hartman , Thomas Gleixner , "devel@driverdev.osuosl.org" , Riley Andrews , LKML , Christoph Hellwig , Todd Kjos Subject: Re: [PATCH] android: binder: Disable preemption while holding the global binder lock Message-ID: <20160914161103.GC5016@twins.programming.kicks-ass.net> References: <20160910161659.GA7987@infradead.org> <20160910162210.GK10153@twins.programming.kicks-ass.net> <20160910172843.GA17876@kroah.com> <20160913073259.GC5008@twins.programming.kicks-ass.net> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/1.5.23.1 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Sep 13, 2016 at 12:53:27PM -0700, Arve Hjønnevåg wrote: > On Tue, Sep 13, 2016 at 12:32 AM, Peter Zijlstra wrote: > > cgroups should be irrelevant, PI is unaware of them. > > I don't think cgroups are irrelevant. PI being unaware of them > explains the problem I described. If the task that holds the lock is > in a cgroup that has a low cpu.shares value, then boosting the task's > priority within that group does necessarily make it any more likely to > run. Thing is, for FIFO/DL the important parameters (prio and deadline resp.) are not cgroup dependent. For CFS you're right, and as per usual, cgroups will be a royal pain. While we can compute the total weight in the block chain, getting that back to a task which is stuck in a cgroup is just not going to work well. The only 'solution' I can come up with in a hurry is, when the task is boosted, move it to the root cgroup. That of course has a whole heap of problems all on its own. /me curses @ cgroups.. bloody stupid things.