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 4D6C1C001DE for ; Thu, 10 Aug 2023 09:24:48 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id AB7FC6B0078; Thu, 10 Aug 2023 05:24:47 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id A68686B007B; Thu, 10 Aug 2023 05:24:47 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 930F56B007D; Thu, 10 Aug 2023 05:24:47 -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 861B56B0078 for ; Thu, 10 Aug 2023 05:24:47 -0400 (EDT) Received: from smtpin29.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 4C5A881018 for ; Thu, 10 Aug 2023 09:24:47 +0000 (UTC) X-FDA: 81107660214.29.F5BE51E Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100]) by imf07.hostedemail.com (Postfix) with ESMTP id 4734740012 for ; Thu, 10 Aug 2023 09:24:45 +0000 (UTC) Authentication-Results: imf07.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=d6lgKIdI; dmarc=pass (policy=none) header.from=intel.com; spf=pass (imf07.hostedemail.com: domain of yan.y.zhao@intel.com designates 134.134.136.100 as permitted sender) smtp.mailfrom=yan.y.zhao@intel.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1691659485; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:content-type: content-transfer-encoding:in-reply-to:in-reply-to: references:references:dkim-signature; bh=CeskFjmBrfqsO6ka8KC9sx0A7YS+CFxo5rkfOIuMOvQ=; b=5BvhySVbaLOZkMyHcdJOr9hPaegBI9v4fsCldPGFh8nXlsl8RapS26r/bw4zDjs93ZOuiT 1Zv9dfTXmsW5cz2GHxbNPtf8ttjsLsxi7EJ4tUNTp6Y9F5GNMsP5VzG7dqtH0WVaiPo7M1 uJ3IkSVl7s2yHrMuzwR2zYDvTQVMwaI= ARC-Authentication-Results: i=1; imf07.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=d6lgKIdI; dmarc=pass (policy=none) header.from=intel.com; spf=pass (imf07.hostedemail.com: domain of yan.y.zhao@intel.com designates 134.134.136.100 as permitted sender) smtp.mailfrom=yan.y.zhao@intel.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1691659485; a=rsa-sha256; cv=none; b=vXtkILaA2vHeU5wXZdMg9sspW6O/Rc6zIuhQD6+YMVGBfbf/jGTZxbUXOSxNfK3CtCa6MR c+3uQcOxGYYo2mL24hI527By0l20Xhlvlv9AYiBvUefPl6FWdRIWZ1lLd4PHXFQ8vR2W5T HylPLm1mB0tdHwQhLyu5N5kohBwatH0= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1691659485; x=1723195485; h=from:to:cc:subject:date:message-id:in-reply-to: references; bh=l5W7lo8AGp5GcicUaxx0a/KM1cCcP+g4Zw3OCaKNJvo=; b=d6lgKIdIMJ+1A6phvnk/+uEdLL2KTF4kiuRlihEChg8xa71vC+dIAhTj 4ZEZkbwCyCwjLL9x0i/m0tXLqud0rlnHGWBdvMRcz9Sd4cPZq3JOqkaml yYdL3pW26yMbed1fBNlrwiaMH+Z0IJ/YVGdqBlDJ5O4EX0XR9p+0DgiGi /ClWf4TB5N85PJqtyZw5XzYRoAuYvxexPZawBlXzkUjg0fDjQz6Ka3U1R 57VXIF9HlXpATcqjHfX5L+gEVXgU4iRcfPYF8tY2xI9sGkdNclJFQ2MoS QJk3m3hxMl2FTSG6B2BXg+q8Dh0+ElCCyQbiEjogME+XDO7m+ye3/u+pZ w==; X-IronPort-AV: E=McAfee;i="6600,9927,10797"; a="437701467" X-IronPort-AV: E=Sophos;i="6.01,161,1684825200"; d="scan'208";a="437701467" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 Aug 2023 02:24:44 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10797"; a="725720308" X-IronPort-AV: E=Sophos;i="6.01,161,1684825200"; d="scan'208";a="725720308" Received: from yzhao56-desk.sh.intel.com ([10.239.159.62]) by orsmga007-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 Aug 2023 02:24:40 -0700 From: Yan Zhao To: linux-mm@kvack.org, linux-kernel@vger.kernel.org, kvm@vger.kernel.org Cc: pbonzini@redhat.com, seanjc@google.com, mike.kravetz@oracle.com, apopple@nvidia.com, jgg@nvidia.com, rppt@kernel.org, akpm@linux-foundation.org, kevin.tian@intel.com, david@redhat.com, Yan Zhao Subject: [RFC PATCH v2 1/5] mm/mmu_notifier: introduce a new mmu notifier flag MMU_NOTIFIER_RANGE_NUMA Date: Thu, 10 Aug 2023 16:57:43 +0800 Message-Id: <20230810085743.25977-1-yan.y.zhao@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230810085636.25914-1-yan.y.zhao@intel.com> References: <20230810085636.25914-1-yan.y.zhao@intel.com> X-Rspamd-Queue-Id: 4734740012 X-Rspam-User: X-Rspamd-Server: rspam02 X-Stat-Signature: 84xuapzymyanam49zmb46cgghujggzag X-HE-Tag: 1691659485-402648 X-HE-Meta: U2FsdGVkX19BOWUnJy48DlN1szCJUU/oqFtp1iZI7nlch4R8WhIG0ylRY3ofqiM+7I+OzBJOJpgIpk7UrGtYhvqZReAYWMBPAfqKJEqUSRwIJg4twAi8adKUR3FontEUvW7eXf8PbPViQn0bN2sKwG/m3BWbs6PcTQ+RsJse2XOq38zlT5MkGpNm4Wu+YsUA8YDpIZ9cBZFz18opCYn0n8cYGe+Imr6C2icC2lt6lZ179DRCSscqQIaGTK8Bi3LVl30KEpSdummCejXplZ7uGyFm2bEN307sbkFz1mIBVcRCb5KNDl1HI8nh/dQon3HwakwOCMct3slC86MSznAyg5uL/RwiGaz2/6d3JNKsigUcUfS+APKh6s8ugC1WDlCLW+78cInCmc7xS/OGn73GublOBLEG/BryM/IYYuZYjSSiW0v55f2smUzIQIMoaoZoZFH2qm7Aa865Tk48XoORqSf4nBJ6hChgC+YnYujIsSn+2oI6H/GVtwN3A/hwOf5eOOSgRFtti7iQVRdNNFUK+NZUFYavbZTk5rQRm5zTHlUsTnZy97qmukXyWsUjx3QClkMsKeJSv9B4BSaAj0lbkrg7Dpxqa+nyyXrQykjwg6RJdn3C9sKg/G62yShhTTK5Zg2wMGkPVUeambglEWY7r1Yblm0rvJVtW9xlr9xJdz6MeeVsaR1/qFLvN6y4TN/09lTxIycMF1TXSkbF1dwXDx8vWOCZEVrByKKmz7vRnl15/HZay788Hp8NY3OGaCaP0v6hK4E1n5PFpvdloyhFsCjLEtrFVKf691F2moTOVTcJO+Y+7XeGgcexeVj6MBgsnM5uUiCA9AbPOQW5KI8CbD3uvYZX9fgUXjvWUgRF4yS/Jy2gZzzK4ZTWvLrLD4XBYnMCOvKJ0P5L/HZCvj1DeXtzAi/hu8E6RixKLIg1Kf4/cjIijkR7gK6DpIjGYs956mMPVvdqTcW6r0upPD6 7c5JqyGr U/gT+c0d9z3yTaFC6OQPHA36PphRY1k4uJG1BfCuQuAMv5jCL79BOQ5JiVqrcv/WM/kNpKYqelC0wudqEfcEYL5gM39MruIHRzksBDeqtZ6Me3Gv8bpNT4OQ639NKjUXUWtywmG7nBU2uzb9VNYrZP6vma2WipL+SGHuU 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: Introduce a new mmu notifier flag MMU_NOTIFIER_RANGE_NUMA to indicate the notification of MMU_NOTIFY_PROTECTION_VMA is for NUMA balance purpose specifically. So that, the subscriber of mmu notifier, like KVM, can recognize this type of notification and do numa protection specific operations in the handler. Signed-off-by: Yan Zhao --- include/linux/mmu_notifier.h | 1 + mm/mprotect.c | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/include/linux/mmu_notifier.h b/include/linux/mmu_notifier.h index 64a3e051c3c4..a6dc829a4bce 100644 --- a/include/linux/mmu_notifier.h +++ b/include/linux/mmu_notifier.h @@ -60,6 +60,7 @@ enum mmu_notifier_event { }; #define MMU_NOTIFIER_RANGE_BLOCKABLE (1 << 0) +#define MMU_NOTIFIER_RANGE_NUMA (1 << 1) struct mmu_notifier_ops { /* diff --git a/mm/mprotect.c b/mm/mprotect.c index 6f658d483704..cb99a7d66467 100644 --- a/mm/mprotect.c +++ b/mm/mprotect.c @@ -381,7 +381,9 @@ static inline long change_pmd_range(struct mmu_gather *tlb, /* invoke the mmu notifier if the pmd is populated */ if (!range.start) { mmu_notifier_range_init(&range, - MMU_NOTIFY_PROTECTION_VMA, 0, + MMU_NOTIFY_PROTECTION_VMA, + cp_flags & MM_CP_PROT_NUMA ? + MMU_NOTIFIER_RANGE_NUMA : 0, vma->vm_mm, addr, end); mmu_notifier_invalidate_range_start(&range); } -- 2.17.1