[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <56eecd5e-9f1a-0171-0e4f-934e3e6b495a@redhat.com>
Date: Fri, 9 Dec 2022 16:18:11 +0100
From: David Hildenbrand <david@...hat.com>
To: Peter Xu <peterx@...hat.com>
Cc: linux-mm@...ck.org, linux-kernel@...r.kernel.org,
Muchun Song <songmuchun@...edance.com>,
John Hubbard <jhubbard@...dia.com>,
Andrea Arcangeli <aarcange@...hat.com>,
James Houghton <jthoughton@...gle.com>,
Jann Horn <jannh@...gle.com>, Rik van Riel <riel@...riel.com>,
Miaohe Lin <linmiaohe@...wei.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Mike Kravetz <mike.kravetz@...cle.com>,
Nadav Amit <nadav.amit@...il.com>
Subject: Re: [PATCH v2 08/10] mm/hugetlb: Make walk_hugetlb_range() safe to
pmd unshare
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
Powered by blists - more mailing lists