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 96296E77187 for ; Wed, 18 Dec 2024 16:14:00 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 0B3696B009A; Wed, 18 Dec 2024 11:14:00 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 062FB6B009B; Wed, 18 Dec 2024 11:14:00 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E94846B009C; Wed, 18 Dec 2024 11:13:59 -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 CB03B6B009A for ; Wed, 18 Dec 2024 11:13:59 -0500 (EST) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 78D41C105F for ; Wed, 18 Dec 2024 16:13:59 +0000 (UTC) X-FDA: 82908575232.26.1734E37 Received: from desiato.infradead.org (desiato.infradead.org [90.155.92.199]) by imf18.hostedemail.com (Postfix) with ESMTP id DC98C1C0004 for ; Wed, 18 Dec 2024 16:13:41 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=infradead.org header.s=desiato.20200630 header.b=fWmTjZKz; spf=none (imf18.hostedemail.com: domain of peterz@infradead.org has no SPF policy when checking 90.155.92.199) smtp.mailfrom=peterz@infradead.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1734538403; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=aIbpWcOsQF2GNf1HLesq1CHwmoFFqD5BsZnUSbWorAc=; b=KCMhsGrjcLO3XqJH0UfsjOLOqJVVc4UA8Oxa6XroVtOwXvEl5HAO4BnD5rMW0nnWcdiuBa 1xy6u/ZIKigm3ZKNyqDcPI5gp2qk/AAwWPOCSGMOuEFcI1wjouTBlux4NTzCgZ52wG7vs2 5X6w591uPGEko+VoQGO8W/eUpZJumL0= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=infradead.org header.s=desiato.20200630 header.b=fWmTjZKz; spf=none (imf18.hostedemail.com: domain of peterz@infradead.org has no SPF policy when checking 90.155.92.199) smtp.mailfrom=peterz@infradead.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1734538403; a=rsa-sha256; cv=none; b=OYW293X8RANclG/GSCk0OdSoAJ6bgmJ9+6ADKvNOYEY40Yruqo9MvpNeyYJHvLUCyUXSfa Luja1GE+WsChLfEF/i9VJS9ObZCL5bXUv+j3g7HINtI9e308T5eNZKpJ02135kiEdLeiWJ +24AfhE/Lyw4G1UYwgSrNCm4sMHROxs= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=desiato.20200630; h=In-Reply-To:Content-Type:MIME-Version: References:Message-ID:Subject:To:From:Date:Sender:Reply-To:Cc: Content-Transfer-Encoding:Content-ID:Content-Description; bh=aIbpWcOsQF2GNf1HLesq1CHwmoFFqD5BsZnUSbWorAc=; b=fWmTjZKzVq/NgFXdrNpKW/AopX QOTVf3mfNIyNNXvIbExWn2tEpM2feagYfvHYKknQAYc+bJNMCM/Yk4B9kkSLlAgX/SFL+xIAQZBGP XAaf8PydocvVg0o858lm6BL5uc7zIsuEF86c6SmAxi+C3Se3tTEDTNLiT6pQaR6JDYbelh1sKjlFL FE5HY7KvYNQp/Ro52RjI5Ha2ZwjgB13ptQPkcr6j2+gO+vXpyBb1ANCHzm495OUqx11UqzEZtVpSG Ycea+xdQjYtzC3XhtI0Fyig2AgLXPvYQ+kqKJY/0OF1q4yBwOZsvXV86HJUjAlWUZ4iAihLhYl2R4 zSAlJ+jg==; Received: from 77-249-17-89.cable.dynamic.v4.ziggo.nl ([77.249.17.89] helo=noisy.programming.kicks-ass.net) by desiato.infradead.org with esmtpsa (Exim 4.98 #2 (Red Hat Linux)) id 1tNwgC-00000005IkE-2wBV; Wed, 18 Dec 2024 16:13:44 +0000 Received: by noisy.programming.kicks-ass.net (Postfix, from userid 1000) id C2B1D30031E; Wed, 18 Dec 2024 17:13:43 +0100 (CET) Date: Wed, 18 Dec 2024 17:13:43 +0100 From: Peter Zijlstra To: "Liam R. Howlett" , Suren Baghdasaryan , akpm@linux-foundation.org, willy@infradead.org, 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, lokeshgidra@google.com, minchan@google.com, jannh@google.com, shakeel.butt@linux.dev, souravpanda@google.com, pasha.tatashin@soleen.com, klarasmodin@gmail.com, corbet@lwn.net, linux-doc@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, kernel-team@android.com Subject: Re: [PATCH v6 10/16] mm: replace vm_lock and detached flag with a reference count Message-ID: <20241218161343.GF2354@noisy.programming.kicks-ass.net> References: <20241216192419.2970941-1-surenb@google.com> <20241216192419.2970941-11-surenb@google.com> <20241216213753.GD9803@noisy.programming.kicks-ass.net> <20241217103035.GD11133@noisy.programming.kicks-ass.net> <20241218094104.GC2354@noisy.programming.kicks-ass.net> <20241218100601.GI12500@noisy.programming.kicks-ass.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: DC98C1C0004 X-Rspam-User: X-Stat-Signature: rqfekn7r5ypjfxgd3e6ma3ugwjww5bok X-HE-Tag: 1734538421-284709 X-HE-Meta: U2FsdGVkX1/mFx9I0dAseGztPQDzzXXBmNqS2n1IL17zlEK2r8yUwfol2iZCSMmQWP9rSanPz9wouBrxa2kiG94tbCRWzTzOsZOqxkr9jvOoFuVFcyukW/TA/UArzGuWRAoMsbglISXMDF9KW6wI/eEaTYveGsoIlo6Pe8bdO9EzP17ILeEIgq2klCmScu/Q21ixkRbTIeTaGrmtM54JCqqJkYsbqtA0k6ctICXRtezEt32avoe9gxP6f+X9CJV4I+L9oijqDVIzFpSQIRR1CdkEROkjDjBGsCiKbd96q5pHckUZwyoWrxBt+HjaZI9f4oJtCtv3IpaBlK5u639umTWPBd9+PWp7UtMZCH9kzlwfSJsGYt+ykxq9VCe7GUIh+q6W7Qj9Itx9FegN/RImuaMlE6zcQ+awI2ijF5so0JolGJGfX+dVz3Tz2cUYYzzBSOHT0qrlzOdTNEJnNyIj9DqNbZHTSrlJOVCJ2JdTbpLzoj7QNzbVQAx6dfSINuKoRSjD6e0LQTjWL+k8WVjAcGFv6RDMQYzbLipgMf0fAbZqUsYpXJQiLxCfiARltnu9Rrza2lt5AXZHXmN2f7m0hT1qe99+brp/pq5ZbUknxfOFgItGN4UP6niNf9d8e+S6qQLke+W6gHDQ3oAfvhUssjHOLElnpW4vk888HkJevGmAxmiigPlfRHoL97b3M/BLY6a4Rbka5sgX/Q2ZBpIl/n7eA4D1qnLmVkZX9RvwfigDvy2b1tlXv+MKKRDmc3cdJKGJFvw637V42paMSZuQqPB5aOqEb8LyRmEOI8vCzA0gPYVBMKqnU0PCIMHn4IiFrLycEF3aoOvwtbCGr0YltSmlFdctXYh+ZOs3YOUqkGSt0vOLBvfUFoeb5KkIQWWmSkU5F2xAqFDJt2d2r2LpORdZ78pTCxOmns8Y9YnGEzN3yBIUPRCoEHCQM9ghFUY3FdoNsAXl0opsFqQEnpC 0apWN0hR QPFuC7u4eZcq7j1BwxWZLm63cTcjkerIYZNE8tjkQfxF4sHZKbDB9IJjK1Bc1rWoLIhIRVFvD39v5JFv2KBKwmM4gXgGMBD9ZR4Z8g8oL4EemLM5do0tO9dL+jnv08Izki4KYW8idur9jl7YRb8M3mvLROKG0enOPdeSgyvpbIJWLKsJwEWMpod40rzm1dvUXNJkKMmcSN0KCEgbF/0xLyKA/TfvdhVQNQH+ECVOQ2cZrjMa3+MJfChZxcQ== 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: List-Subscribe: List-Unsubscribe: On Wed, Dec 18, 2024 at 10:37:24AM -0500, Liam R. Howlett wrote: > This is also correct. The maple tree is a b-tree variant that has > internal nodes. Right, I remembered that much :-) > > Also, I think vma_start_write() in that gather look is too early, you're > > not actually going to change the VMA yet -- with obvious exception of > > the split cases. > > The split needs to start the write on the vma to avoid anyone reading it > while it's being altered. __split_vma() does vma_start_write() itself, so that should be good already. > > That too should probably come after you've passes all the fail/unwind > > spots. > > Do you mean the split? No, I means the detach muck :-) > I'd like to move the split later as well.. > tracking that is a pain and may need an extra vma for when one vma is > split twice before removing the middle part. > > Actually, I think we need to allocate two (or at least one) vmas in this > case and just pass one through to unmap (written only to the mas_detach > tree?). It would be nice to find a way to NOT need to do that even.. I > had tried to use a vma on the stack years ago, which didn't work out. Urgh yeah, vma on stack sounds like utter pain :-)