On Thu, Jan 23, 2025 at 9:15 AM David Hildenbrand <david@xxxxxxxxxx> wrote: > > >> > >> ┌────────────┐TASK_SIZE > >> │ │ > >> │ │ > >> │ │mmap VOLATILE > >> ┼────────────┤ > >> │ │ > >> │ │ > >> │ │ > >> │ │ > >> │ │default mmap > >> │ │ > >> │ │ > >> └────────────┘ > >> > >> VMAs in the volatile region are assigned their own volatile_mmap_lock, > >> which is independent of the mmap_lock for the non-volatile region. > >> Additionally, we ensure that no single VMA spans the boundary between > >> the volatile and non-volatile regions. This separation prevents the > >> frequent modifications of a small number of volatile VMAs from blocking > >> other operations on a large number of non-volatile VMAs. > > > > I think really overall this will be solving one can of worms by introducing > > another can of very large worms in space :P but perhaps I am missing > > details here. > > Fully agreed; not a big fan :) +1. Let's not add more coarse-grained locks in mm. Discussing this at LSFMM as Liam suggested would be a good idea. I'm definitely interested. > > -- > Cheers, > > David / dhildenb >