[PATCH] kernel/sched/sched: First, confirm that prev and next are not the same task, and then swap their dl_server members

Li kunyu posted 1 patch 3 days, 12 hours ago
kernel/sched/sched.h | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
[PATCH] kernel/sched/sched: First, confirm that prev and next are not the same task, and then swap their dl_server members
Posted by Li kunyu 3 days, 12 hours ago
Signed-off-by: Li kunyu <likunyu10@163.com>
---
 kernel/sched/sched.h | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h
index 9f63b15d309d..0b667909e2d8 100644
--- a/kernel/sched/sched.h
+++ b/kernel/sched/sched.h
@@ -2706,11 +2706,10 @@ static inline void put_prev_set_next_task(struct rq *rq,
 {
 	WARN_ON_ONCE(rq->donor != prev);
 
-	__put_prev_set_next_dl_server(rq, prev, next);
-
 	if (next == prev)
 		return;
 
+	__put_prev_set_next_dl_server(rq, prev, next);
 	prev->sched_class->put_prev_task(rq, prev, next);
 	next->sched_class->set_next_task(rq, next, true);
 }
-- 
2.47.3