Hi Peter, Let me post these small bits first while waiting for Frederic's patches to be merged.
This version should have addressed the comments you made. Thanks so much for the review. Thanks, Yuyang -- Yuyang Du (23): locking/lockdep: Change all print_*() return type to void locking/lockdep: Add description and explanation in lockdep design doc locking/lockdep: Adjust lock usage bit character checks locking/lockdep: Remove useless conditional macro locking/lockdep: Print the right depth for chain key colission locking/lockdep: Update obsolete struct field description locking/lockdep: Use lockdep_init_task for task initiation consistently locking/lockdep: Define INITIAL_CHAIN_KEY for chain keys to start with locking/lockdep: Change the range of class_idx in held_lock struct locking/lockdep: Remove unused argument in validate_chain() and check_deadlock() locking/lockdep: Update comment locking/lockdep: Change type of the element field in circular_queue locking/lockdep: Change the return type of __cq_dequeue() locking/lockdep: Avoid constant checks in __bfs by using offset reference locking/lockdep: Update comments on dependency search locking/lockdep: Add explanation to lock usage rules in lockdep design doc locking/lockdep: Remove redundant argument in check_deadlock locking/lockdep: Remove unused argument in __lock_release locking/lockdep: Refactorize check_noncircular and check_redundant locking/lockdep: Check redundant dependency only when CONFIG_LOCKDEP_SMALL locking/lockdep: Consolidate lock usage bit initialization locking/lockdep: Adjust new bit cases in mark_lock locking/lockdep: Remove !dir in lock irq usage check Documentation/locking/lockdep-design.txt | 112 ++++-- include/linux/lockdep.h | 32 +- init/init_task.c | 2 + kernel/fork.c | 3 - kernel/locking/lockdep.c | 607 ++++++++++++++++++------------- 5 files changed, 461 insertions(+), 295 deletions(-) -- 1.8.3.1