David, et al, I am sorry for the unnecessary spam but I can't resist...
On 04/30, David Hildenbrand (Arm) wrote:
>
> On 4/30/26 11:16, Oleg Nesterov wrote:
> >
> > But may be MADV_DONTNEED should not set zap_details.even_cows == true
> > by default ?
>
> It should. If you do mmap(MAP_PRIVATE, fd), and modify some pages,
> MADV_DONTNEED
> must zap these pages.
[... snip the correct explanation ...]
Ah. Sorry for the confusion, I should not have said "by default". Of course
you are right, and I understand this. At least I hope ;)
Let me try to explain what I tried to say. First of all, I still agree with
your "It shouldn't do that on a MAP_PRIVATE file-backed VMA". I also agree
with Jann who suggests to make the manpage more clear about uprobes/bps.
But, lets suppose that this "problem" is raised again, and we come to conclusion
that it should be fixed/mitigated. ("we" actually meaning you and other mm
experts ;)
_In that case_. Instead of this patch (which, rightly or not, I personally
dislike
in any case), can't MADV_DONTNEED paths check MMF_HAS_UPROBES or
vma_has_uprobes()
to decide whether .even_cows should be true?
At least when madvise_behavior.mm != current->mm ?
Oleg.