Re: [RESEND PATCH v2 1/2] sched/deadline: Add cpudl_maximum_dl() for clean-up

From: Daniel Bristot de Oliveira
Date: Mon Nov 13 2017 - 06:00:23 EST


On 10/27/2017 10:38 AM, Byungchul Park wrote:
> On Tue, Oct 10, 2017 at 03:44:03PM +0900, Byungchul Park wrote:
>> Changes from v1
>> - Enhance commit msg
>> - Prevent WARN in cpumask_test_cpu() in cpudl_find() when best_cpu == -1
>>
>> -----8<-----
>> >From 7735382d07ae6a61d740ae39ba2ecf169d43b8a2 Mon Sep 17 00:00:00 2001
>> From: Byungchul Park <byungchul.park@xxxxxxx>
>> Date: Wed, 22 Mar 2017 14:25:56 +0900
>> Subject: [RESEND PATCH v2 1/2] sched/deadline: Add cpudl_maximum_dl() for clean-up
>>
>> Current code uses cpudl_maximum() to get the root node's cpu, while it
>> directly accesses the root node like 'cp->elements[0].dl' to get the
>> root node's dl. It would be more readible to add a function for the dl,
>> as well. Added it.
>
> Hello everyone,
>
> Could you tell opinions?
>
>> Signed-off-by: Byungchul Park <byungchul.park@xxxxxxx>
>> Acked-by: Steven Rostedt (VMware) <rostedt@xxxxxxxxxxx>

Acked-by: Daniel Bristot de Oliveira <bristot@xxxxxxxxxx>

>> ---
>> kernel/sched/cpudeadline.c | 11 ++++++++---
>> 1 file changed, 8 insertions(+), 3 deletions(-)
>>
>> diff --git a/kernel/sched/cpudeadline.c b/kernel/sched/cpudeadline.c
>> index 8d9562d..9f02035 100644
>> --- a/kernel/sched/cpudeadline.c
>> +++ b/kernel/sched/cpudeadline.c
>> @@ -108,11 +108,16 @@ static void cpudl_heapify(struct cpudl *cp, int idx)
>> cpudl_heapify_down(cp, idx);
>> }
>>
>> -static inline int cpudl_maximum(struct cpudl *cp)
>> +static inline int cpudl_maximum_cpu(struct cpudl *cp)
>> {
>> return cp->elements[0].cpu;
>> }
>>
>> +static inline u64 cpudl_maximum_dl(struct cpudl *cp)
>> +{
>> + return cp->elements[0].dl;
>> +}
>> +
>> /*
>> * cpudl_find - find the best (later-dl) CPU in the system
>> * @cp: the cpudl max-heap context
>> @@ -130,11 +135,11 @@ int cpudl_find(struct cpudl *cp, struct task_struct *p,
>> cpumask_and(later_mask, cp->free_cpus, &p->cpus_allowed)) {
>> return 1;
>> } else {
>> - int best_cpu = cpudl_maximum(cp);
>> + int best_cpu = cpudl_maximum_cpu(cp);
>> WARN_ON(best_cpu != -1 && !cpu_present(best_cpu));
>>
>> if (cpumask_test_cpu(best_cpu, &p->cpus_allowed) &&
>> - dl_time_before(dl_se->deadline, cp->elements[0].dl)) {
>> + dl_time_before(dl_se->deadline, cpudl_maximum_dl(cp))) {
>> if (later_mask)
>> cpumask_set_cpu(best_cpu, later_mask);
>>
>> --
>> 1.9.1