On 09.12.22 15:39, Peter Xu wrote:
On Fri, Dec 09, 2022 at 11:24:55AM +0100, David Hildenbrand wrote:
For such cases, it would be good to have any evidence that it really helps.
I don't know much on the s390 path, but if a process has a large hugetlb
vma, even MADV_DONTNEED will be blocked for whatever long time if there's
another process or thread scanning pagemap for this vma.
Would this justify a bit?
I get your point. But that raises the question if we should voluntarily
drop the VMA lock already in the caller every now and then on such large
VMAs and maybe move even the cond_resched() into the common page walker,
if you get what I mean?
On a preemtible kernel you could reschedule just before you drop the
lock and call cond_resched() ... hmm
No strong opinion here, it just looked a bit weird to optimize for a
cond_resched() if we might just reschedule either way even without the
cond_resched().
--
Thanks,
David / dhildenb