]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blobdiff - kernel/task_work.c
mtd: rawnand: tango: Fix struct clk memory leak
[mirror_ubuntu-bionic-kernel.git] / kernel / task_work.c
index 5718b3ea202a3f5dd7186e6454f18fb6be392644..83fb1ecfc33de01cfe1c6ccb5478961af1ef678b 100644 (file)
@@ -68,7 +68,7 @@ task_work_cancel(struct task_struct *task, task_work_func_t func)
         * we raced with task_work_run(), *pprev == NULL/exited.
         */
        raw_spin_lock_irqsave(&task->pi_lock, flags);
-       while ((work = lockless_dereference(*pprev))) {
+       while ((work = READ_ONCE(*pprev))) {
                if (work->func != func)
                        pprev = &work->next;
                else if (cmpxchg(pprev, work, work->next) == work)
@@ -116,3 +116,4 @@ void task_work_run(void)
                } while (work);
        }
 }
+EXPORT_SYMBOL_GPL(task_work_run);