Sep 12 – 14, 2022
Europe/Dublin timezone

Scalability solutions for the mmap_lock - Maple Tree and per-VMA locks

Sep 12, 2022, 10:30 AM
"Herbert" (Clayton Hotel on Burlington Road)


Clayton Hotel on Burlington Road

Kernel Memory Management MC Kernel Memory Management MC


Liam Howlett (Oracle) SUREN BAGHDASARYAN Michel Lespinasse (Facebook)


The main issue of mmap_lock is its process-wide scale, which prevents handling page faults in one virtual memory area (VMA) of a process when another VMA of the same process is being modified.

The maple tree has been simplifying the way VMAs are stored to avoid multiple updates to the 3 data structures used to keep track of the VMAs.

Latest respin of Speculative Page Faults patchset ( was deemed too complex to be accepted and the discussion concluded with a suggestion that "a reader/writer semaphore could be put into the VMA as a sort of range lock". Per-VMA lock patchset implements this approach.

This talk will cover maple tree and per-VMA lock patchsets as well as the future of Speculative Page Faults patchset and new mmap_lock contention findings.

I agree to abide by the anti-harassment policy Yes

Primary author


Presentation materials

Diamond Sponsor

Platinum Sponsors

Gold Sponsors

Silver Sponsors

Speaker Gift Sponsor

Catchbox Sponsor

Video Recording Sponsor

Livestream Sponsor

T-Shirt Sponsor

Conference Services Provided by