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 09E38C6FD1D for ; Tue, 21 Mar 2023 15:10:47 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4FA596B0074; Tue, 21 Mar 2023 11:10:47 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 4AAB56B0078; Tue, 21 Mar 2023 11:10:47 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 349E86B007B; Tue, 21 Mar 2023 11:10:47 -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 25E036B0074 for ; Tue, 21 Mar 2023 11:10:47 -0400 (EDT) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id E843B121724 for ; Tue, 21 Mar 2023 15:10:46 +0000 (UTC) X-FDA: 80593242492.30.5D58A84 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by imf12.hostedemail.com (Postfix) with ESMTP id 87EE540011 for ; Tue, 21 Mar 2023 15:10:43 +0000 (UTC) Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=cW0QQmTF; spf=pass (imf12.hostedemail.com: domain of peterx@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=peterx@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1679411444; 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=+DFoGD9BJrCFMifx1PxTOB2rujq31Ya1+80mI9jX3No=; b=t3KfCnNawi2/GKt9yvGAl4iXDAd3imtEFuMHV1+STvxuxPfEMB3wgkKwJlqNqCW023sIhK CRG+VLkMrJbbOHBfw3PYUVQDk5OOOw/Lp4kRXkQwCsD7WyZg6YALeETkAzdJIhfxXCAULQ rq8FHHpm6UsCdKzLZScXCH8QMZDUQGk= ARC-Authentication-Results: i=1; imf12.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=cW0QQmTF; spf=pass (imf12.hostedemail.com: domain of peterx@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=peterx@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1679411444; a=rsa-sha256; cv=none; b=xwIkZ3SQIj5RjbeIMyzMjo3tPcQ5cfDeB/qKNkhcRlGtU2I4Va0vdfDXn9Us9Q1ubdCoUN r/4gkgFp83o3Ts4Hif8RCxjjoPurOc5QOSs57rcSNmEGpAGH5byuKWIkE6PuUTgF+TDOxs WmiCciD3fOoz75UWBs/Qxux3jy0oqQ8= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1679411442; h=from:from: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; bh=+DFoGD9BJrCFMifx1PxTOB2rujq31Ya1+80mI9jX3No=; b=cW0QQmTFGP1Q7BXKp7dUeIJIhpVVXuB6BDOj/AhsWzvHDPxshQZv7QVHD8COrBzUfFmU1G 5hRti6DuS5YsoDaA87Fe5lHoNiWKKkweZBpKD3tX16/Oe2CPoWW4QzBkv6gA89fLJJ1Dlr rIfDPrcB/nt8YI/nydfE7HaNyKJzxH8= Received: from mail-qt1-f197.google.com (mail-qt1-f197.google.com [209.85.160.197]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-333-4VmCygrtM5O7G_4GpMTjQw-1; Tue, 21 Mar 2023 11:10:38 -0400 X-MC-Unique: 4VmCygrtM5O7G_4GpMTjQw-1 Received: by mail-qt1-f197.google.com with SMTP id f36-20020a05622a1a2400b003deb2fa544bso5051008qtb.0 for ; Tue, 21 Mar 2023 08:10:38 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1679411406; x=1682003406; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=+DFoGD9BJrCFMifx1PxTOB2rujq31Ya1+80mI9jX3No=; b=dl5sCSutCwtJPQroQTkBXunrRCJcAnxFqdAW55NToqFWorAiHHHpvZ9YDaUkd9Dmqj GHLFj2+6j1E19qN9+ZKR/eThHkT4XuXyw0xqxtHcO7UL3GciK4YkmAH5tZb/8SQ4TNbl VBswbZxjHdWlq9E1tNllAdO7lMKLBxIdPBxh5uLifJqqoE1lIUDY07BcM1/jS61ngkJz KkN8oEcFEMib2oJASqiisPZWyMqEmXRaKpZffYUI0P26iVYX241YPr37dSRMPo/TDidM UQGMFdfDbWBvL2OuwUe8+yNEa+/K42aXaEifpi/5peP+Jxejh/O2qI9Nt+s6Pzt78nJ4 ctRA== X-Gm-Message-State: AO0yUKWMMIW0DFVOkIAhWDV5xZ8vTm4dU4f5ZhxVFcVpwXRH/dTaXnfW OXXGYcJPKfpXMMVplWheOogD9X8SNiqQf2T0Fw9MaIPpn9VMByzMPdCszyKHlYL/OXm8v1U+DXR ih9XKUFakuuk= X-Received: by 2002:a05:6214:519d:b0:5af:3a13:202d with SMTP id kl29-20020a056214519d00b005af3a13202dmr4203420qvb.4.1679411405809; Tue, 21 Mar 2023 08:10:05 -0700 (PDT) X-Google-Smtp-Source: AK7set8W9eKuw8mGCscF9tjJFG3duBKw2qky36XBzhbw6oNhwiuWMqsmeB+rT/nlMILNCEGFQIkjlg== X-Received: by 2002:a05:6214:519d:b0:5af:3a13:202d with SMTP id kl29-20020a056214519d00b005af3a13202dmr4203396qvb.4.1679411405533; Tue, 21 Mar 2023 08:10:05 -0700 (PDT) Received: from x1n (bras-base-aurron9127w-grc-40-70-52-229-124.dsl.bell.ca. [70.52.229.124]) by smtp.gmail.com with ESMTPSA id s10-20020a05620a16aa00b0074341cb30d0sm9364657qkj.62.2023.03.21.08.10.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 21 Mar 2023 08:10:04 -0700 (PDT) Date: Tue, 21 Mar 2023 11:10:02 -0400 From: Peter Xu To: Mike Rapoport Cc: Andrei Vagin , Andrew Morton , Muhammad Usama Anjum , David Hildenbrand , =?utf-8?B?TWljaGHFgiBNaXJvc8WCYXc=?= , Danylo Mocherniuk , Paul Gofman , Cyrill Gorcunov , Nadav Amit , Alexander Viro , Shuah Khan , Christian Brauner , Yang Shi , Vlastimil Babka , "Liam R . Howlett" , Yun Zhou , Suren Baghdasaryan , Alex Sierra , Matthew Wilcox , Pasha Tatashin , Axel Rasmussen , "Gustavo A . R . Silva" , Dan Williams , linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org, Greg KH , kernel@collabora.com Subject: Re: [PATCH v11 0/7] Implement IOCTL to get and optionally clear info about PTEs Message-ID: References: <20230309135718.1490461-1-usama.anjum@collabora.com> <20230309115818.170dd5ef2cde7b58b9354ecd@linux-foundation.org> MIME-Version: 1.0 In-Reply-To: X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit X-Stat-Signature: 63t785me4mpf9xsnu8yyzusgq6w4bwdb X-Rspam-User: X-Rspamd-Queue-Id: 87EE540011 X-Rspamd-Server: rspam06 X-HE-Tag: 1679411443-774270 X-HE-Meta: U2FsdGVkX18BwGbwcrdv2F7DE3QtkNUYgZU2fuxjRZEXGiE0LSw4pVmxlKZYhIYsfOqchtAxFWhdRGqODgRRiCriyCuksiyVvXfmlvl918qzzzM+hzM54G/IvDGLWEqAIpeP5zR1fS+IeiUPIU5u6Km+dYGKUrbXYZtQ89xInMRW1sv/64urJyOCmJqouSQSRORee0lvP5HDHFilDXXWcnQiuZHVgZTL/mm3DaRFmiZH2vnDHExhoHq9G4GyYKsC2hwjzRhHktXBcbAeldA0y6a06L5ayB2nv0+JNYK0g7URIHFfp4ql3xs+YD+j+sqZeS182IY6pcHt+NUAnM3qr0khinh9XD7Cnp4mOpCv8R76LnctjFff7ZfCnxuYwAXV68ASzphBsBLt9cXMssJLgTMu6rSj86wTscybr9Wfh/cx6Bnkos1SGuQw3e6ZJykAcgw9VLkNSX8lKLHkSFEcFTVxcJKSQchbftXxRKJ36Pm9PJk4yYU/oHZoN60Q60t1OZw+2KSt25TRv7CSfO1fWJNlO8im/o0wNOvTBbimeksUav0VjJ21HgMs2eYFMDtekcSZrUrgcKLiHmWa1uDEBZTwcvRnYuVFkQNd2puW9ZC7pd4yLkM0xTA6zm9Tz9cz234kFIvo/qA+ixTgV04mY3TEfhwAtNyFg98OfX4zM+Lbbp8Dfo+XSzNAcdb4wgRMiRvbELMjuZ9qmJrNL9Je7bIzj/NFOLim0vysM4SosFbuD+nB+hI5AMrgvhlYromDUabRHrHR+OSTQ1bHMI1l/TEfRM7Glb2cVgCrWGHSmJgGQY3zGjPLFsdxArfynRNc5922MlB32hZuLYwHsSR3WcxKex3s9LmP58dRijFUTqO7DHOxH3IedQbdMs4XY4JYnLcwRFUL/FRQ1rvhvvj2GLPi5vDGwZbfNNRHug2IqYcmmf+1BJKHCs0/scw9H+e47JpR7jV5lVVDQTX83/h jHHg0VG/ 2Nn/a5G7ywzoUaOUrX4uilmqkaJRVggVSMSqbCJeplCKm/IGNXCTylQaiVvVLhlRM2k8cRTaVWKcBsfyNpvYK/DNnhHFnxBDiHQBMgIEKYilXHdYcl8Gw0dugO1GFkNr1FoOChDTUTYHZybmwfj8rGFEpUVrGEzDckJB7wbHspJzUw/f4nqcz8/onK5bjwjg2lKLjVWSJ7YU3YzbYLLwAzJmVXyAzbSOdguT/FMeAb6W/xi3/mh8nHR9GEua2KGTeP3F/3O95JrJVdrNe4ce3psRX20ANUogGiPaeSgn8asjHmhosYDfoHY85s9qRKAR2g/aEmnaqqhTre5gIIszMgAxVsD5W4gJnuqSBXtQq7Gg6ws1al+G2yIvSPE2DPDfNzv0vrZdbyS4zp8O+9vcVn5O/IdX7+4MWALtDcBqfc1xGCZ3D1uWfAeGRT+gp7pDn3ul9EBwo2osg1Fu6bhNeMUEztaleTHCKbmee6xkL3A1kmjnmgiNgxZwQaA== 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, Mar 21, 2023 at 02:41:53PM +0200, Mike Rapoport wrote: > On Mon, Mar 20, 2023 at 11:30:00AM -0700, Andrei Vagin wrote: > > On Thu, Mar 9, 2023 at 11:58 AM Andrew Morton wrote: > > > > > > On Thu, 9 Mar 2023 18:57:11 +0500 Muhammad Usama Anjum wrote: > > > > > > > The information related to pages if the page is file mapped, present and > > > > swapped is required for the CRIU project [5][6]. The addition of the > > > > required mask, any mask, excluded mask and return masks are also required > > > > for the CRIU project [5]. > > > > > > It's a ton of new code and what I'm not seeing in here (might have > > > missed it?) is a clear statement of the value of this feature to our > > > users. > > > > > > I see hints that CRIU would like it, but no description of how valuable > > > this is to CRIU's users. > > > > Hi Andrew, > > > > The current interface works for CRIU, and I can't say we have anything > > critical with it right now. > > > > On the other hand, the new interface has a number of significant improvements: > > > > * it is more granular and allows us to track changed pages more > > effectively. The current interface can clear dirty bits for the entire > > process only. In addition, reading info about pages is a separate > > operation. It means we must freeze the process to read information > > about all its pages, reset dirty bits, only then we can start dumping > > pages. The information about pages becomes more and more outdated, > > while we are processing pages. The new interface solves both these > > downsides. First, it allows us to read pte bits and clear the > > soft-dirty bit atomically. It means that CRIU will not need to freeze > > processes to pre-dump their memory. Second, it clears soft-dirty bits > > for a specified region of memory. It means CRIU will have actual info > > about pages to the moment of dumping them. > > > > * The new interface has to be much faster because basic page filtering > > is happening in the kernel. With the old interface, we have to read > > pagemap for each page. > > There is still a caveat in using userfaultfd for tracking dirty pages in > CRIU because we still don't support C/R of processes that use uffd. This reminded me whether the interface can also expose soft-dirty as a ranged soft-dirty collector too to replace existing pagemap read()s? Just in case userfault cannot be used. The code addition should be trivial IIUC. Then maybe PAGE_IS_WRITTEN will be a name too generic, it can be two bits PAGE_IS_UFFD_WP and PAGE_IS_SOFT_DIRTY, having PAGE_IS_UFFD_WP the inverted meaning of current PAGE_IS_WRITTEN. -- Peter Xu