For now, wait_for_completion() / complete() works with lockdep, add lock_page() / unlock_page() and its family to lockdep support. Changes from v1 - Move lockdep_map_cross outside of page_ext to make it flexible - Prevent allocating lockdep_map per page by default - Add a boot parameter allowing the allocation for debugging Byungchul Park (4): lockdep: Apply crossrelease to PG_locked locks lockdep: Apply lock_acquire(release) on __Set(__Clear)PageLocked lockdep: Move data of CONFIG_LOCKDEP_PAGELOCK from page to page_ext lockdep: Add a boot parameter enabling to track page locks using lockdep and disable it by default Documentation/admin-guide/kernel-parameters.txt | 7 ++ include/linux/mm_types.h | 4 + include/linux/page-flags.h | 43 +++++++- include/linux/pagemap.h | 125 ++++++++++++++++++++++-- lib/Kconfig.debug | 11 +++ mm/filemap.c | 114 ++++++++++++++++++++- mm/page_ext.c | 4 + 7 files changed, 299 insertions(+), 9 deletions(-) -- 1.9.1