Re: [PATCH v2 0/4] lockdep/crossrelease: Apply crossrelease to page locks

From: Byungchul Park
Date: Tue Dec 05 2017 - 00:46:58 EST


On 12/5/2017 2:30 PM, Matthew Wilcox wrote:
On Mon, Dec 04, 2017 at 02:16:19PM +0900, Byungchul Park wrote:
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

I don't like the way you've structured this patch series; first adding
the lockdep map to struct page, then moving it to page_ext.

Hello,

I will make them into one patch.

I also don't like it that you've made CONFIG_LOCKDEP_PAGELOCK not
individually selectable. I might well want a kernel with crosslock
support, but only for completions.

OK then, I will make it individually selectable.

I want to know others' opinions as well.

Thank you for the opinions. I will apply yours next spin.

--
Thanks,
Byungchul