From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4B7C7C677C4 for ; Wed, 11 Jun 2025 12:07:06 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E138E6B0095; Wed, 11 Jun 2025 08:07:05 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id DEB756B0096; Wed, 11 Jun 2025 08:07:05 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D02916B0098; Wed, 11 Jun 2025 08:07:05 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id B040C6B0095 for ; Wed, 11 Jun 2025 08:07:05 -0400 (EDT) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 2CA8F120A60 for ; Wed, 11 Jun 2025 12:07:05 +0000 (UTC) X-FDA: 83542994010.13.7B92160 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf17.hostedemail.com (Postfix) with ESMTP id BAF024000D for ; Wed, 11 Jun 2025 12:07:02 +0000 (UTC) Authentication-Results: imf17.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b="IV1/Wlt0"; spf=pass (imf17.hostedemail.com: domain of dhildenb@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=dhildenb@redhat.com; dmarc=pass (policy=quarantine) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1749643623; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:in-reply-to: references:dkim-signature; bh=e6LfLWwblq0nS0hH5xaHOxT0zDNtTct6Zz6olIqQVMs=; b=XEl5v2Ek/BZYqxIKRF2mVPgNt3l92hzckWSBDK36NJqj537J99tz8EJbVJ1f3I4uY2rukq Qky/8TUUp7kLjL3DKb+iDjP2zcINMPLny7RPgGeMOVw5Fjd3O3ON1PsgdcUmM3YU5Y41vY +YTDIvlFmcSeLeOuzOmnTwTOMWCZm+M= ARC-Authentication-Results: i=1; imf17.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b="IV1/Wlt0"; spf=pass (imf17.hostedemail.com: domain of dhildenb@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=dhildenb@redhat.com; dmarc=pass (policy=quarantine) header.from=redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1749643623; a=rsa-sha256; cv=none; b=7aNfBz6xcy+ReaQqc4mYjzEdQMe4M9ikoEonw14qXfaB8VTJpl6BOu4rjsPATtlYkuMrh0 ML8E4dYeWHyeefIrVdgsAfps3qk6i6VITQlGy12Krik9eG2+/XvFx8eG0gGxtemt7v6tz2 vfLqhzVqm3SpgbwWDFy/VEpoukAEcdo= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1749643622; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=e6LfLWwblq0nS0hH5xaHOxT0zDNtTct6Zz6olIqQVMs=; b=IV1/Wlt0BtKfgzfmMC0L3jjbAo7nMGqm9x7K83MU1BF9il5JBewRoG7MZBE0hZfyo+NSqf Drj4QtoqcRgAeOCnHW9P4xdFbkh86+S2zBgRSOjCSzqUqegx2Oxiz1vwqrgsZN/UGcCnmz VjOucqXAU20GAyKQP7HwGv6jfa58yGI= Received: from mail-qk1-f197.google.com (mail-qk1-f197.google.com [209.85.222.197]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-286-mxKZHUKbPDGSDVVT_eIvYA-1; Wed, 11 Jun 2025 08:07:00 -0400 X-MC-Unique: mxKZHUKbPDGSDVVT_eIvYA-1 X-Mimecast-MFC-AGG-ID: mxKZHUKbPDGSDVVT_eIvYA_1749643620 Received: by mail-qk1-f197.google.com with SMTP id af79cd13be357-7c5750ca8b2so916180385a.0 for ; Wed, 11 Jun 2025 05:07:00 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749643620; x=1750248420; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=e6LfLWwblq0nS0hH5xaHOxT0zDNtTct6Zz6olIqQVMs=; b=Jts60li3gLgfWqoRkYOlCoImKNatHtzPFJ5MS5mefVl3QOW/Wb4FjBGnCQ4WV4of3O NWuv9tbdltTm8tvfFaNsFD52sgFlSQXJReKwas5lh3Mup6eZurQ1zVhvPi3PtxTZq5gf 7O/HZEnG8M+maucIwkeJYSVZsmkkAss7D5BAw7BaJByaKPNvx7DbqPAQx1RUiz8mXMq5 PUgkJ9GdsCYAjlf6wtU8MGWO6BVZU4pBcnPN4nuviMn82xu8PI9l9QGdUsjZgYsI+iei 26zYPg5upyYm01F+dFp2wMYnJn0EvoYmdecjLk56ZpFrqUdQ5G/Lgr1Ge1/Ie3qcw2Uy KfBg== X-Gm-Message-State: AOJu0YxJyRPBjf3ndPJIrrQoLI+oOxJJKlWyuJ0gc31NN4hhbUu6b5Hp C9inw9M9tFzOG3/R0qC7EYzEXWtnxxT5FoWQeZSVunRGegYpa8bNlTPX3sUYWDS1BOcBh5lI0as cQZwPdjPfyCHKpfVZTQ9KrCbKu35qdBIqc+O3J+H2vnb84zavWfkA X-Gm-Gg: ASbGncuPTPrSc0QLPJYFohW4SGXszofGJY1YI/w0FJxIvb7hP64/JhlQyD0YnXeyqsP Nb4yepJUkDMR0pAQWeSYLsLQBgg+hXLmnNhZj/zzy4zsD1lHjd8qaeoLtfQesmm3DWjQz2OVpLV qFbR4OVShydrV+MG+8X8hD/dkzzp9g65/Ra5Ew/h+nCrFwKN+dusmEUUo9DT68BiF3Yy9fWlnty xxnS/IW6jq8p0D8/uyYO7vOOB4i6Gy97XwfV4zZohMFkeNx5rbNAQLSAlHopZqCSTpVt0udk6dn Ec9ncVrWyKx5nEGwfEqbyJ70TRsPY0ULjJrGHizOJA== X-Received: by 2002:a05:620a:1707:b0:7d3:a6e3:769 with SMTP id af79cd13be357-7d3a8a023camr487203285a.54.1749643619933; Wed, 11 Jun 2025 05:06:59 -0700 (PDT) X-Google-Smtp-Source: AGHT+IE+nvpy4eZgQ3IggiGnz01S9n6WnULoMe0QCjNT4gmRa+I93C9/yB+cBKGgJVnp79XMZ/tWiQ== X-Received: by 2002:a05:620a:1707:b0:7d3:a6e3:769 with SMTP id af79cd13be357-7d3a8a023camr487198585a.54.1749643619433; Wed, 11 Jun 2025 05:06:59 -0700 (PDT) Received: from localhost (nat-pool-muc-t.redhat.com. [149.14.88.26]) by smtp.gmail.com with UTF8SMTPSA id af79cd13be357-7d25a608ff5sm855840885a.76.2025.06.11.05.06.56 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 11 Jun 2025 05:06:58 -0700 (PDT) From: David Hildenbrand To: linux-kernel@vger.kernel.org Cc: linux-mm@kvack.org, nvdimm@lists.linux.dev, linux-cxl@vger.kernel.org, David Hildenbrand , Andrew Morton , Alistair Popple , Lorenzo Stoakes , "Liam R. Howlett" , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Zi Yan , Baolin Wang , Nico Pache , Ryan Roberts , Dev Jain , Dan Williams , Oscar Salvador Subject: [PATCH v2 0/3] mm/huge_memory: vmf_insert_folio_*() and vmf_insert_pfn_pud() fixes Date: Wed, 11 Jun 2025 14:06:51 +0200 Message-ID: <20250611120654.545963-1-david@redhat.com> X-Mailer: git-send-email 2.49.0 MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: fGco_b2WPbnnmNREf6iuL4lwapsWEdBFCK4thV200NQ_1749643620 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: 8bit content-type: text/plain; charset="US-ASCII"; x-default=true X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: BAF024000D X-Stat-Signature: mu9rj1nfmy85ccsmf4x7qh1eysrqaezy X-Rspam-User: X-HE-Tag: 1749643622-926733 X-HE-Meta: U2FsdGVkX1+0NHcJqEaixImN3Grbc5Pmkg8kPmUh2y87GDjMJZzhFlMT/JKOOvusru1aUAQ8jgXX6PyKpdY21yX13FeWJIxNmbtKujtkJrDzgZLGPvtAA8oYMZ9wWPUNXZUdjQgG4Mr8sDOTe30DMQyNn3D6IuTxoSBUE9iVTbk0+aGiMkYVqlBAnpniMGGemQFvm2J4q6MkEinFs/qVGQEyRXKepqSCwz1BDrwqk+d9CLtsBknwdyIIsyAGP0lizik/BHQ4AsTYgG8ttkLY3z+mmWvXB78BaZAfLwz75hk8g/Z6uV+iPfesomvwkIG8TUXk+ILSZIpr0Vk8oH4en5YN/kS9ZBulFACRp4/2DRCPYqTq4aE3ZpO1siiPEKwN3VJCmE/Tj7jU4HLcT0EhfnAaFfzKYz2LTWmYXZbyWoj3b5/Br8XSvEMCL1bRd56oSlxdFeD8GC/CzgnXpZA8fo93PEEXMNd0ughlcm0mX87UAKvnGiWso7s4cb+3+FHFzBWOtHCL4L7xTV1vB49w5+TkdO4f7u1azy04XeRYI3VwXrV6bsonKwtJs4QOVW+/Tthl6RmMkOiZwyAn4lUYrRFeBIBoddCJZ+Fll2nN+I+mVIh6BQNKpuS5G+mTyw7GD6qVrxyq0BpSgRtKPwo90lDIO5XwvFTHnqVLXEO+fazDncmS6h3GG41VYM8SyBGz/6NzFCrkCjCAboUW3NEUuZAxqEUhYz4CH4jTGH4H1MuBuEYOwcUT+cevQ6eK9SbBxYfff/vM2LPlLSwJ8Z/nnzuMY5VdHQeLcIlPkuhId7n9uZaWRL1GQmqGUeGC3yua83lDLu5a3pEzF+l0lpuAdGJSkPcWplmk/U7qK3vp938SUXwaDcDFFG8OlALPSshgOB7QQvAZShoFwJ5dZvBQ+Cpt1uVoMV1Fln7dRl9OlKTv7T87OFAx5ZbFPa58Lpuh03CoBUclRCi9lGrqfq+ fxxxBfBd l5k5t+fviAYgyfPRcLpPj/dKlSCy/yxyiNCZ3pnRNImFleVto/jECFrUdoCRXXHjlivqwFoC0sEjJ20iALJ7fw7U0E+diUFcfnER/wwYmMfP0sJqI3JeffgilymalTqJkLksR9zjf+s+LhgO2MD9cFIaw0DSHHBo8WbF5d8tdqBmSMWcOfMYOY70OnfDQvyqButaE4MU4NqnAr/Z29OZJfVWcQgqNUMB6RDvgMepQXEgc91z3FL8vojr2MFOxABbNAue+i7NO6C4braHz02RkO51ggFGTTDNHZ2VuSvS3U4WQ0mhBky6IRduCiz+ZRA4aM/QJXtjgFnZ9FxkdOFcGcn9VZ6AVEdz7u5OPjMZf7apTafeWcWtRps9kOh/ELyY8F2pHgXAuR8tgIc9vmZ9PbnccClz+jl8P+vxF+JLhebHLxp1uncVdcw5INgl654B0IMCUmBmqJDgE7IWpBiI37yiL1/AMDIObvL+Yk3c7TZqM/Wl6GEax2R7wFd3IMl4jlvjiWcIYCjxLJH0Uyu+/hmdEubHhP6mFBzNFjHVfC3z8njQqXkuszpyGtUGGMDWitZ6v6tqG0/bzBEg3/pxFyxsWhRpri1hrrOfNqEHb/iGV0AjF2dxuOt2v3ERxmQTxJhmhTSXqe0cBDpi+sbtl86uKcTx5k0VdeW3Z/20diTE4Lm3HGRL1tavkHPDgEkpEUiwrsVvoloSirUhpZ0oYR8oiKg2XKWQcSSPn7NJorSkxUOArtI+bLDA60rdIvYR5TGGAkdrsAoUTvPiradw9uIk3vTHUM8VWjzOae+qIJ1qgKBweNIsD5n6Brs9nsXvhqd0zDWS8Y+FN6R0k22BF524kOD2luV9MudjQvc74IwL5tYFwgsPmy7d9iA== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: This is v2 of "[PATCH v1 0/2] mm/huge_memory: don't mark refcounted pages special in vmf_insert_folio_*()" Now with one additional fix, based on mm/mm-unstable. While working on improving vm_normal_page() and friends, I stumbled over this issues: refcounted "normal" pages must not be marked using pmd_special() / pud_special(). Fortunately, so far there doesn't seem to be serious damage. I spent too much time trying to get the ndctl tests mentioned by Dan running (.config tweaks, memmap= setup, ... ), without getting them to pass even without these patches. Some SKIP, some FAIL, some sometimes suddenly SKIP on first invocation, ... instructions unclear or the tests are shaky. This is how far I got: # meson test -C build --suite ndctl:dax ninja: Entering directory `/root/ndctl/build' [1/70] Generating version.h with a custom command 1/13 ndctl:dax / daxdev-errors.sh OK 15.08s 2/13 ndctl:dax / multi-dax.sh OK 5.80s 3/13 ndctl:dax / sub-section.sh SKIP 0.39s exit status 77 4/13 ndctl:dax / dax-dev OK 1.37s 5/13 ndctl:dax / dax-ext4.sh OK 32.70s 6/13 ndctl:dax / dax-xfs.sh OK 29.43s 7/13 ndctl:dax / device-dax OK 44.50s 8/13 ndctl:dax / revoke-devmem OK 0.98s 9/13 ndctl:dax / device-dax-fio.sh SKIP 0.10s exit status 77 10/13 ndctl:dax / daxctl-devices.sh SKIP 0.16s exit status 77 11/13 ndctl:dax / daxctl-create.sh FAIL 2.61s exit status 1 12/13 ndctl:dax / dm.sh FAIL 0.23s exit status 1 13/13 ndctl:dax / mmap.sh OK 437.86s So, no idea if this series breaks something, because the tests are rather unreliable. I have plenty of other debug settings on, maybe that's a problem? I guess if the FS tests and mmap test pass, we're mostly good. Cc: Andrew Morton Cc: Alistair Popple Cc: Lorenzo Stoakes Cc: "Liam R. Howlett" Cc: Vlastimil Babka Cc: Mike Rapoport Cc: Suren Baghdasaryan Cc: Michal Hocko Cc: Zi Yan Cc: Baolin Wang Cc: Nico Pache Cc: Ryan Roberts Cc: Dev Jain Cc: Dan Williams Cc: Oscar Salvador v1 -> v2: * "mm/huge_memory: don't ignore queried cachemode in vmf_insert_pfn_pud()" -> Added after stumbling over that * Modified the other tests to reuse the existing function by passing a new struct * Renamed the patches to talk about "folios" instead of pages and adjusted the patch descriptions * Dropped RB/TB from Dan and Oscar due to the changes David Hildenbrand (3): mm/huge_memory: don't ignore queried cachemode in vmf_insert_pfn_pud() mm/huge_memory: don't mark refcounted folios special in vmf_insert_folio_pmd() mm/huge_memory: don't mark refcounted folios special in vmf_insert_folio_pud() include/linux/mm.h | 19 +++++++- mm/huge_memory.c | 110 +++++++++++++++++++++++++++------------------ 2 files changed, 85 insertions(+), 44 deletions(-) -- 2.49.0