Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756757Ab3CTLLv (ORCPT ); Wed, 20 Mar 2013 07:11:51 -0400 Received: from merlin.infradead.org ([205.233.59.134]:36489 "EHLO merlin.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755465Ab3CTLLu (ORCPT ); Wed, 20 Mar 2013 07:11:50 -0400 Message-ID: <1363777891.2612.7.camel@laptop> Subject: Re: [PATCH 4/8] sched: clean up move_task() and move_one_task() From: Peter Zijlstra To: Joonsoo Kim Cc: Ingo Molnar , Srivatsa Vaddagiri , linux-kernel@vger.kernel.org Date: Wed, 20 Mar 2013 12:11:31 +0100 In-Reply-To: <20130320073355.GC11672@lge.com> References: <1360820921-2513-1-git-send-email-iamjoonsoo.kim@lge.com> <1360820921-2513-5-git-send-email-iamjoonsoo.kim@lge.com> <1363703415.22553.54.camel@laptop> <20130320073355.GC11672@lge.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.6.2-0ubuntu0.1 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1945 Lines: 43 On Wed, 2013-03-20 at 16:33 +0900, Joonsoo Kim wrote: > > Right, so I'm not so taken with this one. The whole load stuff really > > is a balance heuristic that's part of move_tasks(), move_one_task() > > really doesn't care about that. > > > > So why did you include it? Purely so you didn't have to re-order the > > tests? I don't see any reason not to flip a tests around. > > I think that I'm not fully understand what you are concerning, because of > my poor English. If possible, please elaborate on a problem in more detail. OK, so your initial Changelog said it wanted to remove some code duplication between move_tasks() and move_one_task(); but then you put in the load heuristics and add a boolean argument to only enable those for move_tasks() -- so clearly that wasn't duplicated. So why move that code.. I proposed that this was due a reluctance to re-arrange the various tests that stop the migration from happening. Now you say: > ... Just moving up can_migrate_task() above > load evaluation code may raise side effect, because can_migrate_task() have > other checking which is 'cache hottness'. I don't want a side effect. So > embedding load evaluation to can_migrate_task() and re-order checking and > makes load evaluation disabled for move_one_task(). Which pretty much affirms this. However I also said that I don't think the order really matters that much; each test will cancel the migration of this task; the order of these tests seem immaterial. > If your recommandation is to move up can_mirate_task() above > load evaluation code, yes, I can, and will do that. :) I would actually propose moving the throttled test into can_migrate_task() and leave it at that. -- 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/