Code Review
/
kvmfornfv.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git]
/
kernel
/
kernel
/
task_work.c
diff --git
a/kernel/kernel/task_work.c
b/kernel/kernel/task_work.c
index
8727032
..
53fa971
100644
(file)
--- a/
kernel/kernel/task_work.c
+++ b/
kernel/kernel/task_work.c
@@
-18,6
+18,8
@@
static struct callback_head work_exited; /* all we need is ->next == NULL */
* This is like the signal handler which runs in kernel mode, but it doesn't
* try to wake up the @task.
*
* This is like the signal handler which runs in kernel mode, but it doesn't
* try to wake up the @task.
*
+ * Note: there is no ordering guarantee on works queued here.
+ *
* RETURNS:
* 0 if succeeds or -ESRCH.
*/
* RETURNS:
* 0 if succeeds or -ESRCH.
*/
@@
-108,16
+110,6
@@
void task_work_run(void)
raw_spin_unlock_wait(&task->pi_lock);
smp_mb();
raw_spin_unlock_wait(&task->pi_lock);
smp_mb();
- /* Reverse the list to run the works in fifo order */
- head = NULL;
- do {
- next = work->next;
- work->next = head;
- head = work;
- work = next;
- } while (work);
-
- work = head;
do {
next = work->next;
work->func(work);
do {
next = work->next;
work->func(work);