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 E6EC9C77B7F for ; Fri, 27 Jun 2025 15:09:17 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 854686B009F; Fri, 27 Jun 2025 11:09:17 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 804CF6B00B6; Fri, 27 Jun 2025 11:09:17 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 6CC506B00B7; Fri, 27 Jun 2025 11:09:17 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 547036B00B6 for ; Fri, 27 Jun 2025 11:09:17 -0400 (EDT) Received: from smtpin25.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 9E0541214FD for ; Fri, 27 Jun 2025 15:09:16 +0000 (UTC) X-FDA: 83601513912.25.2B0218B Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by imf19.hostedemail.com (Postfix) with ESMTP id 1B6211A0005 for ; Fri, 27 Jun 2025 15:09:13 +0000 (UTC) Authentication-Results: imf19.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b="MwMV3/Nb"; spf=pass (imf19.hostedemail.com: domain of david@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=david@redhat.com; dmarc=pass (policy=quarantine) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1751036954; 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=R52UK179SfEw6rrLSyqaN22xz8RJ96+38R4F+OJEGnw=; b=bKeWQlawJdFyJSGqa/wejbyc9bAh0GHpM9jb5L4cD3qhGsdVqUNSve5XLbDgO60E1srQcv 1TX3RNa1qPqSoMJCLuiahYMnFfj1RgkSBqikq0l6i/GhK80qx5jnKYvnZ5Yzds+RSdhdQH doBlW77rUsWI2gFCjQKE3xKuKskM65U= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1751036954; a=rsa-sha256; cv=none; b=MUNF/n819znMygPNIzr3HE9B7GW/CeCJso7zyGZO9gQYIcJZgKTUfy84WSEq8c36NhqLLJ 0KARViGZI1P2Eg9xhnPpy5o109qTCOS2DTYPWWKGrqoGJ2ahVSBPygiSPSeZmG7h3ltHU2 mcHQgIWH7m3RAJsVDTdR/b5dbTV7R40= ARC-Authentication-Results: i=1; imf19.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b="MwMV3/Nb"; spf=pass (imf19.hostedemail.com: domain of david@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=david@redhat.com; dmarc=pass (policy=quarantine) header.from=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1751036953; 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:autocrypt:autocrypt; bh=R52UK179SfEw6rrLSyqaN22xz8RJ96+38R4F+OJEGnw=; b=MwMV3/NbrsLhURWenQyVRfPkF1pm9sebvzTWQQExjlBVTEDFeFPrabYF7ypQldCEuq8Nyf GJIgLkhUu+Jm5Tsfi7aAOm5e0maWdOT/Pfnyb6BTrV50ONpx4gP13FPiZhU1cPbUntcfc7 MxFYbHegAFBHvh8iJbX0z8PN+fNvSO8= Received: from mail-wm1-f70.google.com (mail-wm1-f70.google.com [209.85.128.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-329-PuzxicuDObiRGqPz5jxgig-1; Fri, 27 Jun 2025 11:09:10 -0400 X-MC-Unique: PuzxicuDObiRGqPz5jxgig-1 X-Mimecast-MFC-AGG-ID: PuzxicuDObiRGqPz5jxgig_1751036947 Received: by mail-wm1-f70.google.com with SMTP id 5b1f17b1804b1-4535ad64d30so16327175e9.3 for ; Fri, 27 Jun 2025 08:09:10 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751036947; x=1751641747; h=content-transfer-encoding:in-reply-to:organization:autocrypt :content-language:from:references:cc:to:subject:user-agent :mime-version:date:message-id:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=R52UK179SfEw6rrLSyqaN22xz8RJ96+38R4F+OJEGnw=; b=lCqZwhsyZuihVeMpTlKPfgabM0XBFz+l/wK5LZ6JBwiYyJYDTVHIa9qOqrKUH13GfF Tm9/8Fxuj//X+6ubLoHVGPTGB0PJWofgfz9AF/MCou9FgJlYKrIv6pvQaMFWAjN62Lu8 zVUxGJOByD3o7mviMWg4xF/js8pl3o/Y/WTCc44rmlizIJCY6yvyFF/cPMCumiKeKV20 lUQC0otgA9BtdanRMhX879OBSdKRgDkUGSgkRhpA15SHSReARoSY9Tsm/G3Q1nOoHYR/ 9PjMSll3mBDK3pdeBTbqXU7Qilgbn2P/CodXU77cI0WjDzxesfXkqY1FdeG8nEIlyFHE jGSA== X-Forwarded-Encrypted: i=1; AJvYcCWUqqt+TlYVSjxh15anyabR/DxfpqbZq9NJpDmsd+1Zpg72kyPazFL6cVFsqhJGmbdnsEf/4S4PQQ==@kvack.org X-Gm-Message-State: AOJu0YwoPdyqcNZzstSm2d2uEN0lFrLvF25ad/X8wg/Cb+f3N3D5GCCZ 5sFIKH/q4QUasJQHY+s5kQ/EsJQ4uPmLuBx4nwADQt6Ll9IiK/kocotHDRMRypN35jwJDCQQ6tk msVroqVeZ508cW86qgtorJ2I1BzHyn32jGC+5B0bajHYyfca/Eutj X-Gm-Gg: ASbGncsNZfikxhY0FDMk/IdsSVRvkfDjdRJsNn8qKObt3lG7qlE6T+oflDHycRrRCzl q2b3cTtdyDuNCoXwx4N+4jDe55TxsFSRC7zkTzkoTFCj4Lz5AEeL8hx1CgXOp3sxgUC/qt9A6Nv eS4dbNdJ7TUrlDdgH+PgZz99FtUr9TzsU8uMqstTr1qPUqb3eppum+3Uo0hVMK/cRnafvmOIUhG fk2P1mIk618JTJJsbovB4DBfUhCOKawJpMXTsx2Rlv6osn9Z7bPghddgtPakh65j0697yWgKqgP RO0v3mNkdqvPoyKt7Qykj33emA5i/3ztMwEjIutDFvLm8BC8r7w1hJr1r0KLBE1mmnHs1RvwLNj TF+9bus2TbRp3Tui09YZPgXveP91ZeKfQFRf9hDc+szOPYtJsBQ== X-Received: by 2002:a05:600c:4688:b0:43d:ac5:11e8 with SMTP id 5b1f17b1804b1-4538ee835bcmr39294965e9.21.1751036947141; Fri, 27 Jun 2025 08:09:07 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFWe0Tk0XYbLjqf5R0NQ29I7Nsta+/uEcW+ztqfhBW32Asd+GFgU7LbjQTI2JkLaJQuwwkEhQ== X-Received: by 2002:a05:600c:4688:b0:43d:ac5:11e8 with SMTP id 5b1f17b1804b1-4538ee835bcmr39294235e9.21.1751036946497; Fri, 27 Jun 2025 08:09:06 -0700 (PDT) Received: from ?IPV6:2003:d8:2f2d:5d00:f1a3:2f30:6575:9425? (p200300d82f2d5d00f1a32f3065759425.dip0.t-ipconnect.de. [2003:d8:2f2d:5d00:f1a3:2f30:6575:9425]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538a406ab6sm54044615e9.30.2025.06.27.08.09.05 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 27 Jun 2025 08:09:06 -0700 (PDT) Message-ID: <9eb26777-cdfd-49df-9e1f-e326454ab477@redhat.com> Date: Fri, 27 Jun 2025 17:09:04 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v1 3/4] mm: split folio_pte_batch() into folio_pte_batch() and folio_pte_batch_ext() To: Lance Yang Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, Andrew Morton , "Liam R. Howlett" , Lorenzo Stoakes , Vlastimil Babka , Jann Horn , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Zi Yan , Matthew Brost , Joshua Hahn , Rakie Kim , Byungchul Park , Gregory Price , Ying Huang , Alistair Popple , Pedro Falcato , Rik van Riel , Harry Yoo References: <20250627115510.3273675-1-david@redhat.com> <20250627115510.3273675-4-david@redhat.com> From: David Hildenbrand Autocrypt: addr=david@redhat.com; keydata= xsFNBFXLn5EBEAC+zYvAFJxCBY9Tr1xZgcESmxVNI/0ffzE/ZQOiHJl6mGkmA1R7/uUpiCjJ dBrn+lhhOYjjNefFQou6478faXE6o2AhmebqT4KiQoUQFV4R7y1KMEKoSyy8hQaK1umALTdL QZLQMzNE74ap+GDK0wnacPQFpcG1AE9RMq3aeErY5tujekBS32jfC/7AnH7I0v1v1TbbK3Gp XNeiN4QroO+5qaSr0ID2sz5jtBLRb15RMre27E1ImpaIv2Jw8NJgW0k/D1RyKCwaTsgRdwuK Kx/Y91XuSBdz0uOyU/S8kM1+ag0wvsGlpBVxRR/xw/E8M7TEwuCZQArqqTCmkG6HGcXFT0V9 PXFNNgV5jXMQRwU0O/ztJIQqsE5LsUomE//bLwzj9IVsaQpKDqW6TAPjcdBDPLHvriq7kGjt WhVhdl0qEYB8lkBEU7V2Yb+SYhmhpDrti9Fq1EsmhiHSkxJcGREoMK/63r9WLZYI3+4W2rAc UucZa4OT27U5ZISjNg3Ev0rxU5UH2/pT4wJCfxwocmqaRr6UYmrtZmND89X0KigoFD/XSeVv jwBRNjPAubK9/k5NoRrYqztM9W6sJqrH8+UWZ1Idd/DdmogJh0gNC0+N42Za9yBRURfIdKSb B3JfpUqcWwE7vUaYrHG1nw54pLUoPG6sAA7Mehl3nd4pZUALHwARAQABzSREYXZpZCBIaWxk ZW5icmFuZCA8ZGF2aWRAcmVkaGF0LmNvbT7CwZgEEwEIAEICGwMGCwkIBwMCBhUIAgkKCwQW AgMBAh4BAheAAhkBFiEEG9nKrXNcTDpGDfzKTd4Q9wD/g1oFAl8Ox4kFCRKpKXgACgkQTd4Q 9wD/g1oHcA//a6Tj7SBNjFNM1iNhWUo1lxAja0lpSodSnB2g4FCZ4R61SBR4l/psBL73xktp rDHrx4aSpwkRP6Epu6mLvhlfjmkRG4OynJ5HG1gfv7RJJfnUdUM1z5kdS8JBrOhMJS2c/gPf wv1TGRq2XdMPnfY2o0CxRqpcLkx4vBODvJGl2mQyJF/gPepdDfcT8/PY9BJ7FL6Hrq1gnAo4 3Iv9qV0JiT2wmZciNyYQhmA1V6dyTRiQ4YAc31zOo2IM+xisPzeSHgw3ONY/XhYvfZ9r7W1l pNQdc2G+o4Di9NPFHQQhDw3YTRR1opJaTlRDzxYxzU6ZnUUBghxt9cwUWTpfCktkMZiPSDGd KgQBjnweV2jw9UOTxjb4LXqDjmSNkjDdQUOU69jGMUXgihvo4zhYcMX8F5gWdRtMR7DzW/YE BgVcyxNkMIXoY1aYj6npHYiNQesQlqjU6azjbH70/SXKM5tNRplgW8TNprMDuntdvV9wNkFs 9TyM02V5aWxFfI42+aivc4KEw69SE9KXwC7FSf5wXzuTot97N9Phj/Z3+jx443jo2NR34XgF 89cct7wJMjOF7bBefo0fPPZQuIma0Zym71cP61OP/i11ahNye6HGKfxGCOcs5wW9kRQEk8P9 M/k2wt3mt/fCQnuP/mWutNPt95w9wSsUyATLmtNrwccz63XOwU0EVcufkQEQAOfX3n0g0fZz Bgm/S2zF/kxQKCEKP8ID+Vz8sy2GpDvveBq4H2Y34XWsT1zLJdvqPI4af4ZSMxuerWjXbVWb T6d4odQIG0fKx4F8NccDqbgHeZRNajXeeJ3R7gAzvWvQNLz4piHrO/B4tf8svmRBL0ZB5P5A 2uhdwLU3NZuK22zpNn4is87BPWF8HhY0L5fafgDMOqnf4guJVJPYNPhUFzXUbPqOKOkL8ojk CXxkOFHAbjstSK5Ca3fKquY3rdX3DNo+EL7FvAiw1mUtS+5GeYE+RMnDCsVFm/C7kY8c2d0G NWkB9pJM5+mnIoFNxy7YBcldYATVeOHoY4LyaUWNnAvFYWp08dHWfZo9WCiJMuTfgtH9tc75 7QanMVdPt6fDK8UUXIBLQ2TWr/sQKE9xtFuEmoQGlE1l6bGaDnnMLcYu+Asp3kDT0w4zYGsx 5r6XQVRH4+5N6eHZiaeYtFOujp5n+pjBaQK7wUUjDilPQ5QMzIuCL4YjVoylWiBNknvQWBXS lQCWmavOT9sttGQXdPCC5ynI+1ymZC1ORZKANLnRAb0NH/UCzcsstw2TAkFnMEbo9Zu9w7Kv AxBQXWeXhJI9XQssfrf4Gusdqx8nPEpfOqCtbbwJMATbHyqLt7/oz/5deGuwxgb65pWIzufa N7eop7uh+6bezi+rugUI+w6DABEBAAHCwXwEGAEIACYCGwwWIQQb2cqtc1xMOkYN/MpN3hD3 AP+DWgUCXw7HsgUJEqkpoQAKCRBN3hD3AP+DWrrpD/4qS3dyVRxDcDHIlmguXjC1Q5tZTwNB boaBTPHSy/Nksu0eY7x6HfQJ3xajVH32Ms6t1trDQmPx2iP5+7iDsb7OKAb5eOS8h+BEBDeq 3ecsQDv0fFJOA9ag5O3LLNk+3x3q7e0uo06XMaY7UHS341ozXUUI7wC7iKfoUTv03iO9El5f XpNMx/YrIMduZ2+nd9Di7o5+KIwlb2mAB9sTNHdMrXesX8eBL6T9b+MZJk+mZuPxKNVfEQMQ a5SxUEADIPQTPNvBewdeI80yeOCrN+Zzwy/Mrx9EPeu59Y5vSJOx/z6OUImD/GhX7Xvkt3kq Er5KTrJz3++B6SH9pum9PuoE/k+nntJkNMmQpR4MCBaV/J9gIOPGodDKnjdng+mXliF3Ptu6 3oxc2RCyGzTlxyMwuc2U5Q7KtUNTdDe8T0uE+9b8BLMVQDDfJjqY0VVqSUwImzTDLX9S4g/8 kC4HRcclk8hpyhY2jKGluZO0awwTIMgVEzmTyBphDg/Gx7dZU1Xf8HFuE+UZ5UDHDTnwgv7E th6RC9+WrhDNspZ9fJjKWRbveQgUFCpe1sa77LAw+XFrKmBHXp9ZVIe90RMe2tRL06BGiRZr jPrnvUsUUsjRoRNJjKKA/REq+sAnhkNPPZ/NNMjaZ5b8Tovi8C0tmxiCHaQYqj7G2rgnT0kt WNyWQQ== Organization: Red Hat In-Reply-To: X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: HWDifbG0ibOK3D8uzgJw5OzFwnhsdYypxcn8zr3ZMMU_1751036947 X-Mimecast-Originator: redhat.com Content-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Rspam-User: X-Stat-Signature: ff9zb3udurjnton96r187zkzqe18sp65 X-Rspamd-Queue-Id: 1B6211A0005 X-Rspamd-Server: rspam08 X-HE-Tag: 1751036953-287881 X-HE-Meta: U2FsdGVkX18Eg9XzyD4t9Fno1/njPUlkgCVurzHHZEBO+qa4hN0iOAaKtcJDxIwq/y5s9FlwNDMb43oHNMcVR/BB/B/Fe3QXtW1F6x3SgNLMtK6bOYr5hXg+Dyr8TXNeoSypyaZ+4DyS/xu4Qd4hbCOTpQ15oAn4gS88rIpJijIqkerFFFNcU4j0tHjGUCVFS7zvfNgb0F9UsoQSkFG2v0/kBdoCnzQV+e69f1K5x8Gi0KCHaM7rGgfNiuCIk/UvDS4Md8siZC33kptrbUpto0fPZ3HPUAuhfjZUEU49FPJULNBvABVABnBEd4I+UYjjtiQNXkB1ueS3tS0AjN+33I+N9Kwe04AYmK1WYbsD3SK/qCTxDx2Mdp8vSQiBRiAjgTqlEBmsN3+IuSf71fIxD9JP9OrC46UWnB5HKum0/Bgvu0d7M4S7alSPlMJfeavoiJTrd3/K/mq/Ae70YQhm8Eq+k8tJv0H452pn8g98S/8yqGnkNRh9CnCRJ9brrkv5zpP6UuIHWRXwPZU6n+88Xn7p8UHqsPl9frp2ut/9dPJhfkcMBOZvhedzZYVM8pL8N1xcq4fYA0CdPlIWVjfGhkOHzPKLkBFhWX8mkXs5c64SW/W+Pa+/6F8RueXpIpV0+tZg7vk6pZ++hjCVtEa5SHKgukps299J625BL/seBns57sMQJ7qDAbSiFjSGD1yF/oyVXCuzgVPNed84OWjkRGozibPWx1KMHh1NooiKCTwzJcUF4ScltxDLjNcR/qmoYkHFfhy4W4SNsYmgGLrc22Hite8HPHswmErdSMUxG1SUhKhyzPvYf8t5kid75FdC9O2zWjrb1fF8oqDm9BzAuieI4rjGhi6vkzHB3s38QTXwgqLEuHnPlIZ5wS1q/MBgD7Mzomj+sKutQQrR8rlXX3D8r08HE0dkPRYIKhY9thQTZFVmcAZrQ5sTlSkGeolMfiXFzvyH3S3yRHyIL9H A0ZGGPfh uasQIpEqIc3ynGvNwbDQ6niAPsKbqzpBRt4ZY2W9JhqmSVm3nlEO5M1SIAGRMJ3nNlstOuulCIk0dkE/eflf/KrxKQN0qRf/asd8tjuIBZBuPAtSPA/15jtcYXer044FvNw+aG/PmvzbPLeFShQbUPwL7gEzATo2xHFwj3g35otD6uGPJKHY+t7WyMSXecYNIc1e1 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: List-Subscribe: List-Unsubscribe: On 27.06.25 16:19, Lance Yang wrote: > On Fri, Jun 27, 2025 at 7:55 PM David Hildenbrand wrote: >> >> Many users (including upcoming ones) don't really need the flags etc, >> and can live with a function call. >> >> So let's provide a basic, non-inlined folio_pte_batch(). >> >> In zap_present_ptes(), where we care about performance, the compiler >> already seem to generate a call to a common inlined folio_pte_batch() >> variant, shared with fork() code. So calling the new non-inlined variant >> should not make a difference. > > It's always an interesting dance with the compiler when it comes to inlining, > isn't it? We want the speed of 'inline' for critical paths, but also a compact > binary for the common case ... > > This split is a nice solution to the classic 'inline' vs. code size dilemma ;p Yeah, in particular when we primarily care about optimizing out all the unnecessary checks inside the function, not necessarily also inlining the function call itself. If we ever realize we absolute must inline it into a caller, we could turn folio_pte_batch_ext() into an "__always_inline", but for now it does not seem like this is really required from my experiments. -- Cheers, David / dhildenb