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 03691C3DA6D for ; Thu, 15 May 2025 13:35:34 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 9663F6B0088; Thu, 15 May 2025 09:35:28 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 91A116B0089; Thu, 15 May 2025 09:35:28 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7688B6B008A; Thu, 15 May 2025 09:35:28 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 49AE96B0088 for ; Thu, 15 May 2025 09:35:28 -0400 (EDT) Received: from smtpin23.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 11AC5AF16B for ; Thu, 15 May 2025 13:35:29 +0000 (UTC) X-FDA: 83445239178.23.ADC60C5 Received: from mail-qt1-f174.google.com (mail-qt1-f174.google.com [209.85.160.174]) by imf30.hostedemail.com (Postfix) with ESMTP id 2DA7280003 for ; Thu, 15 May 2025 13:35:27 +0000 (UTC) Authentication-Results: imf30.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=P0see4au; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf30.hostedemail.com: domain of usamaarif642@gmail.com designates 209.85.160.174 as permitted sender) smtp.mailfrom=usamaarif642@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1747316127; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=1B5pkHdPuqQZDbYfrz3XLKt1s6mapVj+8upRwrTiCEE=; b=UfRFSPIi8+Hbg4mUL3s1Kj2qsZnf8LN480j9Ah8fm4uoW0nYv/AkzCU/AapoK16qTgwWSY sGhi6/yGDljnM/po5Xr8e0kFOzCCrTZa+A0BLy0swg0iQMphlwFvm4qWtJKkSyksFstRkN fM/lPXI+ztvypfNne1arK2sqZfScS4A= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1747316127; a=rsa-sha256; cv=none; b=v18GRmOTKVEaCUmgtHX9nwtgQSIAdAmPeI8becKeyPRCIdDOvSFUjQkhcexB1bFxTLK/l8 m9HE2ftc4qN7pFNOt3McrkdGhZXUgZ/LTGeGOihIO+LH5dLnebJpHjdamMg1gMBVl8kA3A OYuxdTwBaHVlwepADKYxCNP2tALeHvc= ARC-Authentication-Results: i=1; imf30.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=P0see4au; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf30.hostedemail.com: domain of usamaarif642@gmail.com designates 209.85.160.174 as permitted sender) smtp.mailfrom=usamaarif642@gmail.com Received: by mail-qt1-f174.google.com with SMTP id d75a77b69052e-4772f48f516so23330301cf.1 for ; Thu, 15 May 2025 06:35:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1747316126; x=1747920926; darn=kvack.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=1B5pkHdPuqQZDbYfrz3XLKt1s6mapVj+8upRwrTiCEE=; b=P0see4au/9Ev52I5HSlrqAAVUv9odVrddj/O4EluBDaBSOb/Dl22JL/hjOuw6KLq5g irh/ib/YgSNM8YlOYDgv1zBe/PPf3evzNfikdcAXI4DTVZ3sTeGjzBDvQIGOK6M6o9BD XuRFaxfiYO/sE4dO418WXQnvbcidkuUa5N2zkRnJZa37/5NCmdjwxuIcBGqdGv93Tvkm LCrZh9Hgs78hYGRAR9rlndKDgU84534bQcnjAPY7ZHKtWX+ErqGm28tTSBkbd5aKFvy6 gnI/HNYGSsI0dLZQlmcT2f7QnQvgvZMVdL+k5SufXLx+qQtmOmrdcSZSiNj2avxgdrO+ ezGQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747316126; x=1747920926; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=1B5pkHdPuqQZDbYfrz3XLKt1s6mapVj+8upRwrTiCEE=; b=Re7Ag6FyqCLpWKZfoGgTdQKqz/JpJdSjyuFHqgQXPBlbYzVQoNtHbjuwaxeJwlYgTb lsYPcK5/mfktvyTxfVxWapTPonIlbhtRS2UQNo56JWxvgTD2NT3w0XTCrnRuQv10FAj+ /hIU5EVfOq+ScXYIJDBktT74pM8o0zYrKmaOiRqMaSGoe9UcEwMGAT3q2tf4h5FtdMZQ BIUVAPioueqLVV7tyEqztNDq2vIs2lfsrWOLNmFWs89Romxk4Fdbs1uLkc7L8F9q5mjy p+XM4AfkXJ3uHo8g1r56QRlDEgaTJhqHUGvKHhNSTZOqxsqaksmyxZxZw3z1o6ga5yvY fnrg== X-Forwarded-Encrypted: i=1; AJvYcCXck5luUAmJBV1aWmD6GCRuA4qYpyIde6s+kdxvTI8gA3WlgGT+Z8nsKfjxO9ssNHR8Kt/yJh/11A==@kvack.org X-Gm-Message-State: AOJu0YwUXHJHA2wfKShpSijLJQgytGGlHCuANB1NB5pRuQjhI2ATI1BP gMmVLjUhKDrZCA4IbVZzR1XwoWr5x2KL2AwwEBAfjxIFpAhcjd/4 X-Gm-Gg: ASbGnctwqH3pbhZsAD/s9TViO1PUbzjfQH0sSqqgeToLJqwgrwbG/eKPM2Ow/NAH7rF YbIPw8VU4+IFHuSkD12mOce9vjpRCA8LCW6PAejOfa9+FDvbLUgGy1KrLIs3WQpZFfZ0qJ2aaJJ 913HYRI5+ncIWdNlfWDVoPHNGR5KFkPRCez6cp6uBAoX34AnqHZURqpVJnpfwHkRtKvso+Tp1mB TWSnf+jVijXo1JR+iFGrwbcjTQskQqO1swY8udE4zJyIt6VTNYS7yC/6+l71FruHhkvNBJ6O+Dl PJ9Db4FpDDoHDaBx7/r7fZK/bPufFy3f0lQXXYs+xx7gPNJi X-Google-Smtp-Source: AGHT+IF0cUWwrVvIqOdNp54cd0CJe0sje3pw33UgRF8p5fdCzNA/tB3SELgqsN+q8TFL5kTOchOR1w== X-Received: by 2002:a05:622a:1f0a:b0:494:9e33:6fa with SMTP id d75a77b69052e-494a0e5d5f2mr68876541cf.23.1747316126166; Thu, 15 May 2025 06:35:26 -0700 (PDT) Received: from localhost ([2a03:2880:20ff:7::]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-494524b7184sm91065811cf.33.2025.05.15.06.35.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 15 May 2025 06:35:25 -0700 (PDT) From: Usama Arif To: Andrew Morton , david@redhat.com, linux-mm@kvack.org Cc: hannes@cmpxchg.org, shakeel.butt@linux.dev, riel@surriel.com, ziy@nvidia.com, laoar.shao@gmail.com, baolin.wang@linux.alibaba.com, lorenzo.stoakes@oracle.com, Liam.Howlett@oracle.com, npache@redhat.com, ryan.roberts@arm.com, linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, kernel-team@meta.com, Usama Arif Subject: [PATCH 3/6] prctl: introduce PR_THP_POLICY_SYSTEM for the process Date: Thu, 15 May 2025 14:33:32 +0100 Message-ID: <20250515133519.2779639-4-usamaarif642@gmail.com> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250515133519.2779639-1-usamaarif642@gmail.com> References: <20250515133519.2779639-1-usamaarif642@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Stat-Signature: 63ihjs935xx5dpkja3ad3akymog9fpsc X-Rspam-User: X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: 2DA7280003 X-HE-Tag: 1747316127-219981 X-HE-Meta: U2FsdGVkX19+MMswcO3Sg+R6Nkya0hCREuYIlEbVh2ePvtO4I3WAMee7HZ0uGCaVN2mwBU3TN9SOA5ApgjXCCnuQvDSqJ7CI2fuyvmwuCZ97ajzOMOR+ZFi2wz4BHu24t+u67OjGMYT9OA1zSVenur+IyHMqzb4o+/miJMKvMiPqGgU66G+z7m6N29JvJS7Be4h6vqWT5CXh3Xulcw30RfCShQktPmR/ie0eBnSebInX6EKkjsAoeCCbfnoLW2VP+ZEm1osU54LblPqDETXQRxn5xwmp2rkXPMn5oTu440ox5fAqedInZFVXv875X7jt2a0idREhe0J5B410E6OGcYuqDLz2kOti0qj6Qq/P84XQKLZ3fUHEu76ZpcVBSQipJchVMA07A3DBiTPWCpT8RM/qd46dQxA1CvJuIc6WUesVWfZeVHugxNOxBM6/qYR//ONnqmqCnTCLzar3KP9Pd8mON2HDI4ED0Ef+/z7mg2nh6pchGsUxFWctHVtOmL5IUl7RTfJ6GcmHcRkQoHD8ObPrHkPCeXNCWceROZl7iFhNL27qpLULz1Gd9Q9Fskt0fKSVYEvzgMcFAubRh5tHb0dOnJqGTDzHq1K7QER5zIPiPza33YYK9wCJcxd8GGrKOH+AqCYrAcBIzwidllg40UjDCGL/SgmzuTLgdirTMEYRK6ZuQoj+u5V6roEcUhDljJlLbKv3JlzMaIGieyIutKeoui1JwxDt9vssux57uc1nNamynnPyOsrurwcvY89ZA8khtyr8C7wb6GlPbUEQFxRALyL5x7puE8sPAoi8/kpKIU4N/3XezWSjEjzR6ysqWdXiUts0AJo5GH7OB7gDqc/NsjwQacduKX1bKCNl9dz7S9/thpZOvWzHtiF4wbTyRv7Vl8uQVxqRaFhGTwyr2Rkw49Fc1Y6CqJNTxAxBAibFm7iJ8bdl81Z8V/ZxpvKKvIBSS9wcX2YlzhcpDVu M/uxIPf7 w5WIHLeKCLdu+cVOkR61Dg8GEA4i+xSOUPneG4e8kkteICIEt19JWiD7C+ecT6jLyZjMCmdz3vjspF5Wi98JIyBiKId/pYjhfwM3o6eugXc71kNdXUaHAzV0sXsbJ51YFe7xxakrL1CRtmiA8GhiZouq2j9JCl/OhQ+pvdQbB0bwgc24eOXKTYaZ8CzBIUGGi6v2PbPdm0wJyw0HBx1qps+UHzXoXYVOCzGZBnv9qGyJtx944w8okfdlyNBawqHqjUTExBzeSXMG6CCjxMBMhpsfzy2EMzinqaKAkF/u7AQGO6jouaae5mxp2mgdt6S35InJpx7GnrwNwT6LLL6VWiSqXCdpIH0JpF4yF08Uz+hurd0RXcjXLK0rz7FgoRFDq0ctsn9erfncjH0DywC1i0jLr4nSVt+NtKMy563+jJDkltiUbSY2okZLOXL+bg6hmq4dFaJ/Z2+LhW+MyPo+wCu5q3hTIdmjLGcvlAFKHAuP7S0J/JNOeLr7f3CqoY8S66iLePnUELbeDkLlhm1fiIRe8DIWvALlq4bHqwqEMRJZ124gqhEj4tZwgooFuppqZ9mXT 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 set via the new PR_SET_THP_POLICY prctl. This will clear both the MMF2_THP_VMA_DEFAULT_NOHUGE and MMF2_THP_VMA_DEFAULT_HUGE process flags which will make the VMA behaviour of the process the same as system. Signed-off-by: Usama Arif --- include/uapi/linux/prctl.h | 1 + kernel/sys.c | 6 ++++++ tools/include/uapi/linux/prctl.h | 1 + tools/perf/trace/beauty/include/uapi/linux/prctl.h | 1 + 4 files changed, 9 insertions(+) diff --git a/include/uapi/linux/prctl.h b/include/uapi/linux/prctl.h index d25458f4db9e..340d5ff769a9 100644 --- a/include/uapi/linux/prctl.h +++ b/include/uapi/linux/prctl.h @@ -368,5 +368,6 @@ struct prctl_mm_map { #define PR_GET_THP_POLICY 79 #define PR_THP_POLICY_DEFAULT_HUGE 0 #define PR_THP_POLICY_DEFAULT_NOHUGE 1 +#define PR_THP_POLICY_SYSTEM 2 #endif /* _LINUX_PRCTL_H */ diff --git a/kernel/sys.c b/kernel/sys.c index d91203e6dd0d..d556cdea97c4 100644 --- a/kernel/sys.c +++ b/kernel/sys.c @@ -2665,6 +2665,8 @@ SYSCALL_DEFINE5(prctl, int, option, unsigned long, arg2, unsigned long, arg3, error = PR_THP_POLICY_DEFAULT_HUGE; else if (!!test_bit(MMF2_THP_VMA_DEFAULT_NOHUGE, &me->mm->flags2)) error = PR_THP_POLICY_DEFAULT_NOHUGE; + else + error = PR_THP_POLICY_SYSTEM; break; case PR_SET_THP_POLICY: if (arg3 || arg4 || arg5) @@ -2682,6 +2684,10 @@ SYSCALL_DEFINE5(prctl, int, option, unsigned long, arg2, unsigned long, arg3, set_bit(MMF2_THP_VMA_DEFAULT_NOHUGE, &me->mm->flags2); process_vmas_thp_default_nohuge(me->mm); break; + case PR_THP_POLICY_SYSTEM: + clear_bit(MMF2_THP_VMA_DEFAULT_HUGE, &me->mm->flags2); + clear_bit(MMF2_THP_VMA_DEFAULT_NOHUGE, &me->mm->flags2); + break; default: return -EINVAL; } diff --git a/tools/include/uapi/linux/prctl.h b/tools/include/uapi/linux/prctl.h index e03d0ed890c5..cc209c9a8afb 100644 --- a/tools/include/uapi/linux/prctl.h +++ b/tools/include/uapi/linux/prctl.h @@ -332,5 +332,6 @@ struct prctl_mm_map { #define PR_GET_THP_POLICY 79 #define PR_THP_POLICY_DEFAULT_HUGE 0 #define PR_THP_POLICY_DEFAULT_NOHUGE 1 +#define PR_THP_POLICY_SYSTEM 2 #endif /* _LINUX_PRCTL_H */ diff --git a/tools/perf/trace/beauty/include/uapi/linux/prctl.h b/tools/perf/trace/beauty/include/uapi/linux/prctl.h index d25458f4db9e..340d5ff769a9 100644 --- a/tools/perf/trace/beauty/include/uapi/linux/prctl.h +++ b/tools/perf/trace/beauty/include/uapi/linux/prctl.h @@ -368,5 +368,6 @@ struct prctl_mm_map { #define PR_GET_THP_POLICY 79 #define PR_THP_POLICY_DEFAULT_HUGE 0 #define PR_THP_POLICY_DEFAULT_NOHUGE 1 +#define PR_THP_POLICY_SYSTEM 2 #endif /* _LINUX_PRCTL_H */ -- 2.47.1