From: Oscar Salvador <osalvador@suse.de>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: Muchun Song <muchun.song@linux.dev>,
David Hildenbrand <david@redhat.com>,
James Houghton <jthoughton@google.com>,
Peter Xu <peterx@redhat.com>, Gavin Guo <gavinguo@igalia.com>,
linux-mm@kvack.org, linux-kernel@vger.kernel.org,
Oscar Salvador <osalvador@suse.de>
Subject: [RFC PATCH 0/3] Clean up locking in hugetlb faulting code
Date: Mon, 2 Jun 2025 16:16:07 +0200 [thread overview]
Message-ID: <20250602141610.173698-1-osalvador@suse.de> (raw)
Hi all,
This RFC is the culmination of the discussion that happened in [1].
TLDR: No one really knew what the locks were protecting us against, and
whether we needed them at all.
Some reasearch showed that most of them were introduced in a time were
truncation was not serialized with the mutex, as it is today, so we were
relying on the lock for the page to not go away from the pagecache.
More details can be find in patch#1.
This is for the locks, but I also started to look at the references
we take in hugetlb_fault and hugetlb_wp as it seems to me we are taking
more than actually needed, but that is once we manage to sort this out.
I ran hugetlb LTP tests and nothing screamed, and I also plan to run selftests
later on.
@Galvin. Could you please run your syzkaller with this patchset applied and
see whether you can trigger something?
Special thanks to David and Peter Xu that were helping out with this mess.
[1] https://lore.kernel.org/linux-mm/aDeBUXCRLRZobHq0@localhost.localdomain/T/#md02880ebc2c679678b7f326c5e9e93992428e124
Oscar Salvador (3):
mm, hugetlb: Clean up locking in hugetlb_fault and hugetlb_wp
mm, hugetlb: Update comments in hugetlb_fault
mm, hugetlb: Drop unlikelys from hugetlb_fault
include/linux/hugetlb.h | 12 +++++
mm/hugetlb.c | 117 +++++++++++++++++-----------------------
2 files changed, 62 insertions(+), 67 deletions(-)
--
2.49.0
next reply other threads:[~2025-06-02 14:16 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-02 14:16 Oscar Salvador [this message]
2025-06-02 14:16 ` [RFC PATCH 1/3] mm, hugetlb: Clean up locking in hugetlb_fault and hugetlb_wp Oscar Salvador
2025-06-02 15:14 ` Peter Xu
2025-06-02 20:47 ` Oscar Salvador
2025-06-02 21:30 ` Peter Xu
2025-06-03 13:50 ` Oscar Salvador
2025-06-03 14:57 ` Peter Xu
2025-06-03 15:08 ` David Hildenbrand
2025-06-03 15:46 ` Peter Xu
2025-06-03 17:19 ` David Hildenbrand
2025-06-03 19:11 ` Peter Xu
2025-06-03 18:31 ` Peter Xu
2025-06-10 14:13 ` Oscar Salvador
2025-06-10 15:57 ` Peter Xu
2025-06-03 15:12 ` David Hildenbrand
2025-06-02 14:16 ` [RFC PATCH 2/3] mm, hugetlb: Update comments in hugetlb_fault Oscar Salvador
2025-06-02 14:16 ` [RFC PATCH 3/3] mm, hugetlb: Drop unlikelys from hugetlb_fault Oscar Salvador
2025-06-16 3:21 ` [RFC PATCH 0/3] Clean up locking in hugetlb faulting code Gavin Guo
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=20250602141610.173698-1-osalvador@suse.de \
--to=osalvador@suse.de \
--cc=akpm@linux-foundation.org \
--cc=david@redhat.com \
--cc=gavinguo@igalia.com \
--cc=jthoughton@google.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=muchun.song@linux.dev \
--cc=peterx@redhat.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox