Merge tag 'sched_urgent_for_v6.14_rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull scheduler fix from Borislav Petkov:

- Clarify what happens when a task is woken up from the wake queue and
make clear its removal from that queue is atomic

* tag 'sched_urgent_for_v6.14_rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
sched: Clarify wake_up_q()'s write to task->wake_q.next

+3 -2
+3 -2
kernel/sched/core.c
··· 1063 1063 struct task_struct *task; 1064 1064 1065 1065 task = container_of(node, struct task_struct, wake_q); 1066 - /* Task can safely be re-inserted now: */ 1067 1066 node = node->next; 1068 - task->wake_q.next = NULL; 1067 + /* pairs with cmpxchg_relaxed() in __wake_q_add() */ 1068 + WRITE_ONCE(task->wake_q.next, NULL); 1069 + /* Task can safely be re-inserted now. */ 1069 1070 1070 1071 /* 1071 1072 * wake_up_process() executes a full barrier, which pairs with