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 4A8C0C77B7A for ; Tue, 6 Jun 2023 20:15:44 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 90E356B0071; Tue, 6 Jun 2023 16:15:43 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 8BEB18E0002; Tue, 6 Jun 2023 16:15:43 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7ACE08E0001; Tue, 6 Jun 2023 16:15:43 -0400 (EDT) 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 6C6F16B0071 for ; Tue, 6 Jun 2023 16:15:43 -0400 (EDT) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 403031409B8 for ; Tue, 6 Jun 2023 20:15:43 +0000 (UTC) X-FDA: 80873428566.28.E0FF018 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by imf06.hostedemail.com (Postfix) with ESMTP id 2220F180003 for ; Tue, 6 Jun 2023 20:15:40 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=suse.cz header.s=susede2_rsa header.b="ioC/quvR"; dkim=pass header.d=suse.cz header.s=susede2_ed25519 header.b=di+1KcQG; dmarc=none; spf=pass (imf06.hostedemail.com: domain of vbabka@suse.cz designates 195.135.220.29 as permitted sender) smtp.mailfrom=vbabka@suse.cz ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1686082541; 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=GRdaNaKr0mVo9Z+XRAEpnMDkFT3nh/DoMeZkPYisvDM=; b=T5YderMF6lBUw6XIOMCf18CSb1NOPVEDess6SWHLTBxnjtbiTuD1FSLiOGQLs4tb0csdnn hiO/QVGss4AN/CE5hLmKXMBkM8KplvgzQzNkLnOOJ+yeGH67tGu+7sbENmvEZJbrU1e8hw TdshfVF1CpX2zQM55bH1Kje0WD3PPNk= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=suse.cz header.s=susede2_rsa header.b="ioC/quvR"; dkim=pass header.d=suse.cz header.s=susede2_ed25519 header.b=di+1KcQG; dmarc=none; spf=pass (imf06.hostedemail.com: domain of vbabka@suse.cz designates 195.135.220.29 as permitted sender) smtp.mailfrom=vbabka@suse.cz ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1686082541; a=rsa-sha256; cv=none; b=ElEnHo68/Q6LhjPiJozduvM3kg22p/tYnE3XWEgyA8GGOfUx3nrygtsLjpt7yhjY1FC8AB lozM5X357IN2TfQ2nbjBBTE/wcNKO+SV3sXd6EpcNhwYFfiXTl0j9iScXRkpvHTXuWkjGO jL3b2I4dGUSlDv5GvCOom7NTTPVF9wU= Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 303A71FD8C; Tue, 6 Jun 2023 20:15:39 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_rsa; t=1686082539; h=from:from:reply-to: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; bh=GRdaNaKr0mVo9Z+XRAEpnMDkFT3nh/DoMeZkPYisvDM=; b=ioC/quvRSy7NIVr6dNWhuWtynvA0QHib3x3S1200yPrmXu2hDy+rvxNYTFGDhG7eKVL3vP bTDfDeW4uGxoFQVUVijBy/FNL/9x29uPcy7FJHUXN45DEF8OyNwrbO7+KSiMmmv4moTaZ8 Iv6s8+xTPSPSSRjcvDa3HluXs9GpxIs= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_ed25519; t=1686082539; h=from:from:reply-to: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; bh=GRdaNaKr0mVo9Z+XRAEpnMDkFT3nh/DoMeZkPYisvDM=; b=di+1KcQGyUMmvlbPmv74BZ6926czHaKCgvmzYYBCsAS/yPE5NoWqPz1hcrz7+wV9ZUpM1G aXnFibq0THq8DYAQ== Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id EEB1E13776; Tue, 6 Jun 2023 20:15:38 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id q0y8OeqTf2RPJwAAMHmgww (envelope-from ); Tue, 06 Jun 2023 20:15:38 +0000 Message-ID: <6403a950-7367-0b00-8cd5-2f0a32dac953@suse.cz> Date: Tue, 6 Jun 2023 22:15:38 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: RFC for new feature to move pages from one vma to another without split To: Peter Xu , David Hildenbrand Cc: Lokesh Gidra , Axel Rasmussen , Andrew Morton , "open list:MEMORY MANAGEMENT" , linux-kernel , Andrea Arcangeli , "Kirill A . Shutemov" , "Kirill A. Shutemov" , Brian Geffon , Suren Baghdasaryan , Kalesh Singh , Nicolas Geoffray , Jared Duke , android-mm , Blake Caldwell , Mike Rapoport References: <27ac2f51-e2bf-7645-7a76-0684248a5902@redhat.com> <3059388f-1604-c326-c66f-c2e0f9bb6cbf@redhat.com> Content-Language: en-US From: Vlastimil Babka In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Rspam-User: X-Stat-Signature: b64ghew6refghwiun7um6mi8wancb6ow X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 2220F180003 X-HE-Tag: 1686082540-779181 X-HE-Meta: U2FsdGVkX1+KZlLtgtNgibjbqIM8Ye9tWg+ytJyEIUD/3UOL2aBxhgAuEYYdpSaYNaxDB65I0tcP1J31PC60Rt4Fi6cvy29Bf4UqzBePdzIlkrYOcsfh9r8wdVXRX4uGYajtUfTIiKTts9oIn0LL/yFgC9Mn1zK1AquBllO4UiGjn7hqlHrD7+/x225ljPthEe5dWSpyvZctH9D2quNFmzWtwHUeX9T0eqk3skLnsHFLn4A1ASPCIHAVhgk7/U/30zNFROXZt7STiyATugWUTbLdJBac2cOdII8fo99AjrLD2g1kvqBdkGZWJVyBgLTdgC8hPRlARlfAf89ymMp4NSkXU5ZtMZ8NT6kHnYvGfhirJafXNkEW/7x1EIiBQahkplOaIKlsR5IsaAQLOmC+0iKdFj3dRXchItVNs+Gy36hVYIyrBpb341ZcekA/oz+CoT2yC1HF0XgNfmAn24bhiNee/BRaPqzHllWfwN3TFbgywFrqVtPyuyYWg3fwkRnEogdq7b0BPNKdcX2n4R4vqshSF2FS61sUD7oensKpdMRgudxawT4Q3aPzEw0dOdsd+ImgkWswLzjV/eFb2tvkndyoCOT8GNuBe/FScwcZZ5LYImiE8CayLrUwCG+vRcBMhEvjwYTyhpSQdVHI50WZMxWc/8hCbR/xvG32OStdkDdbCpEERBpvMH3YTBFOYO4WGrAt8ikapeVanIrVKSixGYZnOLdMfzH5Ox/DRWKFCZ9mWQu8rb/99iTrU+A6IXMASGF8NChHgV/+TD1NKYXbJ8vJ4RvQkiUev3+f5FwTdncXe6UCgbGrc9wvRiHAj2wVj0tpBv3o/eMqsKRwrNGJ6qMHy9UsfRHMUrA1vNdBE8lQ+ukVFWF9CkmWr/N5qo4Wzp5xkKREhxNKYHY4pzlabqhbImTqQcS4CJMsRmNT2txZThz0I2ebqmHOx7F1B2BjUW2+Ul2jJ3XmmJBJZtA H+sDdZsP 6siOR6s+D3s5BS8vQayCLkOeAPmSLT2LqHtNDEWLfOLOdB/6I7KSMOAR/nVo7m1ehd/qKxBapYkHr2rT272BkEOTFYGJfAIkpmxGME+zNEBVlaqsTq2iewb/0AkN2Si5te8bjPXkyomz38FOsazjo3QnzMLZQ1LkXVqtyaItYThEFQ2P0KgnCenGgiuTM148N6IReMUoeUUkBC3HfJags/HqNNrXaNWkx4yjZ4M6VZVkh7bTehxa7r7TCAMxoF1rJPxAc5dUWox8fTqbODj7MxmH+4FSw9ljHwsAXpw8TnhVVChhz+zwapElXzVYInQFyeyferPWpaGz5vg75SntsBtL9nW/DTli233NUdn6X2YVDTAqqK90juFv1sqDDVMTzOLEDGGGIiulVn/1EAPPBXN+CMw== 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 4/13/23 17:36, Peter Xu wrote: > On Thu, Apr 13, 2023 at 10:10:44AM +0200, David Hildenbrand wrote: >> So instead, we consider the whole address space as a virtual, anon file, >> starting at offset 0. The pgoff of a VMA is then simply the offset in that >> virtual file (easily computed from the start of the VMA), and VMA merging is >> just the same as for an ordinary file. > > Interesting point, thanks! FYI, I've advised a master thesis exploring how to update page->index during mremap() to keep things mergeable: https://dspace.cuni.cz/bitstream/handle/20.500.11956/176288/120426800.pdf I think the last RFC posting was: https://lore.kernel.org/all/20220516125405.1675-1-matenajakub@gmail.com/ It was really tricky for the general case. Maybe it would be more feasible for the limited case Lokesh describes, if we could be sure the pages that are moved aren't mapped anywhere else.