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 53EEBC7EE2F for ; Tue, 6 Jun 2023 23:18:54 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BAF518E0002; Tue, 6 Jun 2023 19:18:53 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B385F8E0001; Tue, 6 Jun 2023 19:18:53 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9FF6D8E0002; Tue, 6 Jun 2023 19:18:53 -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 8AC098E0001 for ; Tue, 6 Jun 2023 19:18:53 -0400 (EDT) Received: from smtpin04.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 588FFAF34E for ; Tue, 6 Jun 2023 23:18:53 +0000 (UTC) X-FDA: 80873890146.04.A5731A2 Received: from mail-yb1-f180.google.com (mail-yb1-f180.google.com [209.85.219.180]) by imf21.hostedemail.com (Postfix) with ESMTP id 8F8271C0003 for ; Tue, 6 Jun 2023 23:18:51 +0000 (UTC) Authentication-Results: imf21.hostedemail.com; dkim=pass header.d=google.com header.s=20221208 header.b=KLfXcWyr; spf=pass (imf21.hostedemail.com: domain of surenb@google.com designates 209.85.219.180 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=1686093531; 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=9wMQpL8mT6QlCCs1bXrVw+rZK5wYXsmA2UlxqlGl7R0=; b=599taRTHJHtN7HtPrLQQzdK1OP02aZAxcmGXXkf9HkIXqj6PomrTVdcLTr+0/h4ws2IcpT fsORkymE2b5yyXtfxSgL/RZo5y+pbAyn6hBMe6tTVCRMUJstEKILCEqafEISwWs9IWMEZd lQCZ99JeOCb62lyj44B2ns0eTS7RvJc= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1686093531; a=rsa-sha256; cv=none; b=1uVb/a56gaV1XNZVhCc23UoV/W3H2x7kKSQ86yEitCOqPSKrBY//JCXOZlAsbf+sB+vEQ9 HkKYCtHFVvfE1NJz2v8+JKZLQlEZZzBqTPTbIMwF4ZtTRt/X4p3kYXvhKqY/97zIU3yD5g HkS+lgiCDqFM9NGDIzizITtfc4S+mvw= ARC-Authentication-Results: i=1; imf21.hostedemail.com; dkim=pass header.d=google.com header.s=20221208 header.b=KLfXcWyr; spf=pass (imf21.hostedemail.com: domain of surenb@google.com designates 209.85.219.180 as permitted sender) smtp.mailfrom=surenb@google.com; dmarc=pass (policy=reject) header.from=google.com Received: by mail-yb1-f180.google.com with SMTP id 3f1490d57ef6-bacfa9fa329so7194507276.0 for ; Tue, 06 Jun 2023 16:18:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1686093530; x=1688685530; 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=9wMQpL8mT6QlCCs1bXrVw+rZK5wYXsmA2UlxqlGl7R0=; b=KLfXcWyrdR+obKSMHxp4g6iQaKYQlgTEDHnSvEqd1pr5TquZGqzxtQH7J0TtNrk9t9 wSC1wIZPg1Y7kJBFH4wCkk9fmF7+dRl1AhQA8+s1UdIRvrXCNBFeFfckgm6QE4lMZlE8 7xNxP+/xT9Hodt7l6CLuplh42dj7XGAVN8qoGAIItLVvIYl74Jluk/rJcWCGzFOFH7Qe 8cayTUAf71/QVjLKPsLixZFvLBnERD2oXEEAhfHTSKgOqENgOdwRbKjgDfgTex6odnGp KPnHV5HqHjwMLZniSQpKrASM337DwMbF4olR9iDRllw+6epc1QMpo8+70hdqIY8c9Kcy 4R+Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686093530; x=1688685530; 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=9wMQpL8mT6QlCCs1bXrVw+rZK5wYXsmA2UlxqlGl7R0=; b=fCyCgZPOAfjqtPQm+Nywzjgi0XDd7pb/RYyeb0c8n9X3i8fud+DqmRYnOW3zjWC5Ni RJXJKxtLgHgN7Zrv7+xmlVAQPT+jzDOX0cB4zW4OseM6YvbAanxPPF9WpI/jAz3ClHdP nbX4RGxLTzgCtaZk5mLiTg6sVoXXjFI5ZZLmZ/mYpJAAu6wXhg6Krbsp8Ec/BgPQPf/7 sJk1GuFMQ2+snld2I2SPzEpAjjYLflkjrs+0kncfUgDcVpauqroJalegQ6u9QmSs6sk/ ATaES1EoNRvsDsnriWIlRvyqxeLmunWhOIeMB43yxUeZysP6J0o08m10KwNF3DzNauEZ NhVA== X-Gm-Message-State: AC+VfDxWT+vniA1sepmnjzRwc5HoO+hpGpaqM/9LVWYRRbNg3d2VzJE3 hvJiQ8s2UiJWas+vhL+8tiLjeJSIzJ2N+BcwWLNLdw== X-Google-Smtp-Source: ACHHUZ4fHV4VNm6Tfuv+XZiih6LcClaZx9DkWIWYCsJ5GbObBBmqd3RvGzBQucPMEtOuwSefaUouhx1Rv5K7nhN0pVo= X-Received: by 2002:a25:ad66:0:b0:b99:53e9:ba97 with SMTP id l38-20020a25ad66000000b00b9953e9ba97mr3440908ybe.43.1686093530541; Tue, 06 Jun 2023 16:18:50 -0700 (PDT) MIME-Version: 1.0 References: <27ac2f51-e2bf-7645-7a76-0684248a5902@redhat.com> <3059388f-1604-c326-c66f-c2e0f9bb6cbf@redhat.com> <6403a950-7367-0b00-8cd5-2f0a32dac953@suse.cz> In-Reply-To: <6403a950-7367-0b00-8cd5-2f0a32dac953@suse.cz> From: Suren Baghdasaryan Date: Tue, 6 Jun 2023 16:18:39 -0700 Message-ID: Subject: Re: RFC for new feature to move pages from one vma to another without split To: Vlastimil Babka Cc: Peter Xu , David Hildenbrand , Lokesh Gidra , Axel Rasmussen , Andrew Morton , "open list:MEMORY MANAGEMENT" , linux-kernel , Andrea Arcangeli , "Kirill A . Shutemov" , "Kirill A. Shutemov" , Brian Geffon , Kalesh Singh , Nicolas Geoffray , Jared Duke , android-mm , Blake Caldwell , Mike Rapoport Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: 8F8271C0003 X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: 6963dme9thp763hkhf3myzos9ers59wp X-HE-Tag: 1686093531-989485 X-HE-Meta: U2FsdGVkX183kuj/uEFb1bsKFTBbKhVwHxBG716YaCxFU2vo6fZVzLvdESzSWjz88bYHLz55hOFqls62CcZm5ZR4Pb0KNtzep1hFJPPqSwloKKqFT58d7Rl88WIIgFtHotz5jW+VbNQthX6blSgmP6LSoTCY6yS6ru75JCO4aMiN7k0TRPwzQIWPtkWoM5ED3Ny66MIhEl0TACIID1DTBLhtIuoi0pOIyDgDJjTRxhumGo9zZwQgQhErzcD8B+iix/YFQZzo0vsX71XzlgySQgKYILG361YMueO3TLuWT6J622vgBo8N++2HwtQ9L7ZnCG7RmgFHMoYJoJ5Igh/F13eCrx8V6ScK5P6Cnc1KxfWZgSSrZZAuYYZbrNJo3rFzF2cI4y6CKssK2UnfoShxTHhQdDrD5GPEMDwpLEFydG+1Do/laPHAtTTGvXLx2hAfirBd5CQge5JrZWlfy16n2xdYhlGI/J7J/YbzAqynTexR9/RgKzMbcEYT7+g0i1rtirH2SobYmoB76/s2/nrH9T4PBnBziseaNr3Ahjt5LBsSXNrljNAH5/GUEKYYkuZ50P4wE5fWqL3gQKSTzzRBGvJOBmi8gFgzll16uzk/sZdejbPL8xfQrM7b3/EKjSKObKEMCKc8AFkUz5mbpyg2N2+fxYnPp6qrsN9UgXtXK22BrIW5PsdXIXQnCxa2wu1u7h8nLVA9bCoercrOglJhNZLZvBvOQ6Ie87oU5hTcgvViFMTrgNBs7uYow/VqnEYos7eaxM3mu2TZWTa5Yg/ccY23Nn4yPRvx19Sp6IAEm1xaZPZEiI/bXOBAz7fuBH8VvKdxDeEpPD7QScW95pHb9WQQnTosl4UD6KTAsmKn1dqqGgoZpFJT//pZgqDOphyUOSdysjrb3ciqOgYfi3cPMcj5EFYceV29PPHLS37tTXnEjdZ/cVKhvoKudQt3JXEc8smZKoa6xYPM1YcUJPf b6WyMxRI 5Se46vx0ic5XrnGZzs1Z7eDaxRzCTE1YKqdDNOKO+KRkyYe/cSFxWwt3pLp3LmBAOGQX/rm6JR0pRq2X4R2oJ+auiMfTT1yM4096CP5t6NGdffvymitj/iuwcbKfAAA/hCYW2xyS4woyAxg+aXeR8rtXQ46HPeRHpLFcDYcakdY19IkFb/4nCSNBdEJTww7Hd/liN9Nc6QCvGnHHN3Wg88xkEaIZbGF04sITZ8u/VLEP7Okm1OxrBZ1qsMvHzq+zoQDcVA8vML6Eg9MVC7Bf3EmrwR96Bibc5Pm43ooFvmsGo/slqd9lBouGQksiZfti8cSSfzUyza8kq+rXD6eetEg8hTPxy6HsWFqh46Qh8JDRqvgxKn4Nohl07sz8kc92oNwfd44u+xPp0j4It1OPgMDVA+rqtUoTv7M1uhytS8xsVRsD4hptfm7MJFg== 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 Tue, Jun 6, 2023 at 1:15=E2=80=AFPM Vlastimil Babka wro= te: > > 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 fil= e, > >> 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 merg= ing 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 dur= ing > 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 feasibl= e > for the limited case Lokesh describes, if we could be sure the pages that > are moved aren't mapped anywhere else. Lokesh asked me to pick up this work and prepare patches for upstreaming. I'll start working on them after I finish with per-vma lock support for swap and userfaultd (targeting later this week). Thanks for all the input folks!