From: "David Hildenbrand (Red Hat)" <david@kernel.org>
To: Gregory Price <gourry@gourry.net>
Cc: Michal Hocko <mhocko@suse.com>,
Andrew Morton <akpm@linux-foundation.org>,
Aboorva Devarajan <aboorvad@linux.ibm.com>,
vbabka@suse.cz, surenb@google.com, jackmanb@google.com,
hannes@cmpxchg.org, ziy@nvidia.com, linux-mm@kvack.org,
linux-kernel@vger.kernel.org, Oscar Salvador <OSalvador@suse.com>,
Juan Yescas <jyescas@google.com>
Subject: Re: [PATCH] mm/page_alloc: make percpu_pagelist_high_fraction reads lock-free
Date: Wed, 3 Dec 2025 12:28:51 +0100 [thread overview]
Message-ID: <036614fd-e588-402c-8eb3-770ee9187bbd@kernel.org> (raw)
In-Reply-To: <aTABiHsL8NbGWNaL@gourry-fedora-PF4VCD3F>
On 12/3/25 10:23, Gregory Price wrote:
> On Wed, Dec 03, 2025 at 10:08:55AM +0100, David Hildenbrand (Red Hat) wrote:
>> On 12/3/25 10:02, Gregory Price wrote:
>>>
>>> My transient failure (although i'm not sure it was actually transient, i
>>> killed it and retried after a few minutes and it succeeded immediately)
>>> was on a ZONE_MOVABLE block.
>>
>> Okay, so that one should not bail out. Longterm pinnins must never end up on
>> such memory, and if it happens, we have to identify why and fix it.
>>
>> We have this known problem of "stream of short-term pinnings" that can
>> temporarily turn memory effectively unmovable. Juan will talk about that at
>> LPC [1].
>
> Nice, fun, good topic. Looking forward to Japan n_n
>
>>
>> We have another set of problematic cases (vmsplice(), fuse) but I would
>> assume that these are not the cases you are hitting.
>>
>
> We do use fuse, but this system was relatively quiet when i tried this.
>
> We do have some proactive reclaim / demotion going on, but i don't think
> it was that (see below).
>
>>>
>>> Kind of suggested to me there was some bad condition the resolved once I
>>> took a second to release the lock and try again.
>>
>> Hard to tell I'm afraid. Do you still have the dump_folio() calls we print
>> when migration fails?
>>
>
> What luck, I do! :D
:)
> And i just noticed it's the same page over and over
>
> [ 3404.119270] migrating pfn c06f176 failed ret:1
> [ 3404.129152] page: refcount:4 mapcount:0 mapping:0000000061ca20ba index:0xad28e5b pfn:0xc06f176
> [ 3404.148284] memcg:ffff88842e855000
> [ 3404.155834] aops:btree_aops ino:1
Small folio. Not GUP-pinned (FOLL_PIN, otherwise our refcount would be
>= 1024.
It could be ordinary GUP (FOLL_GET) e.g., from vmsplice or some older
O_DIRECT user that was not converted to FOLL_PIN yet. But maybe it's
just btrfs / something else that temporarily holds a folio reference.
Given that this is from 6.13 ... hard to tell :)
> [ 3404.163193] flags: 0x17ffff066c00420c(referenced|uptodate|workingset|private|node=1|zone=3|lastcpupid=0x1ffff)
Neither dirty nor under writeback.
--
Cheers
David
next prev parent reply other threads:[~2025-12-03 11:29 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-12-01 6:00 [PATCH] mm/page_alloc: make percpu_pagelist_high_fraction reads lock-free Aboorva Devarajan
2025-12-01 17:41 ` Andrew Morton
2025-12-03 8:27 ` Michal Hocko
2025-12-03 8:35 ` Gregory Price
2025-12-03 8:42 ` Michal Hocko
2025-12-03 8:51 ` David Hildenbrand (Red Hat)
2025-12-03 9:02 ` Gregory Price
2025-12-03 9:08 ` David Hildenbrand (Red Hat)
2025-12-03 9:23 ` Gregory Price
2025-12-03 9:26 ` Gregory Price
2025-12-03 11:28 ` David Hildenbrand (Red Hat) [this message]
2025-12-03 8:59 ` Gregory Price
2025-12-03 9:15 ` David Hildenbrand (Red Hat)
2025-12-03 9:42 ` Michal Hocko
2025-12-03 11:22 ` David Hildenbrand (Red Hat)
2025-12-08 17:30 ` Aboorva Devarajan
2025-12-08 18:15 ` Michal Hocko
2025-12-08 19:29 ` David Hildenbrand (Red Hat)
2025-12-03 8:21 ` Michal Hocko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=036614fd-e588-402c-8eb3-770ee9187bbd@kernel.org \
--to=david@kernel.org \
--cc=OSalvador@suse.com \
--cc=aboorvad@linux.ibm.com \
--cc=akpm@linux-foundation.org \
--cc=gourry@gourry.net \
--cc=hannes@cmpxchg.org \
--cc=jackmanb@google.com \
--cc=jyescas@google.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mhocko@suse.com \
--cc=surenb@google.com \
--cc=vbabka@suse.cz \
--cc=ziy@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.