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 3767EC27C76 for ; Wed, 25 Jan 2023 16:50:07 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 92D8D6B0072; Wed, 25 Jan 2023 11:50:06 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 908626B0075; Wed, 25 Jan 2023 11:50:06 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 75A5A6B0073; Wed, 25 Jan 2023 11:50:06 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 671F46B0071 for ; Wed, 25 Jan 2023 11:50:06 -0500 (EST) Received: from smtpin22.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 3AB7A1A0DC5 for ; Wed, 25 Jan 2023 16:50:06 +0000 (UTC) X-FDA: 80393908812.22.AD74E94 Received: from mail-yw1-f171.google.com (mail-yw1-f171.google.com [209.85.128.171]) by imf18.hostedemail.com (Postfix) with ESMTP id 72F041C000F for ; Wed, 25 Jan 2023 16:50:04 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=google.com header.s=20210112 header.b=telMSbME; spf=pass (imf18.hostedemail.com: domain of surenb@google.com designates 209.85.128.171 as permitted sender) smtp.mailfrom=surenb@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=1674665404; 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=9oBkpwDuDP6Raat/HRHsNpx8MqzIjjZSJojQEumXoyE=; b=NAFP5UEz4BFrTk/c6sFo7fsJRlGDaAlCPFJNnZgJiRD7ETEnNNtUiQLrQF8rIL8qk+nHZG qMbpDjgNgTtVnyTov7vOUifBwmqxIufKEUePEfrcv4XEjyYp8I00WNiBb0n2yDv7P3BjSq iHA6GEZcwHPjerE8shRvlDhxwRdLbMM= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=google.com header.s=20210112 header.b=telMSbME; spf=pass (imf18.hostedemail.com: domain of surenb@google.com designates 209.85.128.171 as permitted sender) smtp.mailfrom=surenb@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1674665404; a=rsa-sha256; cv=none; b=QxiP93wM3tMpu/SvodvSzM3xtDTZQ+Q2g4NWcsIhoc3s4a+STR1+cL4QzgmNO09pG8KnEW ZAFmVylRs64+xOeECZt0IrQYTR02E4LNIsSclwkxnHjg6S5+0HRQq6UvR6W93eYpb7qcVt vDj6D4zIDFOP+zA6HYAVh9uXCVog5+8= Received: by mail-yw1-f171.google.com with SMTP id 00721157ae682-50660e2d2ffso56015587b3.1 for ; Wed, 25 Jan 2023 08:50:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=9oBkpwDuDP6Raat/HRHsNpx8MqzIjjZSJojQEumXoyE=; b=telMSbMEB1I/JdT8E+AOlYPkvLPDxj1UCnywL1f/zz+GxB6zyzUgN+Q3Q48l8AYc8X qS5rmRFlzboD9JIVNM4srPZju+Dc0OvfYTnyPjpp4sHdEutwmKfLXtqzcN+4YmFBRVgu A3oTpxaFO/E/7LaM1iu3pe6Iv0CmRV+MC10+sbVUAqr2eeBPD17IhS27buTMH3bCJoMu fEQq5XzvwDAqtF1fp8r2H4g3vh98tijISo+CkjBRkXWvZWGfdkjpWZzF8VgIKtCc5sLs +bZFNae0CmrxcmnBVuga8Dg0CQRlWnW+6m8p+riuFjzQ8BSrHATHKU3+MoO2RS3dWuby cPfQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=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=9oBkpwDuDP6Raat/HRHsNpx8MqzIjjZSJojQEumXoyE=; b=Eg5mJ8n0c3vgRqdhNoCCznr1ZD4G2x2TRTCpLLDWcC4/cm8ES3UizbkFPPTuu88Rqv Br8NYqT97HX15xpawe9OKevLqh8M/B2+hM7RKCmxyX/I7LTyeEvyrYNVxUVFyRKwNcNj S5j8hBbt4Yl0Gw8F9Ce3HP0WS6ut5OpZyKYAupPfmwDkMvtkYe9CIUXcsSVGXfMbca+0 LB6V5esTpbIfV64VYWEQ5/nPiy4IoiO4msUCSgD5IHmO8vYxxUhHWH4cf3p92BUI24a8 95kdKwFMbOQhNpus6mU38Z4AJVxmIPMLx+kPXkllh6yk66kSrg4jVzXs4OraTP2OwBvA KIlg== X-Gm-Message-State: AFqh2koURWo0pK9xbwR/lK0T7653iUy06AqNtAjWpwoYl9NwSZ+hEbGU SyCy2v5wEX8aPogZmJVU2xCGbRUoz56v9LKegAQAIQ== X-Google-Smtp-Source: AMrXdXsah5c2WKVW38d6ZSr7pPop+n/mEJC53KDRGLQOXrHcU20AK6F0ktCN8HrtzVAtxjIN7wyafP19A/nGyLOtNU8= X-Received: by 2002:a81:1d2:0:b0:433:f1c0:3f1c with SMTP id 201-20020a8101d2000000b00433f1c03f1cmr4401576ywb.438.1674665403087; Wed, 25 Jan 2023 08:50:03 -0800 (PST) MIME-Version: 1.0 References: <20230125083851.27759-1-surenb@google.com> <20230125083851.27759-2-surenb@google.com> In-Reply-To: From: Suren Baghdasaryan Date: Wed, 25 Jan 2023 08:49:50 -0800 Message-ID: Subject: Re: [PATCH v2 1/6] mm: introduce vma->vm_flags modifier functions To: Peter Zijlstra Cc: akpm@linux-foundation.org, michel@lespinasse.org, jglisse@google.com, mhocko@suse.com, vbabka@suse.cz, hannes@cmpxchg.org, mgorman@techsingularity.net, dave@stgolabs.net, willy@infradead.org, liam.howlett@oracle.com, ldufour@linux.ibm.com, paulmck@kernel.org, luto@kernel.org, songliubraving@fb.com, peterx@redhat.com, david@redhat.com, dhowells@redhat.com, hughd@google.com, bigeasy@linutronix.de, kent.overstreet@linux.dev, punit.agrawal@bytedance.com, lstoakes@gmail.com, peterjung1337@gmail.com, rientjes@google.com, axelrasmussen@google.com, joelaf@google.com, minchan@google.com, jannh@google.com, shakeelb@google.com, tatashin@google.com, edumazet@google.com, gthelen@google.com, gurua@google.com, arjunroy@google.com, soheil@google.com, hughlynch@google.com, leewalsh@google.com, posk@google.com, will@kernel.org, aneesh.kumar@linux.ibm.com, npiggin@gmail.com, chenhuacai@kernel.org, tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, richard@nod.at, anton.ivanov@cambridgegreys.com, johannes@sipsolutions.net, qianweili@huawei.com, wangzhou1@hisilicon.com, herbert@gondor.apana.org.au, davem@davemloft.net, vkoul@kernel.org, airlied@gmail.com, daniel@ffwll.ch, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, l.stach@pengutronix.de, krzysztof.kozlowski@linaro.org, patrik.r.jakobsson@gmail.com, matthias.bgg@gmail.com, robdclark@gmail.com, quic_abhinavk@quicinc.com, dmitry.baryshkov@linaro.org, tomba@kernel.org, hjc@rock-chips.com, heiko@sntech.de, ray.huang@amd.com, kraxel@redhat.com, sre@kernel.org, mcoquelin.stm32@gmail.com, alexandre.torgue@foss.st.com, tfiga@chromium.org, m.szyprowski@samsung.com, mchehab@kernel.org, dimitri.sivanich@hpe.com, zhangfei.gao@linaro.org, jejb@linux.ibm.com, martin.petersen@oracle.com, dgilbert@interlog.com, hdegoede@redhat.com, mst@redhat.com, jasowang@redhat.com, alex.williamson@redhat.com, deller@gmx.de, jayalk@intworks.biz, viro@zeniv.linux.org.uk, nico@fluxnic.net, xiang@kernel.org, chao@kernel.org, tytso@mit.edu, adilger.kernel@dilger.ca, miklos@szeredi.hu, mike.kravetz@oracle.com, muchun.song@linux.dev, bhe@redhat.com, andrii@kernel.org, yoshfuji@linux-ipv6.org, dsahern@kernel.org, kuba@kernel.org, pabeni@redhat.com, perex@perex.cz, tiwai@suse.com, haojian.zhuang@gmail.com, robert.jarzmik@free.fr, linux-mm@kvack.org, linux-arm-kernel@lists.infradead.org, linuxppc-dev@lists.ozlabs.org, x86@kernel.org, linux-kernel@vger.kernel.org, linux-graphics-maintainer@vmware.com, linux-ia64@vger.kernel.org, linux-arch@vger.kernel.org, loongarch@lists.linux.dev, kvm@vger.kernel.org, linux-s390@vger.kernel.org, linux-sgx@vger.kernel.org, linux-um@lists.infradead.org, linux-acpi@vger.kernel.org, linux-crypto@vger.kernel.org, nvdimm@lists.linux.dev, dmaengine@vger.kernel.org, amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, etnaviv@lists.freedesktop.org, linux-samsung-soc@vger.kernel.org, intel-gfx@lists.freedesktop.org, linux-mediatek@lists.infradead.org, linux-arm-msm@vger.kernel.org, freedreno@lists.freedesktop.org, linux-rockchip@lists.infradead.org, linux-tegra@vger.kernel.org, virtualization@lists.linux-foundation.org, xen-devel@lists.xenproject.org, linux-stm32@st-md-mailman.stormreply.com, linux-rdma@vger.kernel.org, linux-media@vger.kernel.org, linux-accelerators@lists.ozlabs.org, sparclinux@vger.kernel.org, linux-scsi@vger.kernel.org, linux-staging@lists.linux.dev, target-devel@vger.kernel.org, linux-usb@vger.kernel.org, netdev@vger.kernel.org, linux-fbdev@vger.kernel.org, linux-aio@kvack.org, linux-fsdevel@vger.kernel.org, linux-erofs@lists.ozlabs.org, linux-ext4@vger.kernel.org, devel@lists.orangefs.org, kexec@lists.infradead.org, linux-xfs@vger.kernel.org, bpf@vger.kernel.org, linux-perf-users@vger.kernel.org, kasan-dev@googlegroups.com, selinux@vger.kernel.org, alsa-devel@alsa-project.org, kernel-team@android.com Content-Type: text/plain; charset="UTF-8" X-Rspam-User: X-Rspamd-Server: rspam03 X-Stat-Signature: wyhaw8jqzjz5jeewsbxmw3zo38pwmmuw X-Rspamd-Queue-Id: 72F041C000F X-HE-Tag: 1674665404-896246 X-HE-Meta: U2FsdGVkX19UirK75j04lbCgURuxhLFVHkZLXmrYHJI/G3b8WSGY6un2vei/x2cL3RCYVyUrpCJiBKS0ewA06sbQiRM+Y5GB+VMvpEm1bG4VT/8EBX6a1cQRbyFe8uth3wIShC1tIrx8Zehf58ZzXMagqGuQTkrHTBudZweA/6M5lXQ0tgRZdgSVdNYuZp4rD08fNlWsViLXZyAyD9vPCHKBZUIJrzDSn5vW0cQ+PH4LXSBAEwOxtU6tcmZTdbbU/ovezX9RVbZ+RKPkrG4DwXkEvGYPU4Qt7xTwsOxIZNA8m+UBFuHvN8T7M6AIawbMGOQ+JAYnPOYrL9H4/JdzX60TUAqW6PrVSBv0+5jLCKZ/4Sq+8UbqyWdgrFN5uCph2mikcz3OsLGrJPHOnJUbDUyPhPeK2eo/Lw129+KT9atN8Ujqva+Er6d/iaqsg6+yPhImJE6HmaLGpyfXb35DU0HHyLi+K1C1oTdSr5E9oBRDCVn17G+GNv+CCFOcipLJ9wrnn/kvhEltBz5XMhc7+LN9vKky4NGNYSKe3AjYItJ54TuQU7TWlq1kRrFbhw5u5td2XVZ9apdxBpg1jiGiPnImSNSnpVxFsbWA/VTA249VuEmvvcqH0MBmOjllEC5QMXOaHzPD/oILMv7QFxzwZMDsE6dBuHuvF08zDJ62Ls4g07ARbmcdFSeQ2N7yUl2JAf0J4HqRCqscOhOTUS61XZ9IzjTxCSybloG63x9wTc84nhc+NhIouc7+Bq86HxYOfx/gdqDSOFN3Hx0RMCjEFIU44T698p/xHf4Xyu+DXNNw9qShMnU5tJQG2ipgJYsV7tsshFyryMTp1ixq8bKVUF0Hti3yJP+tZFaS95Sjtems5nsSLsQZPK3TEoJySZQgnr5R7WtgJLC6eTud1YT2Yl0/p5ADhsiq9l8mzqoSZX3NDq79FDWlfFErvomJjbRnucrKGC9fGGFZNTNXKCF SN8OkjmP 1fxjgNxqGQHYpi/KxRALcdNu5nqqu/o1p1vJKAFATx1AiNDgyM2QQj9DTW6cEosQP02A8Ey1460xuKYOpcGihHfSaJjRcSSPdwOrQhdbOVc4j82uEtRNbZeMWkxgrmVL1TbECVdAEnrASGdL4mrY0r4lVq+pPMx85PM43LBtu8H9Ed8ss7yNXIfSdTg6DMc91OTSxeCFaVxnzBRq6BrZfiZK44lUCMeLBwXtcWfIq6XEQdu7e1LcckdukPYi3X8+8+nDRD3WmwNj5sCqFre9XNRSQtRwzbbShBqlkpMxr5TfgaSKl9RHaXBwiNVYa/Fdm2DLFNQW5hQ4uVRi198AyJ1PqjmyvF2Hxr6UrpaU3/t0s/s067Hg+JRObbKf4WwOh9VXQYr1Bn2YYhkZ59jRCLxyJPoAm2YvuqI6KEKlGmUyCgts9GuLRImDZCyHJTHM0oP+8pHCPjAhekHPW6RZDhUDrMQJAbwcJO8/wgwdHWQL9pXuhBL9yAofGqns9IOf1YXZxchiOPG8kaAlomwDW9w6ikIZKYYwxpVPSLfrTRvwxqqrPu6dnstd5Z836M6jU6Mnr5As71AEEsbZp9TsOEp+SYZl0dK+xxR7BUcfA+EDN6EvIB04jxWsMSwch+LdrDDydyXySvQ9bz/9n95/m8LL89tHHsXiC5fQXilQE9pSQ/cjBEqfkzRlKUZ+i2BRL9rEzoUyYnvq0j2X4IPfrcjhZHCY3J+Dqi0pD1zrvvmkn8O3yUXE4T4ZTG24jm/C15ZuPhHD2J+Pdo+P5VbAlZFsgkiH4ZQzXy3ZXk7CnLpT85IbktY0yVnQSYXTiftBmS59J6tryej+AjYFpWQErnlDWnt9h3L5veSTkryD0YL395GImgolpj8dtQ6ozbwcvcy7SYvrHjWBEX+Eooifkp79C3VR+b57eUe4U9qZJDm451t1yHlEPN4aX4LNQNV93qneAH3emdnUV4Nb6d1fWcF7T4Lk1 IAb0wEI/ rLBp+f+YiyE7O+bUKFvdQGPTNf8hWob3mCPfbhv2pHr5j8TRJCxArKAtyyvH+cUORN5EKfhUWqx3Ma90H1cyI+ecBRzl26S/+75djpMdOYODnP3FRbEJWeMPtu5P2vpLQJdJvp5r1z/1yVd6QRCYiayTLwtbvwFIy8iB4pxchn5GJoOgyXUcBpVOg/oZ7h10DY3nZluDgVHlO2oVJjbCCed77KZqtMJWbaoND9WwzM6XiO5YwQQMktLZxVLBKT8uxyZZlkwe1q0/JVnm4ozJWMNHAmVmXsJaUAKV2ouGT8E0Gi4JxsFkyiVpl2pGvpG+61vRSHId32zEe6fmiw5NhW7MZuHdNi5GyNvuGfRGbNwjlUrDvPoeeCVOjSPiGbkPuv9a3bY3ikgMl1BieS4n40Yp9udcpEpswXx8fEML4Il5mkHqdsGiCqSuFRbGng8LOJbAMDEtH2KzJuCwqPLYQHYF+uJywQLrejnLpIF/mVQcXKgLvpl6GoPUJhLfpI5eBW4XjeC1xl3yMPK+eiI33lrMR8V8VVmvwYdVMJAz9G0mAvhlP+v8WIdEzox3Wn8XORMTGKiXXaVGjcIp7t5A8CbvhnYZ5KNjDBAAhFMLv04qaV6XJ2vz4lnLtfdGhMtR9TsL+h+DQZmgYAVI56Hoh9h+zrB8InSiZ19vr6PeaFIb4wAFbj64ddJTUZETx05I1WURsRq9PHZHS0yjdYWjh2ArMz5r3wAQdvZOyqo47uHJys6STItQ/mTICv//7npiqQEvL4CvzA3yF3eTw6uOc5bw8hAF06i3OFsjcE3lCADJMi28Kz4wd4H9XssLERbDynPep79Dwjw0PtGiz+EUD8Xf6ACcguZ2VdtrN5OOYOy9Y0fOnZtPIHGWel7SU13HUvjXcgW5YqVBW0MuFj/1iMBLg9FLJiDkY068L2nF7PsBv8pXu+eMIoeNHozuRdQ/hL+GZZodo4zGvM4Cs6LisYEMVHSXw KT1x1yxI DOQ9mV9rokvQi12goI0+j6FaBGct11ereUdceKJL2rPbPW/T85dxDElTX32q9WK/EUjX9YefoznEr1PphJHBg/YJDOxSj/ZBkfVBdpDMU6KY5slXEiy+13yDDVwqhxxfNAdRx3HYWs2CTRsEMnS1VykqRANGDqg8bobP7/r58a/gZLGxOmas/UkzhtkojXPpJXYlaFyq9+A5id8wAG/HWoPWjfropgwmHUxelRwGKVn954CnJEHaJWxiYXpjgCkVkJ4xiD0GWe3oHVKUEQhDBPA05++ZY/CWRjkvysrYIVMPxPktGlW9GwMQmip0DjblNSly0M39/mwoZuCf/f+xD0CviKCmsy8FbY7n2p4YwQ7hMUAOqpiOz45ZbP1ZxvqUUXqT0Y5wWkgO36pjh8T6OcrpB6zVOwef34oHBAfgkZLsokFNY+NX3GN8LwwvpVvqGV6OUAroBWsVEVsEvqagzg+t9FEmczfTp4EOIKAPsM8PxzbmINn8/cVuSw/JXN2webN+gw8m5wHVgAG9DkTxr5mJGh8ujCZteZn5nHcUsH+VPaontG3t5cdYvNdOEkKk4jDu+CwquIUPuH1atJEZOsR2PnE2QsZj2AGhZ6F2cDpUis2STX7JMSkM3f/YTwsHdSvkUG7ssBnsUWr2BhRGYshxp+p5ReZSsuT4LfLkekuE5T7LNxKU5Ke9K/1B/J8+AKzlEBvc55f13qh9Ls2D+VtmwRHVTe6OZJPtsbg6K3USUqMQbI/m5JsHhmZCa/UgixdzdrMonx/hvl8AJwoGHzyXv6LbKaNIkrlLcEPnmlPWRN2OqyeIai+5zcggPHo5dzkE185bG0LfrqaUk06mhOzDTpS27Puu9+VfZ+XIGI995lhHcZ2+EKNJED7CYQSq2EVdkqZswIKBGFjfGEACD5jfNb70485KbDs1xb7ZkqxLyko4tLozLOfzIo7ciyWTPO4+U+Ml1NFAK0J9Kc+e/X58HhUxW 2i9jEBUr F+OnzJ8a549S9upLfkMa2bwSHMz8vD4bXjyyRA+BMJq95w2CS7IUL8hjkCWI7bV4wM8+I/y2wDZchkic90cJGObssim100LVg+7ELzx9wRixVH4gcXBE/5b7pjvLn+E2zi3srv3089OvFES1iXD3nZkVjeHs4nspms8Erap3Q86Rwx25biuH99Iat/EwTv/FV4sV1xz04t75UDT8J5c/KRMwIzAFYST0iOehAXnfjve4tHf0rDBcu7twKE7Y/6DDI7k5uKHnfEz07SCB2xlFH9MPi1gBDmqelE5GC3lS7EeZD3Sjv5hmMqs1RA7bneroTwXq8YX/dFKsjs78d48bX3I5QjtDd6MmvnrfUczxLJTqOP3CtOcL44H+1sYOgBoXhLmDA1J9esKvRtuEabYLRBMs1jjhrj8zklmVnjRkvXqZdqgS/aAcJlPrUkCv5JopGUQVGn4KZPaH0PpBLNjsI/lQvdoTZT9WywrIidj3Fd6fUoxH12xQTqEExQybeW/4+NMt4dUfv7OA== 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: On Wed, Jan 25, 2023 at 1:10 AM Peter Zijlstra wrote: > > On Wed, Jan 25, 2023 at 12:38:46AM -0800, Suren Baghdasaryan wrote: > > > diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h > > index 2d6d790d9bed..6c7c70bf50dd 100644 > > --- a/include/linux/mm_types.h > > +++ b/include/linux/mm_types.h > > @@ -491,7 +491,13 @@ struct vm_area_struct { > > * See vmf_insert_mixed_prot() for discussion. > > */ > > pgprot_t vm_page_prot; > > - unsigned long vm_flags; /* Flags, see mm.h. */ > > + > > + /* > > + * Flags, see mm.h. > > + * WARNING! Do not modify directly. > > + * Use {init|reset|set|clear|mod}_vm_flags() functions instead. > > + */ > > + unsigned long vm_flags; > > We have __private and ACCESS_PRIVATE() to help with enforcing this. Thanks for pointing this out, Peter! I guess for that I'll need to convert all read accesses and provide get_vm_flags() too? That will cause some additional churt (a quick search shows 801 hits over 248 files) but maybe it's worth it? I think Michal suggested that too in another patch. Should I do that while we are at it? >