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 354ADC02181 for ; Mon, 20 Jan 2025 13:33:28 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A29356B0082; Mon, 20 Jan 2025 08:33:27 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 9D90E6B0083; Mon, 20 Jan 2025 08:33:27 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8A0516B0085; Mon, 20 Jan 2025 08:33:27 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 6D8A56B0082 for ; Mon, 20 Jan 2025 08:33:27 -0500 (EST) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id E50B5160AFC for ; Mon, 20 Jan 2025 13:33:26 +0000 (UTC) X-FDA: 83027922012.15.54119B6 Received: from mail-ed1-f47.google.com (mail-ed1-f47.google.com [209.85.208.47]) by imf10.hostedemail.com (Postfix) with ESMTP id DC8CAC0009 for ; Mon, 20 Jan 2025 13:33:24 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=RVMgAq+j; spf=pass (imf10.hostedemail.com: domain of ioworker0@gmail.com designates 209.85.208.47 as permitted sender) smtp.mailfrom=ioworker0@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1737380005; 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=/ssuJrTqeyWdC+hFJR6VtBQ9+/KLzwOjy5eslyvnZSw=; b=yaPoXJaRpfytO9bwf/HFjb6Vjn3GtQwo7DwPHjdBXeUyeWWUrx79c6VeXPPgMfKs0baBgU sNV5ibFQz+ZOcZmhlzUffzs+mO5qPwRF/DqYvwwXk7EZIF3J5oeDQB7hNxZLLVSgHMYDAf AIuXnIgSmYN0AEKeKDuSajo0R7fQR2k= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=RVMgAq+j; spf=pass (imf10.hostedemail.com: domain of ioworker0@gmail.com designates 209.85.208.47 as permitted sender) smtp.mailfrom=ioworker0@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1737380005; a=rsa-sha256; cv=none; b=J6ZeVtJ9IzsBcVJNepbiQeaKsnO2T6AIQc9Bx5WYQj9emv1mMeZul/i2Kq0Z5SfVstozwD HAYXf482dVkicOrE6ICfT6SRIbq1qzez+ArgSF+KjL4DbNAEL7rgNiKkNbmY7P7tFOJS5H TRZhfn8Y6DnEhr2HCQtgGIX1lbuC6HI= Received: by mail-ed1-f47.google.com with SMTP id 4fb4d7f45d1cf-5d9f0a6ad83so48842a12.2 for ; Mon, 20 Jan 2025 05:33:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1737380003; x=1737984803; 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=/ssuJrTqeyWdC+hFJR6VtBQ9+/KLzwOjy5eslyvnZSw=; b=RVMgAq+jfRtvJoh1Ac8Gw3ip6z8Ri5EmapFayvXvlRuht+54TZvck7/w/F/At0h0M9 fAX6st9l5mNwzsXmrnwd4JLEMJsbkr463cuIUJAThOnmFdiHmM8FT8n3ARjIi2JBP3Ps ZttH8G3ywRdACwdq1aVMtyv2IyRD4j30vyls1LKDcv6JwQifX8j6UnZjE0CAaMoXpj2x 9NX6D6JyHHuqBXHP2Uu3tj310fiVOpSehhIH/jE0XIELmxJaoXflJ+i2+wyNNGaREunj QYXsnWx8b30nUnfZkjwuoQPrszCcbjIy/iUE92FJc6KC/MvMEGz9Dd8cDFFqxt85cvT3 PuRA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737380003; x=1737984803; 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=/ssuJrTqeyWdC+hFJR6VtBQ9+/KLzwOjy5eslyvnZSw=; b=SA7pzWRkPaIgVfI6bNIuOFhtllYc+WNXl8iCfTzMjJWxsb0b0fIaMSxq1tu6lf27ph IERUVXHCyp7YGof7g6R93IXg0ybFvBk0AFv89zIMs3PCEylwNaKFZPOdWxEcW1whwjmH Vn3MU7Sg7LNTafCpz9ERhMTvmrNBkGcBVXCtxuikHypyrOWkNynKasi3k+CWK96ivlon Qk59B1I7cDZbPMlNn8F0DztmCAWYLmK0+zunMAem7BHRl2MOzfNKdapIdI/LF7cbP1tW wTtBxyXGFOuI0dmEIgS/zfTcpvYOfVd6IMBA+U4mE6C+WiDCmgu1GZ+A8Gco+6gHI4GA wohw== X-Forwarded-Encrypted: i=1; AJvYcCXYuBoBlPecozRRxawxUkAo95DrC1fqGVTSdl7S2rW34PlWa9jA/Dn+RPVbYbt7+BHhfz1dfZU2sA==@kvack.org X-Gm-Message-State: AOJu0YxgeSmrteEGBnGz91nvYqUYW3Ozqigq5ozEwsDlW3g60niyAJqk 0DOzwiUafwRsNY1amtwfcrQuKbnf9AYKQ30gcT/zF0Xya7ddgE34YIUaldwnrwFkelgZxYKStfJ 95FZ8T0s620Hbiai6hR8rkDl4PB0= X-Gm-Gg: ASbGncvfvbc3PQ5dIvL8ClYVEf30znR39uUc/QeoHDKsyOnDsJ/JahJF7GLPdnCaijI 9N8hBE0QhIeK30vJqTBaCl/Recva3pWk3t0x58afMMcMWwB3qFz4= X-Google-Smtp-Source: AGHT+IHEB7QI2DkxPNyx9eIIwzr6LlwnFl8WAigmWfDNx/4iVeVU5qpH7AGRivRRLxbE5FIrTQ7qJQtcx9KYltxuOMU= X-Received: by 2002:a05:6402:42c4:b0:5da:d16:738b with SMTP id 4fb4d7f45d1cf-5db7d2e83a8mr12215872a12.4.1737380003125; Mon, 20 Jan 2025 05:33:23 -0800 (PST) MIME-Version: 1.0 References: <20250120012607.4808-1-ioworker0@gmail.com> <52a45aa6-1554-4cb8-b8df-da601c4e18ca@redhat.com> <5118f207-8982-421c-a995-23798355f020@lucifer.local> In-Reply-To: <5118f207-8982-421c-a995-23798355f020@lucifer.local> From: Lance Yang Date: Mon, 20 Jan 2025 21:32:46 +0800 X-Gm-Features: AbW1kvbHdfKkC0eyeY_AuslW1Kg3TikVHmM32k822E6beBeO0PWVnLjUhhPIE7Y Message-ID: Subject: Re: [PATCH 1/1] mm/mmap: allow MAP_DROPPABLE | MAP_PRIVATE in mmap() To: Lorenzo Stoakes Cc: David Hildenbrand , akpm@linux-foundation.org, 21cnbao@gmail.com, ryan.roberts@arm.com, dev.jain@arm.com, shy828301@gmail.com, ziy@nvidia.com, libang.li@antgroup.com, baolin.wang@linux.alibaba.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, Liam.Howlett@oracle.com, vbabka@suse.cz, jannh@google.com, Jason@zx2c4.com, Mingzhe Yang Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: DC8CAC0009 X-Stat-Signature: e6de3zc779dqjgq33rt5d5jut95af85u X-Rspam-User: X-HE-Tag: 1737380004-969211 X-HE-Meta: U2FsdGVkX19ZqMUfVjb4qtRi1CqgcSQWDedk3vs+oET7S1CgP9bdGNtQiMp46GO07A0y8fJNYnzEKqlkeY/eKNw3VN6gO3Mf4LcnTdeaDoOpvCxDlNDtLiBQhW81uKyHoKTo7uUDwey5XhK5iOZv/+TCjgLSEtocVsZubhBkniZ57Mw4G9oJ25nuypq+/+jwr0ULWUnj7IDE43VZgcRaluAtNrxGIoFI3dR/qRhj5l+s5O279daWECX51lOFmkn6veQmRmuIdkmgW0PjD9tit4TVWRPF7jfJXPnfIeeQ04LT0o/ldHj8wVlsmttwgaWJ4st2ss+7YPqkZMtPf5stl6nngUiRR00GNH7TlQVMKzlgR4N8U2Uav4BRBp8kJ5xWvXBzmuAVeT7QbaIzPwgRpgMR2G/grbk8B13k/uq9sUVOZp3Yz79VkEGrnsqZ+Bf2xg2dQlxg1bs8wIibg9Yk2/6uDK+6XnMxBQ1Qr6jbbx2FrtvYGeylXDJ6FKrYnVmfaX9bUlSJkLp6A0g0fNWgxGJpljr0xBAkViUPtnuh/qiFjO8T9w++KFazwDUOeql5z5tQbQrC9Y2WTd9uERe5xXLKhgml6UVKRvCDWS9AgtB0hDwhDne1Ttfm/jcYjz1WKxgx1vhmMgDZrbNuqqwcDIk/mnGIEIPd3+26tV6dtFrGbeA7PB8YVgRJ/4IoSGEDgmjI1rllCn1cB42zOphBGbbzfaz8+9mHyv8Dg4bfLIOpJ2/qoK1R4ChD20klevXfDKoPVFb85viIdRhBofKlpQNQuH+78jKc3tDDPe0LYpSLxwGVFkSBvzSmriD3pfvg7xwgbGQ0KqAoUgLRZbF6oVg6TsLLGx1pBS3bDctAA8a5tYqbmX29TyrrUCNVdlyQnSFoylRNuFmvuoPU7gPb3Im02BW3yLO4gGJLF2UQm63pIcxKZpDpzZlzCdKjulzyKp3bQ3D8tqulyGcMVBq Hv32AZY4 p9t8ehp+M3dk7/aT7P+p3zQxN296eU77VaiLpUrgpm85chDALn/lNwZBC+HpSDOnjG39zKFUneIeWNGIrypMEuNKstvyzWXAYPii3RDXh89YLwD2LdPbKh8zzQ/93fUm/iSvN2bk1xnU9/2d6vTUy2eHykxT+CswPiRPQyzHOO0mQDJvw/xXRQutfgwSRhw3K2nc4P2G0xgoUcl8mTpYKPub/XJnTa1z+Wtr9WMKyJMnCo+PE9XjrrAlMBiYHb0GdhloLYO/pLxu9CQwM3al/DPgWIleY2N5OSIvRWc87n4uPm6GxnWilZo/lAHfoXdpk4G2yTHCSiUWUoZ0fXe+qco7cPixsBHygfwtb4Piyt5fX/K3Ww4X5NPgNQSUNXI3j0aml+KApunrIIH4MEnBtxWH974HglF9JktEnCtIlyWvc4Q7wypsWOMPE6A== X-Bogosity: Ham, tests=bogofilter, spamicity=0.044008, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Hi David and Lorenzo, On Mon, Jan 20, 2025 at 6:38=E2=80=AFPM Lorenzo Stoakes wrote: > > Agree with David, NACK. > > On Mon, Jan 20, 2025 at 08:45:07AM +0100, David Hildenbrand wrote: > > On 20.01.25 02:26, Lance Yang wrote: > > > Currently, mmap() fails with `-EINVAL` when both MAP_DROPPABLE and > > > MAP_PRIVATE are specified. This behavior might be inconsistent, as th= e > > > implementation of MAP_DROPPABLE under the hood already includes the > > > semantics of MAP_PRIVATE. So, IMO, whether MAP_PRIVATE is explicitly > > > specified or not, it should work as expected. > > > > > > For example, when mmap() is called with `MAP_DROPPABLE | MAP_ANONYMOU= S`, > > > it creates a private anonymous mapping. Users can verify this behavio= r > > > via `/proc/self/smaps`, where the resulting VMA is marked with the `d= p` > > > (MAP_DROPPABLE) flag, and the `Private_*` fields confirm private memo= ry > > > semantics. The output for a 2MiB mapping with these flags might look = like: > > > > Note that "Private_" in the stats has *nothing* to do with MAP_PRIVATE. Oh, I see. Thanks for pointing this out! > > > > > > > > ``` > > > f433ace00000-f433ad000000 rw-p 00000000 00:00 0 > > > Size: 2048 kB > > > KernelPageSize: 4 kB > > > MMUPageSize: 4 kB > > > Rss: 2048 kB > > > Pss: 2048 kB > > > Pss_Dirty: 2048 kB > > > Shared_Clean: 0 kB > > > Shared_Dirty: 0 kB > > > Private_Clean: 0 kB > > > Private_Dirty: 2048 kB > > > Referenced: 2048 kB > > > Anonymous: 2048 kB > > > ... > > > VmFlags: rd wr mr mw me nr wf dd dp > > > ``` > > > > > > This patch changes mmap() to allow the combination of `MAP_DROPPABLE = | > > > MAP_PRIVATE`. For mmap(), at least one of MAP_PRIVATE or MAP_SHARED c= ould > > > be explicitly specified, regardless of the combination with other `MA= P_*` > > > flags. > > > > > > Fixes: 9651fcedf7b9 ("mm: add MAP_DROPPABLE for designating always la= zily freeable mappings") > > > > "How about we just say that VM_DROPPABLE really is something separate > > from MAP_PRIVATE or MAP_SHARED.. > > Which is also how I view it. I -really- do not want to add a weird situat= ion too > where people wonder whether _not_ setting MAP_PRIVATE infers some differe= nt > semantics. > > This mode is aggregate in behaviour by design and intended to be _specifi= cally_ > asked for, not in conjection with other map flags. Thanks for the lesson! I missed this important info before :( > > > > > And then we make the rule be that VM_DROPPABLE is never dumped and > > always dropped on fork, just to make things simpler." [1] > > Yup. > > > > > [1] https://lore.kernel.org/linux-mm/CAHk-=3Dwi=3DXvCZ9r897LjEb4ZarLzLt= KN1p+Fyig+F2fmQDF8GSA@mail.gmail.com/ > > > > So, nack from my side. > > Also, mine. Thanks again for your time! Lance > > > > > -- > > Cheers, > > > > David / dhildenb > >