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 80D73C369C2 for ; Wed, 23 Apr 2025 03:15:40 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E04C56B0005; Tue, 22 Apr 2025 23:15:38 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id D8C486B0007; Tue, 22 Apr 2025 23:15:38 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id C2D5D6B0008; Tue, 22 Apr 2025 23:15:38 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 982D16B0005 for ; Tue, 22 Apr 2025 23:15:38 -0400 (EDT) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 39379160C43 for ; Wed, 23 Apr 2025 03:15:39 +0000 (UTC) X-FDA: 83363843598.30.8825F59 Received: from casper.infradead.org (casper.infradead.org [90.155.50.34]) by imf18.hostedemail.com (Postfix) with ESMTP id 60CDF1C0004 for ; Wed, 23 Apr 2025 03:15:37 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=oWA8Tu83; dmarc=none; spf=none (imf18.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1745378137; a=rsa-sha256; cv=none; b=sBsnqmw5IUANhNXNRCeOncavsfarcUMYxic8QjlJ4MELa96tbmQERW3PxpSRpLLJK6Agbm VJBqZH5qRMzpCMX9mxCdGEPzi9GR+SFIKJfMyJx4V0FgTugOPxdpquo1PhRd60RroEfYJy OcsEoPJ/Z3/jsyVV2A6dgiAJEOE5SlQ= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=oWA8Tu83; dmarc=none; spf=none (imf18.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1745378137; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=daVrIe013KCmACuDIJhmGEiRt0jxJ27zL3NMUzVYjoU=; b=A3d/3FS2IDWJyO/cjs3ZWcMmsmB137aQkfsIKTMCHBPQxsNSQ3bGSUSlkynNdkFXi74rPG NleiSCFBGu82URM2F8LnNzkogLvzaGnCf4waW6/rNKkPksgwlnoQYHNhLSuOJDEoPmKJYV fjfITgDelZrF+hFBGrlUiln2vSdT/wA= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=In-Reply-To:Content-Type:MIME-Version: References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=daVrIe013KCmACuDIJhmGEiRt0jxJ27zL3NMUzVYjoU=; b=oWA8Tu834KdxdTQQs8prryXk33 uYLfoD6nD9i7t6UpFr/LQ6pp/Up2uJPAVhMM4NAVDnFPFzFSucJulIRIoRjfpyxB9Zk0X5JF84Aps 3p2BhV5D3Pio/upGu6IQjjG8Gv1ZVdUoRqif4Smi4H+uDkrBskrSxbtKqMnKOwt+RbPl+EmPcdjiP Z27/zZFNZUm7ZuWSTXIbSS9SgaDFMpP4IrraeF6EAhefU2ZTKKrxqLUun+UYO24nmkKXhvxJCE1dJ FLmh9tahne4EhEB+30mVUP8Jr4zJvpfgQGLZOqYXY2uTOwGId6NNU5mc+4qphOnV4KWGn5IlmBf+4 /JhVbE9w==; Received: from willy by casper.infradead.org with local (Exim 4.98.2 #2 (Red Hat Linux)) id 1u7Qa7-00000006z7Q-3Wyp; Wed, 23 Apr 2025 03:15:27 +0000 Date: Wed, 23 Apr 2025 04:15:27 +0100 From: Matthew Wilcox To: nifan.cxl@gmail.com Cc: muchun.song@linux.dev, mcgrof@kernel.org, a.manzanares@samsung.com, dave@stgolabs.net, akpm@linux-foundation.org, david@redhat.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org, Fan Ni , Sidhartha Kumar Subject: Re: [PATCH v2 2/4] mm/hugetlb: Refactor unmap_hugepage_range() to take folio instead of page Message-ID: References: <20250418170834.248318-2-nifan.cxl@gmail.com> <20250418170834.248318-3-nifan.cxl@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20250418170834.248318-3-nifan.cxl@gmail.com> X-Rspamd-Server: rspam03 X-Rspamd-Queue-Id: 60CDF1C0004 X-Stat-Signature: dzza8pnw6qsn5hq3956oe8mq7pscijpx X-Rspam-User: X-HE-Tag: 1745378137-56557 X-HE-Meta: U2FsdGVkX185LOFoKXPPF7ZrWsD990zgKJ3gEIOIUg+pE04esH7MJaf5ClUJVmfWxY8VHa7ngieFe/L/RdgPEoSPmHROteqppJBp709p5/XTsnUjsb+DDY0+Tr+PWubHt0lZR3JsYpAK+Ym3jpyC/KkwtSkACxfJUWRzFfsvpZ/DU4SVvOwzm0vIhplpOpvctf79FvNzFmWW42//uhp7spoP211+UsCQci6EgW5TfDlEXQMbsLeorgltUGNRqxpmCqpD/inof37ETgqdOoEG4MeUivynCoblu69k6jQokRZbBE7za9S4aZ1TScJQCApCGq+110eUAhT94pS9UjpxUm1qWO2f+4dys2Xflru5cXnUgFfoeHcW1O4gKwhHF1PdWAwi7X67FAgULXO+SOraCKTaV+Tec/KEn+1wStoi8/eI8HlpMOsCAH/OAJF/92Bg/XXG2CdYz0IpHwSoHHPBUhXH81I0ca5adQGiY3C6b/eEJPBWkv/IuuJp6+nsubXcjDBOrbTi6hJx/yQRfIoO4Gl6hx9YWxoWkbzJgDhVCMcwdVaoTkvP0wzsCZ1RH8OzBOvvyF4jbY1Q1c4jLjQ3R5Se+AcI6C6hHc+cNa2DsKJvJ+XJsESOVQ21p2kHFhRWQrMt30Q217RAWBxDD0mDW0B35fltcPB0ciiP7YhDVuCQHaQRiaw3gTB2lmuECtDoNsg8yN4uO545gkEKmOsURGfDtbLAYlvTWo4LI8g+jgOIgyP0eUSBZ/pClChettCA3oCjzT6LVVCW4mG7GIeRbr1A+z7536PnltRl72ovP9brQmXjXXbk3fZHLDqJS2NyFuIwIyQOPmsDfzxezvYcqRsbtD9oJRqWe2UlYYrUS9V4m49StIil4x8JUqiBdtc7vqN0zEGTF5KCAnyc7kGa3oOPaph68UwdV2rx3t7Nj93RlEmj3JYxlWxlElYKBs2ZkLHeg2ZdpomKLX8/DQC HpywNAeL KWR1y1/xPi9ao4itAkUS1ZgZPFVaYWIJZb/Rogj0/7425vy0U4lSeV/gR0klV7v0R6XczRq1l7ZUZaj7klRw4atjTkoRMBW6vKLB9OuaqISM4lRP/uceHz1nd9qYH2mnhgmAts0GzGOK5HBfCyobJ9HxVNTQfsUnFzX/MmZHnotV7l0bpiJ3tyO1z9k3MjLh05M7potYBUvIkZQQRyX4F+VOWVo0Ybws4/xGiIk7/DdR2y5zuG8zYtwXaIrk15WrINTSbWLDwQK/eLi/9ObOknnEanBY442mlWyOfkltqa1xbAIwgrIIGFk4sJHUTGKvJIb3a08TYeioJA0s8neVUGu5yFdQVSNLconRH02pcfPuD7lfhUD+EtVPMbQ== 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 Fri, Apr 18, 2025 at 09:57:40AM -0700, nifan.cxl@gmail.com wrote: > void unmap_hugepage_range(struct vm_area_struct *, > - unsigned long, unsigned long, struct page *, > + unsigned long, unsigned long, struct folio *folio, I'm fine with leaving the vma and folio unnamed, but it is a crime against our fellow programmers to leave the two 'unsigned long's unnamed. What the hell are they? > void unmap_hugepage_range(struct vm_area_struct *vma, unsigned long start, > - unsigned long end, struct page *ref_page, > + unsigned long end, struct folio *ref_folio, ... start and end. I'd happily see a patch which only named those parameters and left the struct folio unnamed. > - __unmap_hugepage_range(&tlb, vma, start, end, ref_page, zap_flags); > + __unmap_hugepage_range(&tlb, vma, start, end, > + folio_page(ref_folio, 0), zap_flags); I do not like this. Why should we pass in the first page here? It seems to me that this is just "Now we will call a function which still takes a struct page", and we *SHOULD* use &folio->page here to indicate that we just haven't done the conversion yet.