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 28EFFC02180 for ; Mon, 13 Jan 2025 19:11:38 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B93E76B00AB; Mon, 13 Jan 2025 14:11:37 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id B1D1A6B00AC; Mon, 13 Jan 2025 14:11:37 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9BE196B00AD; Mon, 13 Jan 2025 14:11:37 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 7C8686B00AB for ; Mon, 13 Jan 2025 14:11:37 -0500 (EST) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 352BDC02E4 for ; Mon, 13 Jan 2025 19:11:37 +0000 (UTC) X-FDA: 83003372634.08.7DD3309 Received: from mail-qt1-f176.google.com (mail-qt1-f176.google.com [209.85.160.176]) by imf06.hostedemail.com (Postfix) with ESMTP id 53DCD18000B for ; Mon, 13 Jan 2025 19:11:35 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=zGRCmysi; spf=pass (imf06.hostedemail.com: domain of surenb@google.com designates 209.85.160.176 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=1736795495; 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=uuTiApKgNeAoPlSqxQy/7OF5EuvyPAgcsRi03hQnDgU=; b=uLA4qLY5mGS5S0ha/VWMph9Gk6kgPx3NWC277CFEAXd9cDPzjtZ+R8n8fxF4gErGy8BWbu JfAnEMLxyu4WV8tPbALH74sOBQtZ7LcxA0xFHuAPW0XJVwlntVkgGdEmLCwx4N1Xxq/jc6 vNdWtaAaoaI/HwoFv+avvn5EZBuBbNo= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1736795495; a=rsa-sha256; cv=none; b=kCqmsxwYUzlErmttMeDqIXv0XSvlLdR3w4o27YQWXHV4SZEFo3Rquv7scwZYunZa8cRp4T N1rfXvWk03JYkUJEZYiGkUrCD/HS6AVhHF5H7xs+EJh5HluneTc2C7wivjaTVxZpsthx19 /2VJ+YM7RJIP1v3YJtjSEtXFzA1NQLw= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=zGRCmysi; spf=pass (imf06.hostedemail.com: domain of surenb@google.com designates 209.85.160.176 as permitted sender) smtp.mailfrom=surenb@google.com; dmarc=pass (policy=reject) header.from=google.com Received: by mail-qt1-f176.google.com with SMTP id d75a77b69052e-467abce2ef9so27781cf.0 for ; Mon, 13 Jan 2025 11:11:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1736795494; x=1737400294; 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=uuTiApKgNeAoPlSqxQy/7OF5EuvyPAgcsRi03hQnDgU=; b=zGRCmysi+2xJjFlad11GLb0A6NmxQv3gsPXz7RIJF1RuqLqnG9BIc3o/cQqpYk1awH gL/ks4esz6lwOZ3BVmSfwGH9bNP4nxwXH34gCGAzzyxhs8HhMpyySSlkTgXJRo9CdK6z coIHAbgYhJT5TqydqKeE17ZoIf2eZdRHivfCMDVE7Y+4mKHXN6mHWGyJKo18FVMICkus xczojHVgA4Q/MxxtS71DWhMCWmbl7uKrJkVJYiOtRaHOleGoeDK6RPHyFErE2Ck/xJny j49ZFSGjK6Tx+D5z4izErOSiWLG6K5q2UERcQsvlEm8fjjKaLRsL6IVjcc7I4IeoNqxv jf4g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736795494; x=1737400294; 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=uuTiApKgNeAoPlSqxQy/7OF5EuvyPAgcsRi03hQnDgU=; b=v4tRf3jTaI5TVAtYWSYkQCN0+tDy4AeVXSfNC0bEu5XoEa6/GoyPHLhimp19/UE0OB 2AwQPDg+Wz+erAFMzrO1lxWk/7itgVVBqdG0zlRlMWtpBlkUG1ub994U+aueL9P+xZTG 0juRlu4oiHqzIxl2b/ZI33+u3lF7s61WgNhGfwq+/HoWFMXI7kxozrp8P6pIWBEaTrQL wpoA3+3jlgJWYrcfxMbT4pVCTYazwuuGBD7HT7+YHD9/757clwYJiMpBUQCFg2YlF2wQ CFrnim/DHgAXDko/9BzDYRiiGGmSAjAt2Vlx3fztZCqOZZC6H0XgZEouwrvp3kmA82Ia ITsg== X-Forwarded-Encrypted: i=1; AJvYcCUEt3NFebctdx41IrSvpjJGeYF8KWq5AWPHsD3lyLayM/iblVADbX0YCxJouPV+lzmWb4e2jMuDoA==@kvack.org X-Gm-Message-State: AOJu0YykwSqOCZKrBbLOsrOzoq/3VdHombhvi/Z3YY3lxqJcUsUwTFVK t+kREoTSspgbYWJb/2hU4/KFZNssqLUuZ5faMl9f2pWes6acI0Bz8lhLsWrgd9+SjBP1w/0uayD PvsHweEg86d6TwQ7G3gl27gs5pVmpSfamrBZM X-Gm-Gg: ASbGnct/YWod6QLVB9hKvgPLBKTa7+f3BVOrHt7QeMHOaHJVhWi4gd2donQ/4IIWAET E9lpL5bF/vOZ/P7Bi6nc5xEOJ8NG8bqoxj3EcEg== X-Google-Smtp-Source: AGHT+IEl3tvIPBl9VN/bb2o/e0KFoqEglK+YdaEcFzM5ZAds1GxfqEMXPxSfHRaZPnYl7EaaVHNgRx7XqCLclqSf9lA= X-Received: by 2002:ac8:5983:0:b0:466:9af1:5a35 with SMTP id d75a77b69052e-46de96c4a0emr228141cf.10.1736795494207; Mon, 13 Jan 2025 11:11:34 -0800 (PST) MIME-Version: 1.0 References: <20250111042604.3230628-1-surenb@google.com> <20250111042604.3230628-6-surenb@google.com> <5d46531b-570b-4f81-90f3-2fb157664f87@lucifer.local> <15720844-b970-4b37-b475-bf6e7c72113e@lucifer.local> In-Reply-To: <15720844-b970-4b37-b475-bf6e7c72113e@lucifer.local> From: Suren Baghdasaryan Date: Mon, 13 Jan 2025 11:11:23 -0800 X-Gm-Features: AbW1kvaSfrRFKtX_BqiCnTXazP_AmesM5No-G1nEpKAxDMSOB0ueRnNAuJ0pxCg Message-ID: Subject: Re: [PATCH v9 05/17] mm: mark vmas detached upon exit To: Lorenzo Stoakes Cc: akpm@linux-foundation.org, peterz@infradead.org, willy@infradead.org, liam.howlett@oracle.com, david.laight.linux@gmail.com, mhocko@suse.com, vbabka@suse.cz, hannes@cmpxchg.org, mjguzik@gmail.com, oliver.sang@intel.com, mgorman@techsingularity.net, david@redhat.com, peterx@redhat.com, oleg@redhat.com, dave@stgolabs.net, paulmck@kernel.org, brauner@kernel.org, dhowells@redhat.com, hdanton@sina.com, hughd@google.com, lokeshgidra@google.com, minchan@google.com, jannh@google.com, shakeel.butt@linux.dev, souravpanda@google.com, pasha.tatashin@soleen.com, klarasmodin@gmail.com, richard.weiyang@gmail.com, corbet@lwn.net, linux-doc@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, kernel-team@android.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 53DCD18000B X-Stat-Signature: neowkeydjtymazp1i8xwgsuhj1mjy6zh X-Rspam-User: X-HE-Tag: 1736795495-942096 X-HE-Meta: U2FsdGVkX1+ID20W04JQUhHzZBsufrwqfVqzFJodRQHFck9GE6RD/EjPIFWymOhdK3zWO3CC4VK5OT1VeCD/v1PZoqi/K9f52+Iq/4yKi3SejaBRw9hCA5Ccvowc2LjQwXsSmsBMhAabjJp0qTe2tPMaZu+JutSi4FqFDHaT7oeFeyz3QQIew35QPr7OYe6/gN+F/cF4EUzB6hWWVHrAKBfD4aDbePN6Yy2g1/DOQ5bgreEO1/HT637IKTyyOmbm9uY7T8bN8wVAh8ev0WrIhijuz6Q1GTYsVB96rz8Tshl28SWYC2SlW/7a9sHYLlrCRqDTG/3nxwsWQFv8jUctvKixVIhmxMuge013EmRWPcLMiYLkuSotjRIlXzZhmI9u5NeIAShlRObkvU0R9IgX931SJpKohYSKaxgFMVKtT2voSmM5ADEBWDuY932sToKtC31pu16+VGciOfZJ4HZU5x73DXsPvhuztvsiW03Xlm4MVcgi1brBOBDGEy9iACihCsTTDTgMR24sgcxC0fBMGMXWeUZMUjJkRvNvg/h1flyQzZ+47+6TGbINkdQQBtZyyZo03G3yDXVDSNZV1v5O4vRaTV0+0jdZ11aD+U+FiQ9NWmue5EeCeA3o+AkCiTxGlwUwNEJ6WfURRbGMK0ioDxtfxmejfPPeis+ASMQ5yaLagMr+Jr+18xiB3F1cxTSocKr4TLIMGDEbPIBkDSMYxDZmFJJ20xSNHoTUPrBShDk8eGQR6xKkXZVyMQixyWE5DCHT1vR37QKJYgYdnxfyh65moHYR39BWfrMbs1U+t37fFiapuM7xrRdlBgMrJk3KlK1PFvhUVwDMYfGpnbB0vnfwQUsESl8Hb+izInJvLeZd6E4iGkndUvUAKmi9D6Zwn8hU/efCzHrXxugnWE5Q9zZLgt3d0Me8fr/7+QlL0Dy1ypzLFRCl7Q9dmWUtykRC6c9FM0GooD7zOidFFUO CLzXcCkX N6AzpaNQNK1tWJFybR+UUQV05QLd/J5RIlEER3+4JJzy4lnKio+anEb1r+6lKnSj/UB+IeKvq6retzEjMs6dSTV3epDtljZDNLhhW6C7Nu0oBgzP2s0ZtaCTSenZsAf4v6E/o4pvd0pwZDA1Ix/Dlya9d8K48FqZ8o6aR1rp94h0DEtNtDAtx7iC5LcUJixvZPXgNlLCMOgfQSgTnRGkNITKrXDNKXaiyef0wo3DDZCzvomPAKMmpZHkyF+zr3dP2NQLggesbjkXc/zObHxnJh8c6KkhJ6/cZIk9I/FLfZ79I9QOFkWJmTZOMiJXIUqylo5CI X-Bogosity: Ham, tests=bogofilter, spamicity=0.000001, 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 Mon, Jan 13, 2025 at 9:13=E2=80=AFAM Lorenzo Stoakes wrote: > > On Mon, Jan 13, 2025 at 09:02:50AM -0800, Suren Baghdasaryan wrote: > > On Mon, Jan 13, 2025 at 4:05=E2=80=AFAM Lorenzo Stoakes > > wrote: > > > > > > On Fri, Jan 10, 2025 at 08:25:52PM -0800, Suren Baghdasaryan wrote: > > > > When exit_mmap() removes vmas belonging to an exiting task, it does= not > > > > mark them as detached since they can't be reached by other tasks an= d they > > > > will be freed shortly. Once we introduce vma reuse, all vmas will h= ave to > > > > be in detached state before they are freed to ensure vma when reuse= d is > > > > in a consistent state. Add missing vma_mark_detached() before freei= ng the > > > > vma. > > > > > > Hmm this really makes me worry that we'll see bugs from this detached > > > stuff, do we make this assumption anywhere else I wonder? > > > > This is the only place which does not currently detach the vma before > > freeing it. If someone tries adding a case like that in the future, > > they will be met with vma_assert_detached() inside vm_area_free(). > > OK good to know! > > Again, I wonder if we should make these assertions stronger as commented > elsewhere, because if we see them in production isn't that worth an actua= l > non-debug WARN_ON_ONCE()? Sure. I'll change vma_assert_attached()/vma_assert_detached() to use WARN_ON_ONCE() and to return a bool (see also my reply in the patch [0/17]). > > > > > > > > > > > > > > Signed-off-by: Suren Baghdasaryan > > > > Reviewed-by: Vlastimil Babka > > > > > > But regardless, prima facie, this looks fine, so: > > > > > > Reviewed-by: Lorenzo Stoakes > > > > > > > --- > > > > mm/vma.c | 6 ++++-- > > > > 1 file changed, 4 insertions(+), 2 deletions(-) > > > > > > > > diff --git a/mm/vma.c b/mm/vma.c > > > > index b9cf552e120c..93ff42ac2002 100644 > > > > --- a/mm/vma.c > > > > +++ b/mm/vma.c > > > > @@ -413,10 +413,12 @@ void remove_vma(struct vm_area_struct *vma, b= ool unreachable) > > > > if (vma->vm_file) > > > > fput(vma->vm_file); > > > > mpol_put(vma_policy(vma)); > > > > - if (unreachable) > > > > + if (unreachable) { > > > > + vma_mark_detached(vma); > > > > __vm_area_free(vma); > > > > - else > > > > + } else { > > > > vm_area_free(vma); > > > > + } > > > > } > > > > > > > > /* > > > > -- > > > > 2.47.1.613.gc27f4b7a9f-goog > > > >