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 0E9E7D32D97 for ; Tue, 12 Nov 2024 19:52:03 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 8BBA68D0006; Tue, 12 Nov 2024 14:52:02 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 86B518D0001; Tue, 12 Nov 2024 14:52:02 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 6E49A8D0006; Tue, 12 Nov 2024 14:52:02 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 485218D0001 for ; Tue, 12 Nov 2024 14:52:02 -0500 (EST) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id E1CF91402DE for ; Tue, 12 Nov 2024 19:52:01 +0000 (UTC) X-FDA: 82778486742.13.55EAAFC Received: from mail-qt1-f175.google.com (mail-qt1-f175.google.com [209.85.160.175]) by imf14.hostedemail.com (Postfix) with ESMTP id 5BD7E100003 for ; Tue, 12 Nov 2024 19:51:13 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=kxdy7wxr; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf14.hostedemail.com: domain of surenb@google.com designates 209.85.160.175 as permitted sender) smtp.mailfrom=surenb@google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1731441057; a=rsa-sha256; cv=none; b=Vulz4tH2clzr+cjFc9/Wx+yHrCR9qNuVDycDWKEopwg3OzI2PI8bfsvae/4bmbHlLtjP49 fzIuERkdhWK+tBGTAk9YbWjVoGQV0a4Pw/1xIvKIh39qBU+DVcvzv5IZUJtl9sJY4uL4Q9 tCZX7yNu99E6tP4g3GSXY8aWFGvhS+0= ARC-Authentication-Results: i=1; imf14.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=kxdy7wxr; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf14.hostedemail.com: domain of surenb@google.com designates 209.85.160.175 as permitted sender) smtp.mailfrom=surenb@google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1731441057; 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=gDNBm/U0yVHZV8qUr/3jUbrM8ULh8NcvU59R50o8V1g=; b=UxFmUd3uElFnt3INY2VQ5qmDd3Z0iiElh1O0RvCDbiKLbqqbd5LDyPy2Zml9r+R7/EcMoZ d5+3ROuKZNt+iHz4e0hx+SkSUJ3ZZ+pYK9+9cRdH+Clq/HoDUGOCc+6pC26qEomVtz9JPC C5/qNcTqdQbzkNrAmkP5TQg2ViCT45g= Received: by mail-qt1-f175.google.com with SMTP id d75a77b69052e-460a8d1a9b7so37991cf.1 for ; Tue, 12 Nov 2024 11:51:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1731441119; x=1732045919; 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=gDNBm/U0yVHZV8qUr/3jUbrM8ULh8NcvU59R50o8V1g=; b=kxdy7wxrpw24ImiyFHaVFXxwjzyNkyOrxLsTViQHLDXC8xjRlUYF9PRDisbXBrJqgw tIUo1zn4D+ZC8IQInNv5vCzqqtjtGwDSEO8und4jS3LCGBD38w1xxHeEq/A0s/t9x24U fYICAN3zKgtUgyVqnzhcDwAk+NY1/fnGWRDhNwf8iRRd5xR7C8B8GMXu7WcvEd70Iufi 37ClCW97lRDHz9g86THH1jA16r2B8o2sMGZkM6xot4Vk+nVr32+/3GQn41++57ZBTOxQ id6ZF9CwgR7w/CVUIVjbcPWFgI0EM08mHLQHOGFBJVXhYPV2lNjzZuwTdzSmSKspVMhm s/Vw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1731441119; x=1732045919; 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=gDNBm/U0yVHZV8qUr/3jUbrM8ULh8NcvU59R50o8V1g=; b=kCtfGL9ptLXt8Rl0LT1Rjm4L7b6QqNEwPg5Dfw+eY8qfufrbteKApB9OBD8sBBGc2c N1Yj4Zwk8QOueVN6b5YIjYaXHdCsywYua4nmB1WNl0nM86cGKtTlqjIIl4jNvQ1SLIpj 9q65J6cV0u0RGYMSv3HMZUU7H7B7QfrOHnhtVE2JOBuMebty0BozXffuLv4b0XF/FZLo dHP84/ff8sBzSS4PkSjSHD+LycrOS0Hnr/TxD6DwnL9RImUSDMzC5k03zVl7+7spU70l KhUAwbOwzPPxUDa1rzUfu71aM5sxMnP48hZ1S0Yp0Jba+TgDZcBx/PftPux5kj87ftyh ufDw== X-Forwarded-Encrypted: i=1; AJvYcCWuk0DrEK9cG6vnRgUag0KN7Ba14ekHdLMNXVWbDlm5gkYlyTExQ+gpo75kvM8AjEFmP1KoE+Mz3A==@kvack.org X-Gm-Message-State: AOJu0YznFrIp2+qKIuKQrpkkyA3NY+46jZv5iIej7URS9kYRRUscq0Y0 zxVEl+fs7rwhn8G86zatTk7S8JHL4uSECjMBpQBEod1xSNKGY/a7QkyyzXQR70yncc1K87wc09V QnZNhWueRe9RJO5b+av2UDr8GN1m10B66zbQB X-Gm-Gg: ASbGncuMcEffWDOopb3J8ur9DZSpkbLkxwTBJ8UGW6higCxH2uJyP7QEGu1QJvHTlJG 3AGa6BqzN7eY1NHm6wdemYMx1ukzshSOqlLgHmyNqOvqmCju4XuELS1lJSPM+7Q== X-Google-Smtp-Source: AGHT+IG02KzRz0I4R7IHawM0fVL6bMMsHycSuvnA+0xsEOeEU7+UlfzUSrWR2D5DsFWXSW6GCTA5mbmd8oPsAM4avhk= X-Received: by 2002:a05:622a:2a94:b0:461:3e03:7388 with SMTP id d75a77b69052e-4634be3aa39mr101821cf.25.1731441118826; Tue, 12 Nov 2024 11:51:58 -0800 (PST) MIME-Version: 1.0 References: <20241112194635.444146-1-surenb@google.com> <20241112194635.444146-6-surenb@google.com> In-Reply-To: <20241112194635.444146-6-surenb@google.com> From: Suren Baghdasaryan Date: Tue, 12 Nov 2024 11:51:47 -0800 Message-ID: Subject: Re: [PATCH v2 5/5] docs/mm: document latest changes to vm_lock To: akpm@linux-foundation.org Cc: willy@infradead.org, liam.howlett@oracle.com, lorenzo.stoakes@oracle.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, minchan@google.com, jannh@google.com, shakeel.butt@linux.dev, souravpanda@google.com, pasha.tatashin@soleen.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org, kernel-team@android.com, Jonathan Corbet , "open list:DOCUMENTATION" Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Rspamd-Queue-Id: 5BD7E100003 X-Rspamd-Server: rspam01 X-Stat-Signature: fggpqqnddomipmrpkyhkbzrummw36h1x X-HE-Tag: 1731441073-157153 X-HE-Meta: U2FsdGVkX1+wo2bqZql5LvPeK4vdIUa5hGDow1htwFeARAA7yfHVxKZnkMpuhVYdyLDuug3RjvVIl1jrbCHF1Gi1gWn76+ZXSgXCjONsecoceHdzkDabyeFTyqz36sBiILtlystFNA6cZbdzHbS0eymjXVbujd8pqhRFACuieXiiJ0LeLwO4GCD0m06G/F/KcTCN21jbgsJedU6c1MhVpT8+HwrfF70x19hJbZbBBN2hmSBWAYH0UH3YP2jLzusX2NCjAmw7NsCQ6AYQazMX7Rj+15xoTZ61kSH1n7EtG6xWQsAG8+3YDosKIibEPxiVRx/UytO+NJsrgQwpRiHHZ5u8BNKB0XPwT1QGwWux4F5C1CMo8NPSTlNAt7mWn79YaYsUSSkeTveZRdiXssTnuMDIha8G+j2Rt0IqlT3XnwqTCIA6J8CiuQolwrC6Wu1rBNfLHqYQJ0TWxMDMs6rnWF55UWe00VmxZHFVlDItOhK5EnxoNi9xPXFK0YDnU4RTN0qN+lM+EkpQmr47CK6D/sqbFnONRWRcQVSjRFQII0wyqK1cFxUeO+Rejz9NQUQaVJyBBYLR1u5RD4U22ThH2aFBujc+yGbTGwrNRydLvIsqEVKih7SYwGrJ2oJfC2GDpg7yDP+W1GBtHp4HDTbUhxyhzP08mTwhUi2pur5BSVnKgkebK2R2weRtjWzXoqpvCqquY2c+Hh9O3U4IjfuW/kTywX/puFt+V9X1vkzfFufD5uqK2xUyarYtSunI0gHxzAZzSoHjwM34lba9H7deW8crIawd7RkMgxYWnunNioD/wWoVmyGSeUCyKWsKQ16Q1A5FwftgYVxuZYevFg/eJZhcyJBOnE31lhu5gh2OPdMADzqiVtaX4rwnrHvbsREdmZifG+V0u7eIKhcl3XfbAzSJixgth4+gfEIzL2WzlPJjtv9YtNq1M4J/r64TNJ9o1PfmlZ/DxZC9V1iIQKW cGPv332v vWAs1QCpidd2vghQDwGYFKCaIUvc1ZEvKe56R3gaZX8yI5m/k2WEgftmW2QcJ+L/7eYx4v1DjyGEoS2xnzmEiwvyFRjcjgp1sZJrai85wv+FieTYqnI72jIHP+jLuwkGtnIvWkYw0q0EVl8KGDIbHTFzX1WDkuWwsTCzeTyiA8eUYo6v2bhkSfy7y/94khpVD9liE7PXhLfityVgqT763nCC9FfptZsKrJiTr2cbxaNmp7gu3mvwXHZ+vr4mcNZC5TNtmgx/ys/+2R5s= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000095, 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 Tue, Nov 12, 2024 at 11:47=E2=80=AFAM Suren Baghdasaryan wrote: > > Change the documentation to reflect that vm_lock is integrated into vma. > Document newly introduced vma_start_read_locked{_nested} functions. > > Signed-off-by: Suren Baghdasaryan Sorry, forgot to CC Mr. Corbet and linux-doc@vger. Added now. > --- > Documentation/mm/process_addrs.rst | 10 +++++++--- > 1 file changed, 7 insertions(+), 3 deletions(-) > > diff --git a/Documentation/mm/process_addrs.rst b/Documentation/mm/proces= s_addrs.rst > index ed74685ffbf2..c8935509173e 100644 > --- a/Documentation/mm/process_addrs.rst > +++ b/Documentation/mm/process_addrs.rst > @@ -675,7 +675,11 @@ RCU critical section, then attempts to VMA lock it v= ia > :c:func:`!vma_start_read`, before releasing the RCU lock via > :c:func:`!rcu_read_unlock`. > > -VMA read locks hold the read lock on the :c:member:`!vma->vm_lock` semap= hore for > +In cases when the user already holds mmap read lock, :c:func:`!vma_start= _read_locked` > +and :c:func:`!vma_start_read_locked_nested` can be used. These functions= always > +succeed in acquiring VMA read lock. > + > +VMA read locks hold the read lock on the :c:member:`!vma.vm_lock` semaph= ore for > their duration and the caller of :c:func:`!lock_vma_under_rcu` must rele= ase it > via :c:func:`!vma_end_read`. > > @@ -739,7 +743,7 @@ keep VMAs locked across entirely separate write opera= tions. It also maintains > correct lock ordering. > > Each time a VMA read lock is acquired, we acquire a read lock on the > -:c:member:`!vma->vm_lock` read/write semaphore and hold it, while checki= ng that > +:c:member:`!vma.vm_lock` read/write semaphore and hold it, while checkin= g that > the sequence count of the VMA does not match that of the mm. > > If it does, the read lock fails. If it does not, we hold the lock, exclu= ding > @@ -749,7 +753,7 @@ Importantly, maple tree operations performed in :c:fu= nc:`!lock_vma_under_rcu` > are also RCU safe, so the whole read lock operation is guaranteed to fun= ction > correctly. > > -On the write side, we acquire a write lock on the :c:member:`!vma->vm_lo= ck` > +On the write side, we acquire a write lock on the :c:member:`!vma.vm_loc= k` > read/write semaphore, before setting the VMA's sequence number under thi= s lock, > also simultaneously holding the mmap write lock. > > -- > 2.47.0.277.g8800431eea-goog >