On 3/21/22 18:42, Davidlohr Bueso wrote: > On Mon, 21 Mar 2022, Michal Hocko wrote: > >> The more I am thinking about this the more I am getting convinced that >> we should rather approach this differently and skip over vmas which can >> be holding the list. Have you considered this option? > > While I tend to agree with this over a hacky trylock approach, I cannot > help but think that v3 was the right thing to do, at least conceptually. Yeah conceptually the V3 was the first correct patch. It could use some slight cleanup with a wrapper like in this v5 (has_robust_list), and instead of returning it should set MMF_OOM_SKIP. > Robust futex users here care enough about dealing with crashes while holding > a lock that they sacrifice the performance of regular futexes. So the OOM > killer should not cause this very thing. I went through previous threads > but other than the user base (which I don't think would be very large > just because of the performance implications), was there any other reason > to no just set MMF_OOM_SKIP upon a robust list? We could proceed with the V3 approach; however if we are able to find a complete solution that keeps both functionalities (Concurrent OOM Reaping & Robust Futex) working, I dont see why we wouldnt go for it. If we can't find a good/reliable way to check if the vma contains the robust list then I think we should just skip the OOM like in the v3. Cheers, -- Nico > > Thanks, > Davidlohr >