sched/deadline: Use helper function task_current()

Message ID 20230617074305.1916633-1-linmiaohe@huawei.com
State New
Headers
Series sched/deadline: Use helper function task_current() |

Commit Message

Miaohe Lin June 17, 2023, 7:43 a.m. UTC
  Use helper function task_current() to check whether task is currently
running on the runqueue. No functional change intended.

Signed-off-by: Miaohe Lin <linmiaohe@huawei.com>
---
 kernel/sched/deadline.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
  

Comments

Peter Zijlstra June 17, 2023, 12:26 p.m. UTC | #1
On Sat, Jun 17, 2023 at 03:43:05PM +0800, Miaohe Lin wrote:
> Use helper function task_current() to check whether task is currently
> running on the runqueue. No functional change intended.

Why though? this makes no sense. Please leave perfectly fine code alone.

> Signed-off-by: Miaohe Lin <linmiaohe@huawei.com>
> ---
>  kernel/sched/deadline.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c
> index f827067ad03b..23284229e16b 100644
> --- a/kernel/sched/deadline.c
> +++ b/kernel/sched/deadline.c
> @@ -2424,7 +2424,7 @@ static void pull_dl_task(struct rq *this_rq)
>  		 */
>  		if (p && dl_time_before(p->dl.deadline, dmin) &&
>  		    dl_task_is_earliest_deadline(p, this_rq)) {
> -			WARN_ON(p == src_rq->curr);
> +			WARN_ON(task_current(src_rq, p));
>  			WARN_ON(!task_on_rq_queued(p));
>  
>  			/*
> @@ -2636,7 +2636,7 @@ static void switched_to_dl(struct rq *rq, struct task_struct *p)
>  		return;
>  	}
>  
> -	if (rq->curr != p) {
> +	if (!task_current(rq, p)) {
>  #ifdef CONFIG_SMP
>  		if (p->nr_cpus_allowed > 1 && rq->dl.overloaded)
>  			deadline_queue_push_tasks(rq);
> -- 
> 2.27.0
>
  
Miaohe Lin June 19, 2023, 1:49 a.m. UTC | #2
On 2023/6/17 20:26, Peter Zijlstra wrote:
> On Sat, Jun 17, 2023 at 03:43:05PM +0800, Miaohe Lin wrote:
>> Use helper function task_current() to check whether task is currently
>> running on the runqueue. No functional change intended.
> 
> Why though? this makes no sense. Please leave perfectly fine code alone.

IMHO, it would improve the code readability if we use helper function/macro instead
of open code it directly. If this is unwanted change, I will drop this patch. :)

Thanks.
  

Patch

diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c
index f827067ad03b..23284229e16b 100644
--- a/kernel/sched/deadline.c
+++ b/kernel/sched/deadline.c
@@ -2424,7 +2424,7 @@  static void pull_dl_task(struct rq *this_rq)
 		 */
 		if (p && dl_time_before(p->dl.deadline, dmin) &&
 		    dl_task_is_earliest_deadline(p, this_rq)) {
-			WARN_ON(p == src_rq->curr);
+			WARN_ON(task_current(src_rq, p));
 			WARN_ON(!task_on_rq_queued(p));
 
 			/*
@@ -2636,7 +2636,7 @@  static void switched_to_dl(struct rq *rq, struct task_struct *p)
 		return;
 	}
 
-	if (rq->curr != p) {
+	if (!task_current(rq, p)) {
 #ifdef CONFIG_SMP
 		if (p->nr_cpus_allowed > 1 && rq->dl.overloaded)
 			deadline_queue_push_tasks(rq);