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 6596AC77B60 for ; Wed, 26 Apr 2023 07:06:42 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EC0566B0088; Wed, 26 Apr 2023 03:06:41 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E23C26B008A; Wed, 26 Apr 2023 03:06:41 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id C74446B008C; Wed, 26 Apr 2023 03:06:41 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id AFC186B0088 for ; Wed, 26 Apr 2023 03:06:41 -0400 (EDT) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 790C41C6424 for ; Wed, 26 Apr 2023 07:06:41 +0000 (UTC) X-FDA: 80722659402.18.8769F58 Received: from madras.collabora.co.uk (madras.collabora.co.uk [46.235.227.172]) by imf05.hostedemail.com (Postfix) with ESMTP id 6981010000C for ; Wed, 26 Apr 2023 07:06:39 +0000 (UTC) Authentication-Results: imf05.hostedemail.com; dkim=pass header.d=collabora.com header.s=mail header.b=heHwYz8F; spf=pass (imf05.hostedemail.com: domain of usama.anjum@collabora.com designates 46.235.227.172 as permitted sender) smtp.mailfrom=usama.anjum@collabora.com; dmarc=pass (policy=quarantine) header.from=collabora.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1682492799; 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=yDik2sjd4Jg+Uh5nOeUCxC+IRimyDdYxQLLUQR5ocCs=; b=ZjYrtILeiG1Z18lrp+pnBoDhFlIRB5fgD69UKwscR+3ukdcqAnqPx4c/8B4SqB81B/u2YT InU/+hrYHKTPMvbKqLbtyEc7doyOFmDGRZl2Rh/MXxoEESqb8arDuSPp0bsUY3ERbQ0mNO 7aJd+OIICopChrMuhLnOwNak4vSeiKM= ARC-Authentication-Results: i=1; imf05.hostedemail.com; dkim=pass header.d=collabora.com header.s=mail header.b=heHwYz8F; spf=pass (imf05.hostedemail.com: domain of usama.anjum@collabora.com designates 46.235.227.172 as permitted sender) smtp.mailfrom=usama.anjum@collabora.com; dmarc=pass (policy=quarantine) header.from=collabora.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1682492799; a=rsa-sha256; cv=none; b=2a1b3cjfx07h9FjZwWTdsOJ/N+H5y8VAyw0uhHbtQJlUaAfs+8i6GAhdy+NvtFe26cpfa8 yF6E2OzAq6ktFFkLb/dju9x5U14z9YbU2QdAmePiKTXPNRQGvPALFc3eJBhXAaoNUtl+yo iIP19Q+BiKwqATmye1nDJvazM0KpSa4= Received: from [192.168.10.39] (unknown [39.37.187.173]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: usama.anjum) by madras.collabora.co.uk (Postfix) with ESMTPSA id 8740F6603009; Wed, 26 Apr 2023 08:06:28 +0100 (BST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1682492797; bh=T3Dk0jGRz9/2fOegjbJqSPN2JZCavQCXqoVb+ayBtjw=; h=Date:From:Subject:To:Cc:References:In-Reply-To:From; b=heHwYz8FI2HL0QOQtQqZjCTQl3/ivGoc0Ks5vyxH99Br7r7OLOLSOXPnE/vYxkSLx 84ErM1CHSxywdPQkwCtYpH+KoalbTt7IdzZheQnlJ9aREA5Gb47T3/W4Ywx3Je+UAE uvdWjFNtKe/V/xNiIjo9ok9vGa33L0x9VPg0sx5kwwPL9ncSczi0a0JfewVO39ZtR5 3pbzi0yJh0DagVoQWIeX/9p+rS9X6VHA3fjCvW3gyIxandOjYAKl1oh5LB0uBuUZQx rXgd7QPkDz6mgBqyjIOxu1nrr2BUse87YkLax+frWKhT+6jSkTLft7YLpN2FY+3fnT o9hd6hEebRQIw== Message-ID: Date: Wed, 26 Apr 2023 12:06:23 +0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.9.0 From: Muhammad Usama Anjum Subject: Re: [PATCH RESEND v15 2/5] fs/proc/task_mmu: Implement IOCTL to get and optionally clear info about PTEs To: Peter Xu , Paul Gofman Cc: Muhammad Usama Anjum , Alexander Viro , Shuah Khan , Christian Brauner , Yang Shi , Vlastimil Babka , "Liam R . Howlett" , Yun Zhou , Cyrill Gorcunov , =?UTF-8?B?TWljaGHFgiBNaXJvc8WCYXc=?= , Andrew Morton , Suren Baghdasaryan , Andrei Vagin , Alex Sierra , Matthew Wilcox , Pasha Tatashin , Danylo Mocherniuk , Axel Rasmussen , "Gustavo A . R . Silva" , David Hildenbrand , Dan Williams , linux-kernel@vger.kernel.org, Mike Rapoport , linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org, Greg KH , kernel@collabora.com, Nadav Amit References: <20230420060156.895881-1-usama.anjum@collabora.com> <20230420060156.895881-3-usama.anjum@collabora.com> Content-Language: en-US In-Reply-To: <20230420060156.895881-3-usama.anjum@collabora.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Stat-Signature: m9ekxaofou59s89r1r9umkrx1nhfgwyz X-Rspam-User: X-Rspamd-Queue-Id: 6981010000C X-Rspamd-Server: rspam06 X-HE-Tag: 1682492799-585158 X-HE-Meta: U2FsdGVkX18rc8myBhP3npbfHFjTRWtaSXheTbTzMwMr6ZOiWNbDTPdJ7ZQAAsKUI9E0fh/t0MOypjMRKf6jypvL8vfba0twKMIwoD3LOIh7mggh0KFgdaVAyAHb49eC/5d8CVr3qelxfdIDrIGtoejT8xw/3weK7cR7eUhkwTiPDVdekmkiKPZceO/gE9p9INRtU34PmwLttDO73Z86w+zoyFIc0R4iJRK9pExd9SBiiqvnNrHOpTtD28MaLoT+vrDJnT0hk0vhBAmG21T5FpEjNb0GiUk+LCDsYKL7CjY+7D92v2BYjbJjqelptp2rM1iIBX53juckltm0JCT5GuyWv41kvZ444a50yAsTd/QF06cnFS4mI+igOMYezy3dRqAiEVqjA0PVRArCI1O6MVnz7ni3bZuuEn8kFSAxBn0UwMoia6wxxPL2l1XuMX2ZAQQTeYz+i/yjPcO9xJzwnnzRseiv5VvBO9fUqPxrDiuDVjE2ei1/NzVKFWzAEXLWmjI/fiexFTiknE70hjGrQE31iK3riNU7VvifcBGH7KpQcw7IsvHhNCN+o/RxBX6hFWPHZAlBcKM3pG0MiMeGgGdZfpFFdzodRLHLEylpBmbVrZl6EUnstBcxbnBgH14hfHoeD1Hex+cpk1bGOBrcJCGUeyBYxMHXSGiw3xozP/gkPqYu+4PwD5z1vw43PG0MOUCwdN3KhItAhL12W3/6cM/HzgRKKboORpQpNIB0dgzOwxFFvFinfeh5CVQ2kw1nXzP/PXpLSmyINtjt9uHoCpu4cqj+HleaLC2cZ32x0BgwlmQBz778U2Ae6X+oZHxy35jJwGmKRpMuRo6t0cEoQylHIOKT+cKfq5pdZd/g94DY5ZB7FGyFDFZbQgBzZP0zKYQM3zn+jFgKm3SPYWjRtoECfF34CugS5tjCS3VjhsdwOxpXrrbYqxXKs8pWg2LJUlnWfbya09Uwx6lZxgp Yzu2soRH XFlu6knSFbsLicbyR9o5G7b1sdHyQDhdo1U4fgaVIg3jCSuCGk82J0zuHEGbrEeFUccFlZUiRbVIlgU3l2bCsre9E7VJTvxReFqPwDCispzirk+CL/KuOH5S6a2ltuAROLM83aunlZ8VDE+FytJMNAEEgBBGHD4+VTJR6rg8x2qjRjycQ7rWzcjZNUBrJ0Wb8pxGsqKrP6HNcaCrSXuStEv4DRWPo76q9b4/SM+YIS4rZYxLagRPmWadlgw== 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/20/23 11:01 AM, Muhammad Usama Anjum wrote: > +/* Supported flags */ > +#define PM_SCAN_OP_GET (1 << 0) > +#define PM_SCAN_OP_WP (1 << 1) We have only these flag options available in PAGEMAP_SCAN IOCTL. PM_SCAN_OP_GET must always be specified for this IOCTL. PM_SCAN_OP_WP can be specified as need. But PM_SCAN_OP_WP cannot be specified without PM_SCAN_OP_GET. (This was removed after you had asked me to not duplicate functionality which can be achieved by UFFDIO_WRITEPROTECT.) 1) PM_SCAN_OP_GET | PM_SCAN_OP_WP vs 2) UFFDIO_WRITEPROTECT After removing the usage of uffd_wp_range() from PAGEMAP_SCAN IOCTL, we are getting really good performance which is comparable just like we are depending on SOFT_DIRTY flags in the PTE. But when we want to perform wp, PM_SCAN_OP_GET | PM_SCAN_OP_WP is more desirable than UFFDIO_WRITEPROTECT performance and behavior wise. I've got the results from someone else that UFFDIO_WRITEPROTECT block pagefaults somehow which PAGEMAP_IOCTL doesn't. I still need to verify this as I don't have tests comparing them one-to-one. What are your thoughts about it? Have you thought about making UFFDIO_WRITEPROTECT perform better? I'm sorry to mention the word "performance" here. Actually we want better performance to emulate Windows syscall. That is why we are adding this functionality. So either we need to see what can be improved in UFFDIO_WRITEPROTECT or can I please add only PM_SCAN_OP_WP back in pagemap_ioctl? Thank you so much for the help. -- BR, Muhammad Usama Anjum