On Thu, Aug 17, 2017 at 10:12:24AM +0200, Ingo Molnar wrote: > > * Boqun Feng <boqun.feng@xxxxxxxxx> wrote: > > > > BTW., I don't think the #ifdef is necessary: lockdep_init_map_crosslock should map > > > to nothing when lockdep is disabled, right? > > > > IIUC, lockdep_init_map_crosslock is only defined when > > CONFIG_LOCKDEP_CROSSRELEASE=y, > > Then lockdep_init_map_crosslock() should be defined in the !LOCKDEP case as well. > > > [...] moreover, completion::map, which used as > > the parameter of lockdep_init_map_crosslock(), is only defined when > > CONFIG_LOCKDEP_COMPLETE=y. > > If the !LOCKDEP wrapper is a CPP macro then it can ignore that parameter just > fine, and it won't be built. > Oops, I miss this part.. so I will cook a patch define lockdep_init_map_crosslock() when !LOCKDEP and I think based on that, there is no need to introducde INIT_WQ_BARRIER_ONSTACK(), we can simply: lockdep_init_map_crosslock(...); __init_completion(); in insert_wq_barrier(). Simpler. Thanks for your suggestion. Regards, Boqun > Thanks, > > Ingo
Attachment:
signature.asc
Description: PGP signature