Why Convert madvise MADV_DONTNEED/FREE to Per‑VMA Locks to Eliminate mmap_lock Contention
The article explains how replacing the global mmap_lock read lock with per‑VMA locks for madvise MADV_DONTNEED/FREE removes severe lock contention and priority inversion in Linux memory management, and it details the patches, reasoning, and performance evidence supporting the change.
