> >> kthread_stop@stop_p(...) > >> ... > >> mutex_lock@lock_p(E) > >> > >> @script:python@ > >> stop_p << race.stop_p; > >> unlock_p << race.unlock_p; > >> lock_p << race.lock_p; > >> E << race.E; > >> @@ > >> > >> coccilib.report.print_report(unlock_p[0], 'mutex_unlock(' + E + ') here') > >> coccilib.report.print_report(stop_p[0], 'kthread_stop here') > >> coccilib.report.print_report(lock_p[0], 'mutex_lock(' + E + ') here\n') > > ... > > > Based on Jann's suggestion, it seem like it could be interesting to find > > these locking pauses, and then collect functions that are used in locks > > and in lock pauses. If a function is mostly used with locks held, then > > using it in a lock pause could be a sign of a bug. I will see if it turns > > up anything interesting. > > Do you mean collecting the behaviour that happens between unlocking and locking > and then analysing it somehow? Yes. I have tried doing what I described, but I'm not sure that the results are very reliable at the moment. julia