Merge branch 'for-3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq
authorLinus Torvalds <torvalds@linux-foundation.org>
Wed, 22 Jan 2014 01:46:31 +0000 (17:46 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 22 Jan 2014 01:46:31 +0000 (17:46 -0800)
Pull workqueue update from Tejun Heo:
 "Just one patch to add destroy_work_on_stack() annotations to help
  debugobj debugging"

* 'for-3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
  workqueue: Calling destroy_work_on_stack() to pair with INIT_WORK_ONSTACK()

1  2 
kernel/workqueue.c

index b010eac595d20eece261310cc4acb629ad70b92b,00df11270325fcbb4d6668ec33a6bd0cf2cc09dc..82ef9f3b7473a81ef5004362c7281ae9f4aea82a
@@@ -4827,7 -4815,15 +4828,8 @@@ long work_on_cpu(int cpu, long (*fn)(vo
  
        INIT_WORK_ONSTACK(&wfc.work, work_for_cpu_fn);
        schedule_work_on(cpu, &wfc.work);
 -
 -      /*
 -       * The work item is on-stack and can't lead to deadlock through
 -       * flushing.  Use __flush_work() to avoid spurious lockdep warnings
 -       * when work_on_cpu()s are nested.
 -       */
 -      __flush_work(&wfc.work);
 -
 +      flush_work(&wfc.work);
+       destroy_work_on_stack(&wfc.work);
        return wfc.ret;
  }
  EXPORT_SYMBOL_GPL(work_on_cpu);