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 81DD4C47422 for ; Fri, 26 Jan 2024 20:00:55 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1AEC76B0083; Fri, 26 Jan 2024 15:00:55 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 15F776B0087; Fri, 26 Jan 2024 15:00:55 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 026836B0089; Fri, 26 Jan 2024 15:00:54 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id E69D06B0083 for ; Fri, 26 Jan 2024 15:00:54 -0500 (EST) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id A15771408D6 for ; Fri, 26 Jan 2024 20:00:54 +0000 (UTC) X-FDA: 81722530428.19.9573511 Received: from mail-pl1-f182.google.com (mail-pl1-f182.google.com [209.85.214.182]) by imf05.hostedemail.com (Postfix) with ESMTP id AA41910002E for ; Fri, 26 Jan 2024 20:00:51 +0000 (UTC) Authentication-Results: imf05.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=iRbWkapD; spf=pass (imf05.hostedemail.com: domain of pcc@google.com designates 209.85.214.182 as permitted sender) smtp.mailfrom=pcc@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=1706299251; 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:in-reply-to:references:references:dkim-signature; bh=MimXWUdcIvN0nH3+dB3+knWCETvDzwsFYg6Za1niF5A=; b=a3Hyn1B0UlUzwSvfO5x+TvZ3LIxWWyRV67IWztJrNlBVTYQQ3OHv+S4fSJ5uEp5VI1RtuG LwDCtV/wVrZmRxd7zTP3VC0wQ2s/+4BZO1YZ9U+16pjPEAx/LX90oITaMgbGZdreRmdzlC aM4qtvp7yZXwsfOFOl3xh4gLS2AmQwU= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1706299251; a=rsa-sha256; cv=none; b=zLDKsknGTuMSW7HbfyADvRSkkWooxGPt2vm7cFJ0VkjK6ABmMzxgH+Fnphmbgol1Uyxo3k 0WX4bvt8bajHeE06hTK26htq9V7oQT8Ss77nizDb68rSQ57yBFDyatAqxomwUtsEGbYEEt ig4HqY4P0VQgWWBljnTFtGhTA43Q9cU= ARC-Authentication-Results: i=1; imf05.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=iRbWkapD; spf=pass (imf05.hostedemail.com: domain of pcc@google.com designates 209.85.214.182 as permitted sender) smtp.mailfrom=pcc@google.com; dmarc=pass (policy=reject) header.from=google.com Received: by mail-pl1-f182.google.com with SMTP id d9443c01a7336-1d76f1e3e85so22715ad.0 for ; Fri, 26 Jan 2024 12:00:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1706299250; x=1706904050; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=MimXWUdcIvN0nH3+dB3+knWCETvDzwsFYg6Za1niF5A=; b=iRbWkapDWxrySgGXkkv4Bwb39D7Pt1+nj4Sx+Sj4J4uL24lf++IOvpLe24V9cz/pM/ YZOsaoYOc5HFZns93X7d0KTfyX5Qsr2CgBwzMLbZkVwFrIURNWRTgldq08S9sxkOygXC 7hqxIE5FNZKr/4SjwlclvC4hAyCx1RWU4OR4ZPDXBbebIYBDXTe9f3ogKwi+twlgSMgr EBnaXGgIwRzwldFlyKI2K6J3Lm42Q1CvzJICOD/Ee7cXW3UGHDoPTyufmCgquq8BH4jT v5DUJKx4HUCWVVVbgUY9KeeG5WcTSHXgOGWDqUyzymV30DyIJXcRZg7oaIRdSmpg3Syo s7bA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706299250; x=1706904050; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=MimXWUdcIvN0nH3+dB3+knWCETvDzwsFYg6Za1niF5A=; b=C8HzVeicCjx4hMAEReyFrFmuN/AyhI8t6jWFh9hu0qXLnKBaNfNxtMLPBz3mfI2MLA CNkgfKX4CKCc1nF4CY7nd+cRr626PCfzjKirt7LxwnCvV1sdwgFCYJxpahLDMa8cBNDE VVrBCbM4m9nwedbQGaDXJftCycIe91Y0fR6UwrkgxdOKUdl+6LEuQEUyG8ImXy8VnLCs BepXDnYMYalrhNABES5N5Ol0loZX/4kLAKPAaviE18m99TlExAWwmKstY4Kw5qD3EkVG umXBrBqhuf7KR5UlJBTsnN1xVpi+rYND/2mf0nnqYQh50yYWsJHsg0wCh2+diLYHuLqH TjUQ== X-Gm-Message-State: AOJu0YwHxk6TfBgzB81LIx0kGpcsldtlAPGda8YrmKLuP0geCxsqgyvm JyNdxjWEJsPtjZpYWBtSt7ZlHUSsFXCr7ZDwPhiYCAvvA1TDr/qdiRG9+hocJLcHBqA9+Re/PkQ Ki0C2BLgjNQfABoyGBD1n6J5br5huLSct+VJD X-Google-Smtp-Source: AGHT+IFUiaxxx/fnNfe3njsMipgqF2fdYzG/YBwFDzOMI+2YRba8r80bUR3upqDy6QVJlcre5NJrJ1mYmBGhuhzNf/E= X-Received: by 2002:a17:903:1246:b0:1d8:a782:6cc2 with SMTP id u6-20020a170903124600b001d8a7826cc2mr127996plh.13.1706299249979; Fri, 26 Jan 2024 12:00:49 -0800 (PST) MIME-Version: 1.0 References: <20240125164256.4147-1-alexandru.elisei@arm.com> <20240125164256.4147-12-alexandru.elisei@arm.com> In-Reply-To: <20240125164256.4147-12-alexandru.elisei@arm.com> From: Peter Collingbourne Date: Fri, 26 Jan 2024 12:00:36 -0800 Message-ID: Subject: Re: [PATCH RFC v3 11/35] mm: Allow an arch to hook into folio allocation when VMA is known To: Alexandru Elisei Cc: catalin.marinas@arm.com, will@kernel.org, oliver.upton@linux.dev, maz@kernel.org, james.morse@arm.com, suzuki.poulose@arm.com, yuzenghui@huawei.com, arnd@arndb.de, akpm@linux-foundation.org, mingo@redhat.com, peterz@infradead.org, juri.lelli@redhat.com, vincent.guittot@linaro.org, dietmar.eggemann@arm.com, rostedt@goodmis.org, bsegall@google.com, mgorman@suse.de, bristot@redhat.com, vschneid@redhat.com, mhiramat@kernel.org, rppt@kernel.org, hughd@google.com, steven.price@arm.com, anshuman.khandual@arm.com, vincenzo.frascino@arm.com, david@redhat.com, eugenis@google.com, kcc@google.com, hyesoo.yu@samsung.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, kvmarm@lists.linux.dev, linux-fsdevel@vger.kernel.org, linux-arch@vger.kernel.org, linux-mm@kvack.org, linux-trace-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: AA41910002E X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: tzcd66cj3z9ambxypr7ssj3zt7p1th4p X-HE-Tag: 1706299251-138965 X-HE-Meta: U2FsdGVkX1/E98C4NboMcxmB1koLQ70MbKYTBnCp+5CQKzuqK7/6U+0PggGXZ8vPNWjzgJ1/s8oH41vJjJ7ANFlTJaUBbBlafEENvJTVze4qR2jr5bTQsIYoLtu0PWk4kBuBk9ZLM2EzH0CVEQ6xMDFSiELgk0yLTik7V5BUrAWCLH5vsdfgH814eGVjVnx6/pWW3Igy90xuDpY9D5p20tqCuw6SQi/41B6lMiBuu8RRhz4p5lxFH3V7ApV4NBaJleTKJAZeueyggvR9tB4mlzB5fyPThkmaewGSvoSix8N/A+oQ/Okg+lSW3jAE9V23S2QQSL8uAnPgrXT6NhFb3CfTnvgbhN6W2xrpVg4EFKw4cvOnYCZoaszVcSL5Iuip+EapKWlvjpI43Yz29X6Ty/H26AC/K69LoaXBRIeR8hLxHuWEq02dPf0+hAp8/4ayamDSDgJlapuDPxh1Z9yWhTWAjSceTg/Xau56YUlrcOlZBwkVwRZMy3wIQkDI5JR7j3f7xTlugD0O+LWUYsBeH5hgviuK1tZZsMuKXiwkhPVoQkdINZGCYhft1ad6PtXTGEae8LSbKmXxsk2mdy/65m06N28KRFi3M78jme721ofLOO/k2KwO8b9Vru0GZoWE2CVWGj9yjTG5rIR2vJg+CDATBmuQmRUPjuXTHO4dfwM/GxEXkzPAmLtm0gYi5rCph1/+wCZrEeM5pvP6AGpGBmfH51uRPED7tdu8qAibEb3/7MGOMMar6qTIedEZBCkV4fmOve+nwxcnNZW/VxF79FPMTysH1yvehez5LXFeq/KVD8SXhZ8Dk3gwK0jrCj+e7F15INeWY1T5Yp2muBN9Z/1zYVy3awViQ/gXIl1ctF1FH6B/9lObcIE+uldeTEi/k1rut6iOKvOXG6q68pL1ISh989INiKrNSGJkiIMxu7OGPue2ineWbfSn5nXL7JqblECooXafRp8d1wn1UuM 5BMR7uxN vommH/+GR30y9afOR84oP+xqVKmZNOcl7j+Y8LtGy807K3L+ptNlto6St3hoOoZHE2Cww8O/P77BpXK8Aapp44BuPmRX0cN0/MCc/CuJZmwmVnwFmjJZplXZzNQxZDQbgBSl7sI4+Y7959S8nhYwiOer+aHa/ZPh2G3AuypVJ0M5i2DzvoLmqVsX0bXhUwi4ZxKhmp1ykCdy0giK64H2gcfQ+qUhJncgm+kYuA26vIf7hjNxHRFXRrcLf4mf3eUwuVUwlXdMKjYXaAl1K/ZwTMT3ebO8AdCA/ilsJjTnVvD+PyVTnFAw+OkaMlA== 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: On Thu, Jan 25, 2024 at 8:43=E2=80=AFAM Alexandru Elisei wrote: > > arm64 uses VM_HIGH_ARCH_0 and VM_HIGH_ARCH_1 for enabling MTE for a VMA. > When VM_HIGH_ARCH_0, which arm64 renames to VM_MTE, is set for a VMA, and > the gfp flag __GFP_ZERO is present, the __GFP_ZEROTAGS gfp flag also gets > set in vma_alloc_zeroed_movable_folio(). > > Expand this to be more generic by adding an arch hook that modifes the gf= p > flags for an allocation when the VMA is known. > > Note that __GFP_ZEROTAGS is ignored by the page allocator unless __GFP_ZE= RO > is also set; from that point of view, the current behaviour is unchanged, > even though the arm64 flag is set in more places. When arm64 will have > support to reuse the tag storage for data allocation, the uses of the > __GFP_ZEROTAGS flag will be expanded to instruct the page allocator to tr= y > to reserve the corresponding tag storage for the pages being allocated. > > The flags returned by arch_calc_vma_gfp() are or'ed with the flags set by > the caller; this has been done to keep an architecture from modifying the > flags already set by the core memory management code; this is similar to > how do_mmap() -> calc_vm_flag_bits() -> arch_calc_vm_flag_bits() has been > implemented. This can be revisited in the future if there's a need to do > so. > > Signed-off-by: Alexandru Elisei This patch also needs to update the non-CONFIG_NUMA definition of vma_alloc_folio in include/linux/gfp.h to call arch_calc_vma_gfp. See: https://r.android.com/2849146 Peter