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 DEF8AC83F01 for ; Wed, 30 Aug 2023 16:24:27 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5FE4244016A; Wed, 30 Aug 2023 12:24:27 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 585C3440165; Wed, 30 Aug 2023 12:24:27 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 426AE44016A; Wed, 30 Aug 2023 12:24:27 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 2F1FF440165 for ; Wed, 30 Aug 2023 12:24:27 -0400 (EDT) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id E2C33120240 for ; Wed, 30 Aug 2023 16:24:26 +0000 (UTC) X-FDA: 81181293732.19.1B22FE7 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf13.hostedemail.com (Postfix) with ESMTP id B421B20019 for ; Wed, 30 Aug 2023 16:24:24 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=W9vh7hen; spf=pass (imf13.hostedemail.com: domain of david@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=david@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=1693412664; 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=sgQnGhEZJ0yoOE5a8Oq+mztnWmGg/SOlXBzDljzJzy4=; b=mnLDDB9bG2nttQ8H4NYPu8PLEkLO08C1QWOlilGKN6lur0z+ktUJ9ITmsnDynNfDiLoSov gGvPVNcBssXQ+V5M7XTeyAY3mH1loYapkerwNFpPHEd413s+vhXooN+yrjxk6AN5mYvU+n 8WaePCpKUHgIPX7MYFfvviEsid2et4U= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1693412664; a=rsa-sha256; cv=none; b=uLp27nSxMNeUOYpjbRx9ERNZ/QrUf6BNuu/9SecTyoTJXsgLZa9yPKG4hTNnF1LmFodVZ/ VXU8AzCkryLqFktg5IivwIjNUUnCHPqsKKxwHZ/ffzH+CYa06qYJu81JzDTVV6LVYyxZgK u72WlgMMoXveUWVm97WbuuMYfL4606Y= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=W9vh7hen; spf=pass (imf13.hostedemail.com: domain of david@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=david@redhat.com; dmarc=pass (policy=none) header.from=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1693412664; 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=sgQnGhEZJ0yoOE5a8Oq+mztnWmGg/SOlXBzDljzJzy4=; b=W9vh7henX3e2bF2R7p4T/XSEDpsVeN+K+hOv1qvx7cICDP8KF2IzCK339rl1ZUM/XNkPOH E4iNFNW+vFHZLwtxYqa+UnzxkuIvY9sHrGofpMuIZJWtDplx3cshpCylKx5PPz5TG6QzSv 8GnKAFD3FpOOx5F1w3Q3iUJlM2UJm6s= Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-158-w-N0BkVxMqqXD7iMIKlPqQ-1; Wed, 30 Aug 2023 12:24:22 -0400 X-MC-Unique: w-N0BkVxMqqXD7iMIKlPqQ-1 Received: by mail-wr1-f72.google.com with SMTP id ffacd0b85a97d-3172a94b274so3872668f8f.0 for ; Wed, 30 Aug 2023 09:24:22 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1693412661; x=1694017461; h=content-transfer-encoding:in-reply-to:organization:from:references :cc:to:content-language:subject:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=sgQnGhEZJ0yoOE5a8Oq+mztnWmGg/SOlXBzDljzJzy4=; b=Ov+5EbtBj1ye8vsAEvhC8hTioR3KI6ejYxMz57kghR3VsqC8H6FMp7xhafxk6+5vGg ouWXsQCbdpEb5bHwEx/KpiJZBYeLORzM44okvfAe3TbdkcNQEwrXMDdxVFua/xW5K5aQ DWmyKpeAHDEY/J3PyMXKFFL3xBNtOrGmqP86Ib3ocjPSQq5+2L1iIrnqWGG0Ka5qvE7n J+Ue2zAJwJk8ffXv83LsT77TeHr1tPnd7LevDOXUtRYKvv7zOD3PkVYjNlppyQogSwe0 FTa4MqEOHCXBSyNviIwhUvvhLLfdmbz3f8h2vie1vZyUfmJxRTaX5/pqivqmpVofG9Wj TaoA== X-Gm-Message-State: AOJu0YzpS70lOiBWivBaBfdoxovhmm9kQp0z0KVhZ4d6jZfSRKvGMirZ U7qSp3mUNzsMJqEud7PCPg5uPVgU6Ift5zBvxR2c480vm8iG49TZj0/6XIvMnt5uIf87arqJ/Vh aON3dTw6Pzcs= X-Received: by 2002:adf:f4c3:0:b0:31d:d3db:4566 with SMTP id h3-20020adff4c3000000b0031dd3db4566mr1974300wrp.4.1693412661406; Wed, 30 Aug 2023 09:24:21 -0700 (PDT) X-Google-Smtp-Source: AGHT+IF/wXxa1hj4nkT4+KwE8RvCJfSVM6DqTxAvYR7jNalLGSk9aAL20Ta1x9gNDbBRH6bd4tZDBw== X-Received: by 2002:adf:f4c3:0:b0:31d:d3db:4566 with SMTP id h3-20020adff4c3000000b0031dd3db4566mr1974281wrp.4.1693412661006; Wed, 30 Aug 2023 09:24:21 -0700 (PDT) Received: from [10.59.19.200] (pd956a06e.dip0.t-ipconnect.de. [217.86.160.110]) by smtp.gmail.com with ESMTPSA id n8-20020a5d4c48000000b003140f47224csm17003722wrt.15.2023.08.30.09.24.17 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 30 Aug 2023 09:24:20 -0700 (PDT) Message-ID: <06110ce1-4638-2438-c17e-8f1dc3173522@redhat.com> Date: Wed, 30 Aug 2023 18:24:16 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 Subject: Re: [PATCH v2 1/5] mm: Implement folio_remove_rmap_range() To: Ryan Roberts , Matthew Wilcox Cc: Will Deacon , "Aneesh Kumar K.V" , Andrew Morton , Nick Piggin , Peter Zijlstra , Christian Borntraeger , Sven Schnelle , Arnd Bergmann , Yu Zhao , "Kirill A. Shutemov" , Yin Fengwei , Yang Shi , "Huang, Ying" , Zi Yan , linux-mm@kvack.org, linux-kernel@vger.kernel.org References: <20230830095011.1228673-1-ryan.roberts@arm.com> <20230830095011.1228673-2-ryan.roberts@arm.com> <1696b47d-fcaa-4d60-b9b2-3f2178127dcb@arm.com> From: David Hildenbrand Organization: Red Hat In-Reply-To: <1696b47d-fcaa-4d60-b9b2-3f2178127dcb@arm.com> X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Stat-Signature: d9yk1ji4rdpj8d74ipfop19j5hudt56e X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: B421B20019 X-Rspam-User: X-HE-Tag: 1693412664-80393 X-HE-Meta: U2FsdGVkX180y7x+8Y5vKygJcJx13Yu00/zPnQv9/fNambaKbMdg++xDh+w7UbSVIfWfNNRE5qHnbVGzHvGBfnrK6iQRUHm2ajQf3um8X9sm2ITAN1FBUscgVYO/wLgVXbekQTcoBfA0rHqDp7sQ2vY/vUeaSknK+HTAQ4gDXndVm3QG/FV023DI+e/XVSrJiPe3EqFIm4mnYUbZMcmVmEUQq8ToNeU2hBP/BCkYKuUmccF1dY4tnGsY2VZ9PiW9nDHSW4CPlLyMHeST2Iy77xBFscK7pAGzP/Ngw9NUu3A+vJYpmuWGnD7RR9rs6aHjZPX2DNyTOgPUtmmpIAbiznVy8+09Uzkd/4Tms2mLpYWQuqtAtmXxMrj+0ZMldrIChXjG3+lTn9M1+DVnR45MdPFP4RhJUivEBVOKBoJO1zViRXnz5fS/IQSzkGVFrBIAwS2SzDxKHJao8ObSQCTv0oCdK64t4Bz6yhjGXh2Qch04SNkjHTnrpQ9YEE0xgLDe8nVILNjGEvmRgW+ybp0a5tUodNVD4MoO4HQ/HW2yQI+b7CrivBJGU4srsOoLuhTjyTr5C+AP8KMNFFGtY58LkP2sSo8AVVghm5/vOYX8qTHhfFssqymb1ErBd+fOivQL56PUCdO8hsF+oMnRRsWoFJ/5NsV0ICT5KHtYlod6m4pCD5W3D+mfCCyEmaugWO/gZt6gfDrHUL1tbA2CqRpsVi9jra2zY2EVoPHT4cEvwj6hgpKNARG6yA5Op0xU39Pn21io2fne9TKltcgwlz3qX6BZpwpsroleZD1dXiOwpjc1/qFH6meARkc1PKeQ9aJ8Qe/AOZVtrqJEnv4LGIVtReg6BkUGQFA4t5vfwGri65RCGR85UMkbq+pXzy0/IgJ1RucgStialKtq93kweXU/xr38h7bwYWMZfZKvOJaR9zx6mEF8uFcxytJrVZLEdYlXUhN2cywuLHl6h5z5T7V vcS0pSmB iTLe1ELDMnXBz7Vy7/Dx4Q7xSNGRPQP8uIjaZMa6WtVAqeKc0ALuKVOEdTEqKZtNQdtDcPPhD8ypLNmoSbhwqjYnB3jC40oCwSe2LYMoFojT6pXrRMCpszCzWnnDkfOfNMYFddOdxhChImbh3ti4UGExJi8+7DhWKxOJZEh3yotmCO3Ljc1NXvLxqTYTlX3aQHLeh7tp7iUaKNVNX6dXChnSZYCOENMYiGhgLRJhqXUNcDrQLyYDnzT3td19CYWYD23z4USJQg4OPbsU/s6vlKBvh8obaZUv1qW3UiC2wqnDCY1G9zxAu0apLLnyvU5JgAsEmiZKhRHN7jJUklVKIhtQ2Dzu9QSv9y79Jz5eKKzvmDWhtFBfloZW6Ur6UeZOG5xFQYIEVR/rCl+6hKiMimUz+aLs491LRTH9drHuXVL4HKOCncnGIz5EYFSPVz45Ezyu+ 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 30.08.23 17:42, Ryan Roberts wrote: > On 30/08/2023 15:51, Matthew Wilcox wrote: >> On Wed, Aug 30, 2023 at 10:50:07AM +0100, Ryan Roberts wrote: >>> Like page_remove_rmap() but batch-removes the rmap for a range of pages >>> belonging to a folio. This can provide a small speedup due to less >>> manipuation of the various counters. But more crucially, if removing the >>> rmap for all pages of a folio in a batch, there is no need to >>> (spuriously) add it to the deferred split list, which saves significant >>> cost when there is contention for the split queue lock. >>> >>> All contained pages are accounted using the order-0 folio (or base page) >>> scheme. >>> >>> page_remove_rmap() is refactored so that it forwards to >>> folio_remove_rmap_range() for !compound cases, and both functions now >>> share a common epilogue function. The intention here is to avoid >>> duplication of code. >> >> What would you think to doing it like this instead? This probably doesn't >> even compile and it's definitely not sanity checked; just trying to get >> across an idea of the shape of this code. I think this is more like >> what DavidH was asking for (but he's on holiday this week so won't be >> able to confirm). > > I think it was actually Yu Zhou who was arguing for something more like this? I think so, not me. ... but the second variant is certainly shorter. -- Cheers, David / dhildenb