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 64271EB64DD for ; Mon, 14 Aug 2023 19:15:27 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BC1FD8E0006; Mon, 14 Aug 2023 15:15:26 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B71EE8E0003; Mon, 14 Aug 2023 15:15:26 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A611E8E0006; Mon, 14 Aug 2023 15:15:26 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 96F008E0003 for ; Mon, 14 Aug 2023 15:15:26 -0400 (EDT) Received: from smtpin22.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 684A3B2063 for ; Mon, 14 Aug 2023 19:15:26 +0000 (UTC) X-FDA: 81123663852.22.64BA662 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf10.hostedemail.com (Postfix) with ESMTP id 5EA4BC0010 for ; Mon, 14 Aug 2023 19:15:24 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=NF5liyvp; spf=pass (imf10.hostedemail.com: domain of akpm@linux-foundation.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1692040524; 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=cSZ6Y1T4jmYpTc/cXbFDRwuZu3eGwY8XhB7ZWEchUMs=; b=4CTcP2xdCEV1SCDUg7kYu8sBREb9jcKJTJ2ngT+qMqtxL2917ipXJFl8+itXIuGsBs3D81 sThnxnX/oaPNRd0I61HtjoMDSnLYla94PFv4fLF2040ZcquzsmZUY7Q5RQ7F2bWkh4GamK j7zU+AkfiYj2ebdz+M8LF6BIcQyX758= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1692040524; a=rsa-sha256; cv=none; b=Oru9WS96I6cuVwqxm7M36q9SSCchn1+1luLm6VO+Xdhl5vETQbss8KkUAIh3tk1ZFQaTVd VlmlYS7ilWtrAXolLShisivpC90TQNE3/iKlpJ0r0RAQJpUezUlWx4nm4EUG+B4LNn9FNa MJdcRhAx0zUld2NcHGBiSliIbcjy0Nc= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=NF5liyvp; spf=pass (imf10.hostedemail.com: domain of akpm@linux-foundation.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org; dmarc=none Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 6FF4960F4D; Mon, 14 Aug 2023 19:15:23 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 407D8C433C8; Mon, 14 Aug 2023 19:15:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1692040522; bh=ft6PFp1kWRcEktVzmPZjCFhYR3/z/32uyG2rtkYFSXE=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=NF5liyvpwstN6j+v/uzCgwbhgbJA7nJFovhqpTqVSWjr2qUF30e+h9IlB7gGA7UUy AOKOKy8VyiuwG6lIvWLLqSonSVUviraAL8tfMSKEK1vgCAFP9Xhrr36ELUgFNN4Wh9 WnVHdKqxmLllcL+jvUZ73li1Bu7pcjoiPqrNT3JQ= Date: Mon, 14 Aug 2023 12:15:21 -0700 From: Andrew Morton To: Jann Horn Cc: Suren Baghdasaryan , torvalds@linux-foundation.org, willy@infradead.org, liam.howlett@oracle.com, david@redhat.com, peterx@redhat.com, ldufour@linux.ibm.com, vbabka@suse.cz, michel@lespinasse.org, jglisse@google.com, mhocko@suse.com, hannes@cmpxchg.org, dave@stgolabs.net, hughd@google.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, kernel-team@android.com Subject: Re: [PATCH v4 5/6] mm: always lock new vma before inserting into vma tree Message-Id: <20230814121521.83c2dda21765757d272538b2@linux-foundation.org> In-Reply-To: References: <20230804152724.3090321-1-surenb@google.com> <20230804152724.3090321-6-surenb@google.com> X-Mailer: Sylpheed 3.8.0beta1 (GTK+ 2.24.33; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 5EA4BC0010 X-Rspam-User: X-Stat-Signature: cwybepwa34egb1mp3qhsppjdptkhx1jb X-Rspamd-Server: rspam03 X-HE-Tag: 1692040524-990128 X-HE-Meta: U2FsdGVkX1+kYZFMUSVVJSUD7zt+4a1EZFDz6VtP0+i6Phf2g2l8xsRzv7LvPdIp5uKYqzhX4U001655U8PqF7uoRdq5ntYgshpUJ2BbAX3wTw5ZZa9cSw1w65/1Zz49sDfjG+kLh7xCXLUs+4AGKUZ8RBN5kRcxNgTbO0TjgvPJaaODsAHMnZskQXqCzPZe1TM0kRZpPhFbJYZk1//AhDvAUDhthVqxp1dhl3PGhKrNhVZIngSCd3JAVHrmsd4KHg9l+32vSskdZrvWSQuvq1eyAQsFH/E+cHzLGx4odb+vdSho6imThzgQBxGtEcyxRF53PO+yA2A7fmlxtt8l95Soll7G7YlZODAqajlHFXGWcA+YMg7F33crcJyZozMjjnO/6mFmhqH+wVfB41zoJx+yy1YeC6YJmJYfxUV58y5WbSpBDgmTXjzSHFN+zb84YaFbP/VyhukWx8JVjmtqzpdr+YpCUDON1QkzHIO1ULsBPMHx+DobR3Xou8NwBr1ZbWHW+7LYQHDACg+rqFtHgjzuNoMEYi50eMMmvihk+qiKIBQQoq3vjQ/MMEQl2zioBaeps1uaqfMFgEsUr2Od0OsEqAOYol4JMA60ftaKH4LvS38Bw2Noe74GpKS9e9dNaS+UV1s7RtNYzFu4MXsSuD6jBqG9qDMp00SC8pxXNNpdFeOaS9P9cVzbRleVNelfY43DUrEcrXwyl/NT2QKqRAjTggid2QiRPxYmTSIrX9KQkNtt1MGSp/l18zUYXENvNet1UhSuk9N/Krjx9D1YAfkDfhpOozpMYblTpF5T1H5r5w52HhmXNNdrg3i2b8HFyamjyotyiYgg+IW260FYudULHLPi/GVYufEZqIdMP8keT8H5H9Az6atsgi4GFjVwM/G3i24pCUyei4tWW5DCm55hv7nQL3nz9VkcWcugQcQj2nt22KeN4fgUDlfcwlaoZrKstrWrOmx973poze6 X0brfll4 Vdw/mOQ8rHuIftwrYP3ji3AyLeYXgm/P1glGah5iej8KvPIzNZBGo8E6w7IRteMDKdI1PysxT7LUx+6ujmpSce89xjCSEwMKBWgKdIqLBEQ18g9xpb8MuJnjmQ17Zc3yC2nxqrsxDDQeWRv79GZ3+O43FzJvSmLwzpaVw5xNEi4lf2nP71pgbkd1ZDnAF/Y+IhuzT4/QwtzU8VNlSYu7AxAtIcLPCUOCVd1FfOtY+H6hdrS0a2h2/PnsBEyHUYBWVPfyuwmH9gNcNxy2j+vfBWOVsj4GUAv9TDPyHTDAvipCNA3IDxma6OpydGhFZP+J7ARJbETWWtDh5u7+rKFgfBbYPFtwDOhNdDY0T 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 Mon, 14 Aug 2023 16:54:01 +0200 Jann Horn wrote: > > @@ -403,6 +403,8 @@ static int vma_link(struct mm_struct *mm, struct vm_area_struct *vma) > > > > vma_iter_store(&vmi, vma); > > > > + vma_start_write(vma); > > + > > if (vma->vm_file) { > > mapping = vma->vm_file->f_mapping; > > i_mmap_lock_write(mapping); > > The "vma_start_write()" has to be ordered before the > "vma_iter_store(&vmi, vma)". Thanks. This? --- a/mm/mmap.c~mm-always-lock-new-vma-before-inserting-into-vma-tree-fix +++ a/mm/mmap.c @@ -401,10 +401,10 @@ static int vma_link(struct mm_struct *mm if (vma_iter_prealloc(&vmi, vma)) return -ENOMEM; - vma_iter_store(&vmi, vma); - vma_start_write(vma); + vma_iter_store(&vmi, vma); + if (vma->vm_file) { mapping = vma->vm_file->f_mapping; i_mmap_lock_write(mapping); _