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 4A2C3C02180 for ; Mon, 13 Jan 2025 20:43:08 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B12366B0096; Mon, 13 Jan 2025 15:43:07 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id A9A7E6B0098; Mon, 13 Jan 2025 15:43:07 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 93B046B0099; Mon, 13 Jan 2025 15:43:07 -0500 (EST) 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 6EE236B0096 for ; Mon, 13 Jan 2025 15:43:07 -0500 (EST) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 21CD41A0323 for ; Mon, 13 Jan 2025 20:43:07 +0000 (UTC) X-FDA: 83003603214.15.41BF34D Received: from mail-qt1-f175.google.com (mail-qt1-f175.google.com [209.85.160.175]) by imf19.hostedemail.com (Postfix) with ESMTP id 45FC91A0004 for ; Mon, 13 Jan 2025 20:43:05 +0000 (UTC) Authentication-Results: imf19.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=R05XHXTj; spf=pass (imf19.hostedemail.com: domain of surenb@google.com designates 209.85.160.175 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=1736800985; 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=vuY9Z9W1RxsRQb/hlXHKWUQMI4dGevMG7B5H3kN6cgU=; b=hog3t1TZBP2eHnWIr0i6pr7DrhI66BRI0kh3Al7hT9umVGsyRn8FJjf7MCFpikqtZWLtcz 2KUWYBJQl0Bp7D+C+INlcLOkYzV15UzYfuOoc6YN0hQkG3PwYtadDeOgB7lcAV/mEDt2Zw kWJoOwmMoOLBRqCxWM62rttxNwF5PBY= ARC-Authentication-Results: i=1; imf19.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=R05XHXTj; spf=pass (imf19.hostedemail.com: domain of surenb@google.com designates 209.85.160.175 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=1736800985; a=rsa-sha256; cv=none; b=HLYb0UmNtnVryDKp8gtm+nEilpELfY8JzPFksq5W6DMTJvCOuUimVQeWAhBz1WAH9+R5zk 27UbvSqiTqPh97X2AaNN9DnbYsbMI/HtFO3lRAub8+b25zh2moG3X6fS+BHA1T3ADwq9qk qjGwXUbkjX2DeV7HocuijAM+iN9w4xI= Received: by mail-qt1-f175.google.com with SMTP id d75a77b69052e-467abce2ef9so51741cf.0 for ; Mon, 13 Jan 2025 12:43:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1736800984; x=1737405784; 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=vuY9Z9W1RxsRQb/hlXHKWUQMI4dGevMG7B5H3kN6cgU=; b=R05XHXTj2LrbeSY1/u/YN2tDXdynQlP58OjxScoTdFhi6i51CcpZWwpXV0T7k3BBi7 zwaOcjlywYFye1Lg8Gat92CRcXrUvOJ/0tt3OtYt7Fk1o7kUKNj11K6R6AvVgiLJZ8nA 1tt6H37tFXG5sT5xcZ4mQcyDYyPyhKalRrqXjgtky1zSY/fK2Pm1AycSKCYY9gk9dOrU QjYawvnw4UVVl/WzK1WjcAIq++SDx+rtZWKybHx5ncerX+H73zv1JWvcukBnTSoCTi0X FImPLuIQuwKuSnovlnAdTSdj1nx0vrKmOsi9PO71R0SthzXsi2UaPFfKHtdj2xqivVqZ rVaA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736800984; x=1737405784; 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=vuY9Z9W1RxsRQb/hlXHKWUQMI4dGevMG7B5H3kN6cgU=; b=dvWS1xZXqW+jP00Sv6ycJw3q9Slbz89VPc8mOEExQvse0tiOqNN4OnhTNU4HWXJU6E Fss7Xb1/IU2TUJtgUIUSOMNyaHKUjEj5GVkFIPchyWPpR5hvfYYvQtLScQh/KKF5t1gM jW8Dz0aovDSHuHTznhEgqBvm9Nw/TOj3oR+iQ1ST+htV0cb2Q+oX+Uz6j7zv4/zc/nXh MNahZzfqNG03YR9QnwmVsrI+Yeg61MwIsxpUfnN5NJnwDTlYaxR/Xb/XydwjSjzoi1rC wti935a9dWXCxA+/NC1Dn5ZNXO+rrsIWWelUBmULOXGCc4m6S90otWc232tQwCE1itsL H8uQ== X-Forwarded-Encrypted: i=1; AJvYcCUjd6o8Z/uSgXgA3MVeuMa6DjPsTBl4RGf2Ct7BTDNODhmbwSLOjX2Gd5lxYlkLKN/zn/aRAvLgbg==@kvack.org X-Gm-Message-State: AOJu0YygqeIUcE2ICB5+wGSYixsrMRHKtzUpPfhH0JcEPzcfPanInHD9 rPRGJI3ouCtU/zK+dgRNFHQCFfQpeg0Ndy1TaONg1cmdxgPLOtRfOd8TVIbd2QKc64m6qiowINB qJwazNYqGiHOwLhi/4u7neAtNihKKLDPLLE6x X-Gm-Gg: ASbGncuftewL1z5lWHXfa0ucz1LwaPNo6GMdfu5QSmSf/rgTbNW2806l8tXsF+ezvDZ ZNiQtVV8XDcGYGliOeNjYcvqB6SFCzij8MNlgZg== X-Google-Smtp-Source: AGHT+IE4h8N8nyH42dcqZqf2Kp1iF38NCfkejCflIfBW1jYTmtVWjUdbmgf5lEHFuiPEmks86blqx1+e/ZvFT0wAOkg= X-Received: by 2002:ac8:7d91:0:b0:46d:d8be:d2bb with SMTP id d75a77b69052e-46de98bc79bmr373761cf.11.1736800983984; Mon, 13 Jan 2025 12:43:03 -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: From: Suren Baghdasaryan Date: Mon, 13 Jan 2025 12:42:53 -0800 X-Gm-Features: AbW1kvZd9mnGBLrKX7mvqEVECiRPRxTtZQbwIhOl-2xZxAZ2qDUn1UlM5rtCC7Y Message-ID: Subject: Re: [PATCH v9 05/17] mm: mark vmas detached upon exit To: Vlastimil Babka Cc: Lorenzo Stoakes , akpm@linux-foundation.org, peterz@infradead.org, willy@infradead.org, liam.howlett@oracle.com, david.laight.linux@gmail.com, mhocko@suse.com, 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-Queue-Id: 45FC91A0004 X-Stat-Signature: 7rngiwtx5bktdif9hm6g1kp9pwihprer X-Rspam-User: X-Rspamd-Server: rspam11 X-HE-Tag: 1736800985-122188 X-HE-Meta: U2FsdGVkX1/K7OEvcSWAAtJpSc6n9aEpvMf6BatLh9V7bXPZeoKVeYSq4a++PrNUxGV53RZRoCP5FkmGVPNKXO45ZoJsW3GYVt0LzUlyKsSpYauaXwvnzLHpZr6xaql9VQXP2lU11yhaetbbqbd6iRMDvO2QlIjDnrHmI2IqpXqPyiJihRJOhN8DR4dkybAPmaEGebFg5fyDPhZZP+7Od4Mx5cacMgunxU21vqCe/pc1w5DtxVU9/wnx0G+eETcM/Icj4O1TDeIxXxUhd6X9BerRABLqCsv5yWOW1V/jt3qPAuftD05KxdmXULfrlVJIFb74GFA7220XBYEqURmbJtKTAwyoeCw9zYkzZ5Qp9KR4cBhUgkCr/5NZNpGMmTU0JK5tAAuqnkk6fzSbZjeyFWw3kIJVAmonXEvqPjDYpZYA3DKihqE0IDzdihPDMZLVu6mg3w4CJG6UalaPJhRCgQrj87WAhrCBWI/LqjLDTQUBkfLI84kLL0uBlKj6FiPrW+P54dtPVTMdDvSQ+DcrbILQqqketUpR58RrUy7okqY0ZaWwFI8RlyLex+dv8T8tXB0wcC7hihiHY8J9P/oljtFL9L/IPJkDc68hkI9WxpFHzijqNHoD/pNijTMCcBzOEqB6aOJNH/sv8RO3y21qHOgZkZ82MdAc9AJdmBA/L625wKB3Uhyr/HcOHQ+D9ckG/rl9hffmS2QNMLP34syvID/HjYhBxyDebEyVHIUasb2wdtWOKkYTzWu+kABwmTNsTwtGhAJIutcPeEHmUrrH4TjfjJcuOr2ddSNgp/lYgexdVlbp7xJfokT6/XkVlu+lToS8DKGCj+ha5RatxCGiabdkV3VwiN7z468x2zYK5r74G8GDY0pbAdWaGZV0Y6U029lr+ms9at6BMIxxTNmmKJUMSL/QixIo4IhAl8Sd+R4lpz6l3ip+4tM4l9z6Wt5pQ+CmrPTOS8nOjJQxpk9 uVr1hB3n MVrwYnbBRATe0v7+J1oRlDcdk1pvhoKMwKxX3/B6ZP184Q/qxX9nMT2MYj6w2rAYIwL0c47KQQq87lvXPRk4hfP/BQ9lBDF+ONmQCV02mUX8bQwU47f+Dvevo8F+UERIZcYiTJEDDm7acAkL9IBpW3nAeWhuQWTcHrRev64GAtFLBnszW9ElAb+dfe6zsfpF7iaGM3d+q/qaOfF9VvFki6/O1gHcsWiBPhWRqwQ3EscinMWXY2jnn/omI/8LXkXshoClBW97yjrHGMucy69VHjB3+g/CoH7ZGeKzD X-Bogosity: Ham, tests=bogofilter, spamicity=0.008923, 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 12:32=E2=80=AFPM Vlastimil Babka w= rote: > > On 1/13/25 20:11, Suren Baghdasaryan wrote: > > 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 d= oes not > >> > > > mark them as detached since they can't be reached by other tasks= and they > >> > > > will be freed shortly. Once we introduce vma reuse, all vmas wil= l have to > >> > > > be in detached state before they are freed to ensure vma when re= used is > >> > > > in a consistent state. Add missing vma_mark_detached() before fr= eeing the > >> > > > vma. > >> > > > >> > > Hmm this really makes me worry that we'll see bugs from this detac= hed > >> > > stuff, do we make this assumption anywhere else I wonder? > >> > > >> > This is the only place which does not currently detach the vma befor= e > >> > 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 comment= ed > >> elsewhere, because if we see them in production isn't that worth an ac= tual > >> 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]). > > So is this a case of "someone might introduce code later that will violat= e > them" as alluded to above? Unconditional WARN_ON_ONCE seems too much then= . Yes, I wanted to make sure refcounting will not be broken by someone doing re-attach/re-detach. > > In general it's not easy to determine how paranoid we should be in non-de= bug > code, but I'm not sure what's the need here specifically. I'm not sure how strict we should be but we definitely should try to catch refcounting mistakes and that's my goal here. >