On Mon 11-06-18 12:23:58, Jason Baron wrote: > On 06/11/2018 11:03 AM, Michal Hocko wrote: > > So can we start discussing whether we want to allow MADV_DONTNEED on > > mlocked areas and what downsides it might have? Sure it would turn the > > strong mlock guarantee to have the whole vma resident but is this > > acceptable for something that is an explicit request from the owner of > > the memory? > > > > If its being explicity requested by the owner it makes sense to me. I > guess there could be a concern about this breaking some userspace that > relied on MADV_DONTNEED not freeing locked memory? Yes, this is always the fear when changing user visible behavior. I can imagine that a userspace allocator calling MADV_DONTNEED on free could break. The same would apply to MLOCK_ONFAULT/MCL_ONFAULT though. We have the new flag much shorter so the probability is smaller but the problem is very same. So I _think_ we should treat both the same because semantically they are indistinguishable from the MADV_DONTNEED POV. Both remove faulted and mlocked pages. Mlock, once applied, should guarantee no later major fault and MADV_DONTNEED breaks that obviously. So the more I think about it the more I am worried about this but I am more and more convinced that making ONFAULT special is just a wrong way around this. -- Michal Hocko SUSE Labs -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html