Re: [RFC][PATCH v5 05/14] sched: add a packing level knob

From: Vincent Guittot
Date: Tue Nov 12 2013 - 05:44:22 EST


On 12 November 2013 11:32, Peter Zijlstra <peterz@xxxxxxxxxxxxx> 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.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/