From patchwork Fri Apr 28 00:41:35 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jiaqi Yan X-Patchwork-Id: 13225917 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 2AFB5C7EE24 for ; Fri, 28 Apr 2023 00:41:54 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 28E956B0075; Thu, 27 Apr 2023 20:41:53 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 2185A6B0078; Thu, 27 Apr 2023 20:41:53 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0E0146B007B; Thu, 27 Apr 2023 20:41:53 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id F10AE6B0075 for ; Thu, 27 Apr 2023 20:41:52 -0400 (EDT) Received: from smtpin23.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id C6897AD1F1 for ; Fri, 28 Apr 2023 00:41:52 +0000 (UTC) X-FDA: 80728947264.23.519FD06 Received: from mail-pf1-f202.google.com (mail-pf1-f202.google.com [209.85.210.202]) by imf09.hostedemail.com (Postfix) with ESMTP id 1458E14000B for ; Fri, 28 Apr 2023 00:41:50 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=google.com header.s=20221208 header.b=NA00K5Oq; spf=pass (imf09.hostedemail.com: domain of 3ThZLZAgKCM843vB3Jv819916z.x97638FI-775Gvx5.9C1@flex--jiaqiyan.bounces.google.com designates 209.85.210.202 as permitted sender) smtp.mailfrom=3ThZLZAgKCM843vB3Jv819916z.x97638FI-775Gvx5.9C1@flex--jiaqiyan.bounces.google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1682642511; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=cdjbuBZu8tlGo1pxc0tk7o3QpZ2/1SgnLkFhr9tanbY=; b=cAsQq/7Wc7eXG1oHlji70kKWpuNBVJ1aRbnhpUE7t6CNZ6nXAzcOlYRk7gy1O05YHj/2bH EjwWuLO2vfpt3s/NW2pBfnL2eZTdb4wvDV+1v2KRtc82rjwLfSkuerLslfWI5Qqe7krsDb 6//ucBal8brfJd+QrdDywxoRQqupXp4= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=pass header.d=google.com header.s=20221208 header.b=NA00K5Oq; spf=pass (imf09.hostedemail.com: domain of 3ThZLZAgKCM843vB3Jv819916z.x97638FI-775Gvx5.9C1@flex--jiaqiyan.bounces.google.com designates 209.85.210.202 as permitted sender) smtp.mailfrom=3ThZLZAgKCM843vB3Jv819916z.x97638FI-775Gvx5.9C1@flex--jiaqiyan.bounces.google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1682642511; a=rsa-sha256; cv=none; b=NW3AUo7dYYkgKEWNDws92h2z9D4QHxSGgI/2XmMjEziS5gBV4VMOsxKiqh+yXPjg6oreJq erzBECfmSvq+Xk3hxNtCDX3uQhHUmu5eitUB4VDQLAHL5IdWwZNZV6p3x/2ARVRSPQWl18 c9aeqhEm19MlN50NQmE359FQHcO0i9I= Received: by mail-pf1-f202.google.com with SMTP id d2e1a72fcca58-64115ef7234so6820725b3a.1 for ; Thu, 27 Apr 2023 17:41:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1682642510; x=1685234510; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=cdjbuBZu8tlGo1pxc0tk7o3QpZ2/1SgnLkFhr9tanbY=; b=NA00K5Oq++SM0fGqna1cu6q3oeHcwy8f6So1qbLBBkMZpAFX9KXHuuDhs+gKOGNWxO BhUnhKp6iJbWjTLkiohP0DmdwrNXAziXuc0rvi0ihCWDhd7KVFxtgwOLgIjQlCxv10Cb Fr6lK4GVdCDCCuqabbeuFGr2SIxFl+p/TQ0exA+3rwcuGyQVsa66S5vAjj2+5psPOGf+ xKc58mbSpQGNsTNlj2VAUHQltWBcsb5W8OiCbzA004IXZZA/CdrPP2C+gtRnuVuprbCi P+Bwl8NfFz/7uOfeFZvdmYgCjQhOuj1pGE5/iVs2S/NXjYWrLHuFkM8vb6hoL8o2cfhT CcLA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1682642510; x=1685234510; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=cdjbuBZu8tlGo1pxc0tk7o3QpZ2/1SgnLkFhr9tanbY=; b=O5zc3x8hCfN8LDQ6LPEkUywPNlkIz0IwmX8AzR9SMart5GrkdEI6+oqqoyI1Lx8OG4 8V+68Keb9X8OxdtK9tafuW2nyenEoPEXaHDAJXrfvQDE686hb4v/uDZHVamEPl3DjVc5 1fkgdvQLNOfztaResZdSVlWT+DuPh/JVZ2WpzgX0Ewydn6VYnruhrksr+BU1wZQf8mVN GkHR3/8BnTxba6+kVGno9pBaZl3VLTi8ar+IUbRg7zqxqafUtZ7MQTX0utfb9OOojVjz XJWyvlNqh1lCMXqWZhUCvK8HCEuquyvEwx0IM85SxuFPU0SZvisSvGx2IJFtgGXtCzY9 dwDg== X-Gm-Message-State: AC+VfDx3aoSKXmKkzfQGVJljV8+UEW5f7zdhSBTeGx9LJtsUqvob2t5m FpH0VzeJoxuB9twWxqR252kknP58mllgHA== X-Google-Smtp-Source: ACHHUZ5uI4KkTztNfACbj2ihd4x1PB/LmRz8ATBzfiQsUsXj0jD9z3cDdKYJarS81OndGtMC5UktDsmysZGalA== X-Received: from yjq3.c.googlers.com ([fda3:e722:ac3:cc00:24:72f4:c0a8:272f]) (user=jiaqiyan job=sendgmr) by 2002:a05:6a00:44c9:b0:63d:24ea:4172 with SMTP id cv9-20020a056a0044c900b0063d24ea4172mr2753850pfb.1.1682642510002; Thu, 27 Apr 2023 17:41:50 -0700 (PDT) Date: Fri, 28 Apr 2023 00:41:35 +0000 In-Reply-To: <20230428004139.2899856-1-jiaqiyan@google.com> Mime-Version: 1.0 References: <20230428004139.2899856-1-jiaqiyan@google.com> X-Mailer: git-send-email 2.40.1.495.gc816e09b53d-goog Message-ID: <20230428004139.2899856-4-jiaqiyan@google.com> Subject: [RFC PATCH v1 3/7] mm: publish raw_hwp_page in mm.h From: Jiaqi Yan To: mike.kravetz@oracle.com, peterx@redhat.com, naoya.horiguchi@nec.com Cc: songmuchun@bytedance.com, duenwen@google.com, axelrasmussen@google.com, jthoughton@google.com, rientjes@google.com, linmiaohe@huawei.com, shy828301@gmail.com, baolin.wang@linux.alibaba.com, wangkefeng.wang@huawei.com, akpm@linux-foundation.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, Jiaqi Yan X-Stat-Signature: qq5b7w315196xr7ks8gj4pnxcxskh53j X-Rspam-User: X-Rspamd-Queue-Id: 1458E14000B X-Rspamd-Server: rspam06 X-HE-Tag: 1682642510-813825 X-HE-Meta: U2FsdGVkX18msNf4J3r+hOAp+qObllX63dD/RCb1uND4r+8kAbtKPnS4EjTKFNaQfF7DV+NP3kkscEsV9XVTkW8r6NbCq6BJND/2IQIGVTPAwd0Ctwx3O2ro5QKBNaMtdxzv0NDdm2xyNtI4BZ/t8wkMjMJlFImAFYjbS2NS+eUJqGdO9ClQaROhV3PAxDlTLwqGz7ZGuArTvezQKb9hkUrgQsqULtRziN7eWkg/PBLLUKB16li7DKIbQmvrLHpFm+BuuImjlDbykOMI2ohizIwDh6SNGcWm+Q/2BGFc+rLtEZdzsljv5nIEG6vw8ErV52nPPYtU97rXicGnn4uxDASLmtvPMMe1yftU+2pZ50RtLNU5/6RuGgfNRb0e/2UjuzyUPb1XWzDoauZozkymX5D8Er67PGhadBQNZCPC4vOo8cmOZW8+Gx+SHKkq5OWVBH8ZlQEkGpr0SNMiSgNlJs1nHZF5nSUzrOZi9RjHSmFh4e0Tk/58ZuQE3nTmA8oJRyuXDjSf1tgrQ7LD0n5bwijvfyE2VEw3S26UeT26Wj1Q4V3UFF7i6Tg7G2y44f6c0H1kfKHk2W0whoARxRstmhC8Dp244e3OQJndVVTJAUVZQijuDOOhLnzfLcNzixa8tBe4HuwNWZxCkmQK9uYKZJgfHfg/d54+5CZRJda7CUDM51EXexock70cydvrv/DWfHEeFbTnJIYGgTIsnsakibLtFU6zFBfOLYJGDefZnr/v0UhYfU7XOBf04xZMFsMVBoLoB8sxC2wJGHCW0zdxntuDXVLQ2dYsVvCOE6dg+KpLUasmuQ+kmpgEs+zIZNaqJz6+7Dl5D3KWiVA8vqC2xl15wEccme57J8ISu2OvDrOxV0wqEXSBRMw3crtFb/A1oMqu0Af/VHmHlvQNo4GPChkmNGAa1hAEA9HDbJVJ9TKW3BWu1nmtumbmEgCDQi7JaXHFJnSsqTCAEXWcac5 KclYuj0Q 8DmZIH+/zBZM0VUeBqjIKqCywfo/FxZ9HH8mMzMWpRgnIz5Jm0/vZtRW8b9RUL1WSq0wLDOiIufEPL7p6d+iut1WkRiZ5lJiTRgLHgJ+0HRXWJRcbMPdoBVI4V6dA4WDslcb3p/8Bb/ADF2qQCFPHsBCSk+vP/nNfyetgYo1TH7rBMnVks1OIXiGyB+AF5yoTUOhdh95QJtxiR67Cyxy7dc50epvm6PMmc5Bvna31GI+WOrHVBNN2UOBN2FJazzhUiWHVcmy+vN+M4cxVU9Yrjd8zFPu0tAiWYNRBQ9wISkDBD6frfXQPTNr7nzjngcS7wNUkSV5KMPTFqxuv0YQ2zgJl4zvgbeZSrycxOuzPY39bGKXaF8zUlVjBFkbzKZbhenqRSfLZGE2tX+F1OfRnwjbRzX5IOqY8/kfauGChwjtZqxcqtjvVUifh3xlbd+6tdJXd2SrmJa29lJY4lnnkNkKankWqeXHBOqxcTcWmyT4bNLcCNJ+1DZKyHJ1ADybWg4khkwsFS81VhCpm33WB7snEVM11zb5uX+cEmVQxT2lRYb8x2bz99YA+Ihw5xGOpB4b+IHed6GQ5HLKXQyGmge5Lb6vYAScXNOONFJbFWupE18UkJA2f7viMZ0G0YajCwFwudhCCyMh74Lg6BdhJhn/O5ETHbSmRlwWM7DwTVtIe308= 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: raw_hwp_page will be needed by HugeTLB to determine if a raw subpage in a hugepage is poisoned and either should be unmapped or not faulted in at PAGE_SIZE PTE level Signed-off-by: Jiaqi Yan --- include/linux/mm.h | 16 ++++++++++++++++ mm/memory-failure.c | 13 ------------- 2 files changed, 16 insertions(+), 13 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 9d3216b4284a..4496d7bdd3ea 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -3522,6 +3522,22 @@ enum mf_action_page_type { */ extern const struct attribute_group memory_failure_attr_group; +#ifdef CONFIG_HUGETLB_PAGE +/* + * Struct raw_hwp_page represents information about "raw error page", + * constructing singly linked list from ->_hugetlb_hwpoison field of folio. + */ +struct raw_hwp_page { + struct llist_node node; + struct page *page; +}; + +static inline struct llist_head *raw_hwp_list_head(struct folio *folio) +{ + return (struct llist_head *)&folio->_hugetlb_hwpoison; +} +#endif + #if defined(CONFIG_TRANSPARENT_HUGEPAGE) || defined(CONFIG_HUGETLBFS) extern void clear_huge_page(struct page *page, unsigned long addr_hint, diff --git a/mm/memory-failure.c b/mm/memory-failure.c index eb5579b6787e..48e62d04af17 100644 --- a/mm/memory-failure.c +++ b/mm/memory-failure.c @@ -1826,19 +1826,6 @@ EXPORT_SYMBOL_GPL(mf_dax_kill_procs); #endif /* CONFIG_FS_DAX */ #ifdef CONFIG_HUGETLB_PAGE -/* - * Struct raw_hwp_page represents information about "raw error page", - * constructing singly linked list from ->_hugetlb_hwpoison field of folio. - */ -struct raw_hwp_page { - struct llist_node node; - struct page *page; -}; - -static inline struct llist_head *raw_hwp_list_head(struct folio *folio) -{ - return (struct llist_head *)&folio->_hugetlb_hwpoison; -} static unsigned long __folio_free_raw_hwp(struct folio *folio, bool move_flag) {