From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754224Ab3KLKoT (ORCPT ); Tue, 12 Nov 2013 05:44:19 -0500 Received: from mail-bk0-f50.google.com ([209.85.214.50]:57740 "EHLO mail-bk0-f50.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752409Ab3KLKoR (ORCPT ); Tue, 12 Nov 2013 05:44:17 -0500 MIME-Version: 1.0 In-Reply-To: <20131112103228.GE4971@laptop.programming.kicks-ass.net> References: <1382097147-30088-1-git-send-email-vincent.guittot@linaro.org> <1382097147-30088-5-git-send-email-vincent.guittot@linaro.org> <20131112103228.GE4971@laptop.programming.kicks-ass.net> Date: Tue, 12 Nov 2013 11:44:15 +0100 Message-ID: Subject: Re: [RFC][PATCH v5 05/14] sched: add a packing level knob From: Vincent Guittot To: Peter Zijlstra Cc: linux-kernel , Ingo Molnar , Paul Turner , Morten Rasmussen , "cmetcalf@tilera.com" , "tony.luck@intel.com" , Alex Shi , Preeti U Murthy , "linaro-kernel@lists.linaro.org" , "Rafael J. Wysocki" , Paul McKenney , Jonathan Corbet , Thomas Gleixner , Len Brown , Arjan van de Ven , Amit Kucheria , Lukasz Majewski Content-Type: text/plain; charset=ISO-8859-1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 12 November 2013 11:32, Peter Zijlstra wrote: > On Fri, Oct 18, 2013 at 01:52:18PM +0200, Vincent Guittot wrote: >> +int sched_proc_update_packing(struct ctl_table *table, int write, >> + void __user *buffer, size_t *lenp, >> + loff_t *ppos) >> +{ >> + int ret = proc_dointvec_minmax(table, write, buffer, lenp, ppos); >> + if (ret || !write) >> + return ret; >> + >> + if (sysctl_sched_packing_level) >> + sd_pack_threshold = (100 * 1024) / sysctl_sched_packing_level; >> + >> + return 0; >> +} > >> +#ifdef CONFIG_SCHED_PACKING_TASKS >> +static int min_sched_packing_level; >> +static int max_sched_packing_level = 100; >> +#endif /* CONFIG_SMP */ > >> +#ifdef CONFIG_SCHED_PACKING_TASKS >> + { >> + .procname = "sched_packing_level", >> + .data = &sysctl_sched_packing_level, >> + .maxlen = sizeof(int), >> + .mode = 0644, >> + .proc_handler = sched_proc_update_packing, >> + .extra1 = &min_sched_packing_level, >> + .extra2 = &max_sched_packing_level, >> + }, >> +#endif > > Shouldn't min_sched_packing_level be 1? Userspace can now write 0 and > expect something; but then we don't update sd_pack_threshold so nothing > really changed. value 0 is used to disable to packing feature and the scheduler falls back to default behavior. This value is tested when setting which cpus will be used by the scheduler.