This mostly a revert of commit b91473ff6e97 ("sched,tracing: Update trace_sched_pi_setprio()") except for the XXX comments. Since that commit I see during a deboost a task this: |futex sched_pi_setprio: comm=futex_requeue_p pid=2234 oldprio=98 newprio=98 |futex sched_switch: prev_comm=futex_requeue_p prev_pid=2234 prev_prio=120
and after the revert, the `newprio' shows the correct value again: |futex sched_pi_setprio: comm=futex_requeue_p pid=2220 oldprio=98 newprio=120 |futex sched_switch: prev_comm=futex_requeue_p prev_pid=2220 prev_prio=120 Reported-by: Mansky Christian <m...@keba.com> Fixes: b91473ff6e97 ("sched,tracing: Update trace_sched_pi_setprio()") Signed-off-by: Sebastian Andrzej Siewior <bige...@linutronix.de> --- include/trace/events/sched.h | 6 +++--- kernel/sched/core.c | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/include/trace/events/sched.h b/include/trace/events/sched.h index bc01e06bc716..c6fdb5aac723 100644 --- a/include/trace/events/sched.h +++ b/include/trace/events/sched.h @@ -420,9 +420,9 @@ DEFINE_EVENT(sched_stat_runtime, sched_stat_runtime, */ TRACE_EVENT(sched_pi_setprio, - TP_PROTO(struct task_struct *tsk, struct task_struct *pi_task), + TP_PROTO(struct task_struct *tsk, int new_prio), - TP_ARGS(tsk, pi_task), + TP_ARGS(tsk, new_prio), TP_STRUCT__entry( __array( char, comm, TASK_COMM_LEN ) @@ -435,7 +435,7 @@ TRACE_EVENT(sched_pi_setprio, memcpy(__entry->comm, tsk->comm, TASK_COMM_LEN); __entry->pid = tsk->pid; __entry->oldprio = tsk->prio; - __entry->newprio = pi_task ? pi_task->prio : tsk->prio; + __entry->newprio = new_prio; /* XXX SCHED_DEADLINE bits missing */ ), diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 092f7c4de903..888df643b99b 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -3823,7 +3823,7 @@ void rt_mutex_setprio(struct task_struct *p, struct task_struct *pi_task) goto out_unlock; } - trace_sched_pi_setprio(p, pi_task); + trace_sched_pi_setprio(p, prio); oldprio = p->prio; if (oldprio == prio) -- 2.17.0