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 E3690C4167B for ; Wed, 13 Dec 2023 07:22:02 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5E6B76B0287; Wed, 13 Dec 2023 02:22:02 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 597356B028A; Wed, 13 Dec 2023 02:22:02 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 45EB96B028B; Wed, 13 Dec 2023 02:22:02 -0500 (EST) 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 383D96B0287 for ; Wed, 13 Dec 2023 02:22:02 -0500 (EST) Received: from smtpin22.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 08AB8808DB for ; Wed, 13 Dec 2023 07:22:02 +0000 (UTC) X-FDA: 81560950884.22.1921677 Received: from mail-ej1-f41.google.com (mail-ej1-f41.google.com [209.85.218.41]) by imf01.hostedemail.com (Postfix) with ESMTP id 170E440017 for ; Wed, 13 Dec 2023 07:21:59 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=linaro.org header.s=google header.b=m0L6KOip; spf=pass (imf01.hostedemail.com: domain of dan.carpenter@linaro.org designates 209.85.218.41 as permitted sender) smtp.mailfrom=dan.carpenter@linaro.org; dmarc=pass (policy=none) header.from=linaro.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702452120; 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=RBgfcgQyAM0ZH2e9t97pZtF0A7py8/HaZt62MojergQ=; b=W79zlHtHJtitz8SsbSmhjAzuhSsMpZ7axvNAJutbE7kFITJf4sAjXi+HfciJJrNllVrx3I jTGBcFuajTlPNSfehr40kBqYDphY7RurWENZmAs6rDR0peKvmbNwg5sYuv2M/ZTMIKXAfl zGCDmD3oZQEY2mlRRdUUByCfEuectnI= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702452120; a=rsa-sha256; cv=none; b=KDHwm+fbKisDvk7O0fWqfRDjF4S18oCCsHBuX97fSz+X4JNpHpeJWgX5SA798f3o3rqTXf l4QWX0mwWiw4s2Bh1yi185OkkKqdF4vmO880Ai9UI4PfCkWkkHddJtb9f9RPNfhMYSw/Gz lOFPYBcjN08cg6CEWcQXLEd/YRU5D18= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=pass header.d=linaro.org header.s=google header.b=m0L6KOip; spf=pass (imf01.hostedemail.com: domain of dan.carpenter@linaro.org designates 209.85.218.41 as permitted sender) smtp.mailfrom=dan.carpenter@linaro.org; dmarc=pass (policy=none) header.from=linaro.org Received: by mail-ej1-f41.google.com with SMTP id a640c23a62f3a-a1da1017a09so785942466b.3 for ; Tue, 12 Dec 2023 23:21:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1702452116; x=1703056916; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=RBgfcgQyAM0ZH2e9t97pZtF0A7py8/HaZt62MojergQ=; b=m0L6KOipqKXXZpiZImpTKMBBZEzji66SKloCoC1i/pjyl7t/J5afDT2PH21kRoXTg6 23meRTvjGTw2Iyf2Wf48R0abBvN0fRxbg0ZCjxkHDEUYhSNQz1pfU52o0Gbzqs3o8IX8 hYjhqY+4foOjEKadPDVm5yIUBAUBt/taGw+0hLFYaUOTznEF8F3U+f2edpnjSDucV6h2 VYASLrfAtvcEGarpTuXERJUdzjN4qOR7GFLY2ocbUPhK76ihxcW+/T4FlRY+Ceiwtym0 sOAj7hyPPY3bpys0yt+FajFgurt7xMBK2bmu97KxZfzPKfDG/yLzcyf3u9D0p/LjjnIW Qj5w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1702452116; x=1703056916; h=in-reply-to: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=RBgfcgQyAM0ZH2e9t97pZtF0A7py8/HaZt62MojergQ=; b=OfJJlecjnCg0gPWyrVOBGCRnv0kw1Qbv3h0Z+e5ZvB0MycrR7kvTy8YOOVey59EzPT Li+LEw4nCqx13oUgR/WFYCTdF72JFieOBZ0hgAoEANNcK0qdR5tKNKQANAboeyWvQ4ze uBwQk3uDFkLlmPC12/faSYm8BrYwNDRVmZPvfE3f9uy1JuKjuSnE0ZDyKlaldsZqdXN9 9PQnR1WRDmNpqT3i9IZtL77/0fBSTZ5uKQgtW2MWhJwbldKIh5uNPkoiyPLc/YHTyRO1 p09d3DuHwm3k3RcCBZmJGnKM9YWGDDvpjblLvFfaE74wjYhLH0pPBod3pu6O8FOeY9p3 ciDw== X-Gm-Message-State: AOJu0YzFqkALcSDezcNttMuJayHcaWSg9dgguQG8yeUujP9joz0DImdM cMhiR/08JX3AvCgLgeBgXxrEwQ== X-Google-Smtp-Source: AGHT+IH1OjwtFoJO2AZU9jEj+yASotY0eU0/XYtVgOtVA7CV5IX+jiPRAVK4pDGYJ0jZ4AjQCvHHPg== X-Received: by 2002:a17:906:1359:b0:a04:a274:2a0a with SMTP id x25-20020a170906135900b00a04a2742a0amr4337206ejb.73.1702452116628; Tue, 12 Dec 2023 23:21:56 -0800 (PST) Received: from localhost (h3220.n1.ips.mtn.co.ug. [41.210.178.32]) by smtp.gmail.com with ESMTPSA id si10-20020a170906ceca00b00a1e377ea789sm7187848ejb.203.2023.12.12.23.21.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 12 Dec 2023 23:21:56 -0800 (PST) Date: Wed, 13 Dec 2023 10:21:52 +0300 From: Dan Carpenter To: Ryan Roberts Cc: Andrew Morton , Matthew Wilcox , Yin Fengwei , David Hildenbrand , Yu Zhao , Catalin Marinas , Anshuman Khandual , Yang Shi , "Huang, Ying" , Zi Yan , Luis Chamberlain , Itaru Kitayama , "Kirill A. Shutemov" , John Hubbard , David Rientjes , Vlastimil Babka , Hugh Dickins , Kefeng Wang , Barry Song <21cnbao@gmail.com>, Alistair Popple , linux-mm@kvack.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v9 04/10] mm: thp: Support allocation of anonymous multi-size THP Message-ID: References: <20231207161211.2374093-1-ryan.roberts@arm.com> <20231207161211.2374093-5-ryan.roberts@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20231207161211.2374093-5-ryan.roberts@arm.com> X-Rspamd-Queue-Id: 170E440017 X-Rspam-User: X-Stat-Signature: jwd8ofk7qswq9fb5mdmfeqdifcgc87bp X-Rspamd-Server: rspam03 X-HE-Tag: 1702452119-133824 X-HE-Meta: U2FsdGVkX18KXpt1axnfqpEpveL7Bh65kyYpweLmJuobOSz3OnTUyGPiBqDujMgBjErjObb5i+MhAQhySAabmpzZ8bsVOV2uAv/SV3BG8NYrjKk045j5/PnthYHrVoBNESmUz7Ph1ShmwUyhXQ7f7xVOrztc38Q/aB03ZADVxuNAS1XNxveCIZL3Zb/YLwSyUsEzEuZm+8C+M/UJx5PVwtbp8zgaH1Pm7TPxvRcyBwFXXl265oB0ZMLPX34ZLL+swpJ4Nd+GL80IAoRETZm81IjThLp9/dRQbXJlYOd4K0vknh6VuzuAqNixpgr2q+VkHEfdAl3TO3/jstZO4o99gKFgGyFOexZnrP4DY8q36J7uFWAQV4/DUEvw7g/CDmNpvJfzdL+LvrDiCmbllLbi+Kpr25smBlxnWmwHRZV3+OWohQ6xFLXsKrHRR0C53AB0ESXgG3J1iE/JWYOXD/mQ+KPjMsCWwG7Hm3zkWhNy37CMEarlCpqnI5eacendcgzCV+1o6rWRK5qo7u3jSV9ADE+bh6POKDIihblz1O0Gs0ft+p7fgxdYK65lMv/JKLbWCvbKlJOMqg2tlruoarFVj2NWSs9nRWIorDXiuPQ2l2deWN3S52JEGkMx5dpFZEzGMh0UsTeXobIg2kXD4eJDQ51qP7LCuKS3hj+4ZYDrztFvY6qnQKXj2jrunoAGZNaAcNKDr2pbPNtT5c/OeSNSutCPuldBNwQ1QwsAIcxSddc1tl+xNoheaITzIYdOYas/FaQAlcnDzsTADIBH0Nv6S5bmrmroVuixspO7nHZTtsG2QJP6AV65TanrBAlF9MPYILAFsGaqAqvA13CSPIo3/UEsfLX5cOUp2wxdO/uOFRcEpv8NTI6qNag9rg1mRAWxyPSUlaeqDHeOjIlDCACNO9MLpy+6Mcf6xOLZiYamBOnM0eVMKHY+W6cQsrr8fQ29cVYeBBvuElfM4EExo1Z 65BHR9fD Lros6qBXlkPcJ2W/59W9QRo/BtKOkQwRLYwAk1rnaHUJo3lJm6HYCn2VY0CSwEpdmYUnsGiP5iehQMv25b/PCv2uEBr4HaBi9z8ZC0NwkRY96ZEJADxmJZffGAcFfLV735NMflKyk/1ibubLezyQaS8lZ6Rm1c8x8afg5E+pgAArJqHNC+TYCyr6m+sOCEZVZfbyai5ia/u6vNcaXMeCtx/AH+ya9240G/byFX6xYIBvyVdL+oefZmrhMl3njP+feQfgKgmc1cYKbYlsNmzOAtVzRcLjPAMKa6oqbOlckRtWGJYxKgcLiuWTxLrGoVHKwgLykRxFpFZeAuU5dKWILA5vN7Ce4kS3vq4D3nNy59lCeuIOU2UzHbww9pdRKuRAcJv1NzM2jTPFoqXMoXmjbrrwp72vpdS8XWxkElplQXQuvsIoIbwUeWApFiA== 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 Thu, Dec 07, 2023 at 04:12:05PM +0000, Ryan Roberts wrote: > @@ -4176,10 +4260,15 @@ static vm_fault_t do_anonymous_page(struct vm_fault *vmf) > /* Allocate our own private page. */ > if (unlikely(anon_vma_prepare(vma))) > goto oom; > - folio = vma_alloc_zeroed_movable_folio(vma, vmf->address); > + folio = alloc_anon_folio(vmf); > + if (IS_ERR(folio)) > + return 0; > if (!folio) > goto oom; Returning zero is weird. I think it should be a vm_fault_t code. This mixing of error pointers and NULL is going to cause problems. Normally when we have a mix of error pointers and NULL then the NULL is not an error but instead means that the feature has been deliberately turned off. I'm unable to figure out what the meaning is here. It should return one or the other, or if it's a mix then add a giant comment explaining what they mean. regards, dan carpenter > > + nr_pages = folio_nr_pages(folio); > + addr = ALIGN_DOWN(vmf->address, nr_pages * PAGE_SIZE); > + > if (mem_cgroup_charge(folio, vma->vm_mm, GFP_KERNEL)) > goto oom_free_page; > folio_throttle_swaprate(folio, GFP_KERNEL);