• Tejun Heo's avatar
    workqueue: Update lock debugging code · c35aea39
    Tejun Heo authored
    These changes are in preparation of BH workqueue which will execute work
    items from BH context.
    
    - Update lock and RCU depth checks in process_one_work() so that it
      remembers and checks against the starting depths and prints out the depth
      changes.
    
    - Factor out lockdep annotations in the flush paths into
      touch_{wq|work}_lockdep_map(). The work->lockdep_map touching is moved
      from __flush_work() to its callee - start_flush_work(). This brings it
      closer to the wq counterpart and will allow testing the associated wq's
      flags which will be needed to support BH workqueues. This is not expected
      to cause any functional changes.
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    Tested-by: default avatarAllen Pais <allen.lkml@gmail.com>
    c35aea39
workqueue.c 208 KB