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 78CF3C4167B for ; Tue, 28 Nov 2023 22:47:12 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 044708D0007; Tue, 28 Nov 2023 17:47:12 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id F36888D0001; Tue, 28 Nov 2023 17:47:11 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E4C618D0007; Tue, 28 Nov 2023 17:47:11 -0500 (EST) 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 D67468D0001 for ; Tue, 28 Nov 2023 17:47:11 -0500 (EST) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id A8B1F1C03A3 for ; Tue, 28 Nov 2023 22:47:11 +0000 (UTC) X-FDA: 81508850262.11.F6E8337 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by imf26.hostedemail.com (Postfix) with ESMTP id BF32E140020 for ; Tue, 28 Nov 2023 22:47:09 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf26.hostedemail.com: domain of robin.murphy@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=robin.murphy@arm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1701211630; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=eTpQXSW2ryc7CXYUjXrPoyAieOOxmLQ1VwKzCDULe7M=; b=Lt4MqAb2IOjutgZMLPRAd72JI07xlS9Z7dZKdf5SnlJ0XBE8i5Sd3f+f13A+biUTn3FRIU x9Yzlu81YjsPb/Bip0LzZbq2fNs42lX3bYYLMJYGj/kf7ENRtoXSYl8h8j+VbDipaP1vcv ou8WTnfSWkSH1ouQq36rmv6Nomwa5aY= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf26.hostedemail.com: domain of robin.murphy@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=robin.murphy@arm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1701211630; a=rsa-sha256; cv=none; b=4Mad5tJJJtFsKk0F9mROv9XS8F7qVPAL9kF89P5H1Y1oEHsMto3nqsqKAwxqyTrxQvpJEl kD1p7nBUVnc3KA0rmQJ/KE451yuHy2nM5un30wRFnejPL6p73bMjdk1zzQRN4QBTOd+GOK uPr/rPnCCeRvBbbmmcz+267lFmBxYQ8= Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 1C1F11FB; Tue, 28 Nov 2023 14:47:56 -0800 (PST) Received: from [10.57.71.132] (unknown [10.57.71.132]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id C40BF3F6C4; Tue, 28 Nov 2023 14:47:00 -0800 (PST) Message-ID: <8e1961c9-0359-4450-82d8-2b2fcb2c5557@arm.com> Date: Tue, 28 Nov 2023 22:46:59 +0000 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 05/16] iommu/io-pgtable-arm-v7s: use page allocation function provided by iommu-pages.h Content-Language: en-GB To: Pasha Tatashin , akpm@linux-foundation.org, alex.williamson@redhat.com, alim.akhtar@samsung.com, alyssa@rosenzweig.io, asahi@lists.linux.dev, baolu.lu@linux.intel.com, bhelgaas@google.com, cgroups@vger.kernel.org, corbet@lwn.net, david@redhat.com, dwmw2@infradead.org, hannes@cmpxchg.org, heiko@sntech.de, iommu@lists.linux.dev, jasowang@redhat.com, jernej.skrabec@gmail.com, jgg@ziepe.ca, jonathanh@nvidia.com, joro@8bytes.org, kevin.tian@intel.com, krzysztof.kozlowski@linaro.org, kvm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-doc@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-rockchip@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-sunxi@lists.linux.dev, linux-tegra@vger.kernel.org, lizefan.x@bytedance.com, marcan@marcan.st, mhiramat@kernel.org, mst@redhat.com, m.szyprowski@samsung.com, netdev@vger.kernel.org, paulmck@kernel.org, rdunlap@infradead.org, samuel@sholland.org, suravee.suthikulpanit@amd.com, sven@svenpeter.dev, thierry.reding@gmail.com, tj@kernel.org, tomas.mudrunka@gmail.com, vdumpa@nvidia.com, virtualization@lists.linux.dev, wens@csie.org, will@kernel.org, yu-cheng.yu@intel.com References: <20231128204938.1453583-1-pasha.tatashin@soleen.com> <20231128204938.1453583-6-pasha.tatashin@soleen.com> From: Robin Murphy In-Reply-To: <20231128204938.1453583-6-pasha.tatashin@soleen.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: BF32E140020 X-Stat-Signature: 55c1amdrftiw1nxskn9zncghwt3wpzdi X-Rspam-User: X-HE-Tag: 1701211629-210845 X-HE-Meta: U2FsdGVkX1/dPNMGu2fC9P1QoW/GPquc7iaQVpadZ5D+ge+KSBTCIwQmOBWizNrk0lGLY+vyuhUlwVQKCpSgphQETGoPpszhpRMAyJu+R3DDHR+yMmlEfEXj+dy0kGQRaimKxytOq48rtQx20nSMqplsB5GTMEsMeVWiW9Z/kV3vj/Kz8hkg8LglMI2pYCPCvC47hpEqxUcKGcH0pIHidKbyAwM0JfPa/oAz3IiTeEoTDH0q04+82rv+IEVkiM1xxtjY+5CKGX8GBibE0FkIVf+5iEo3D/EqzaTJGDh+Jf/SIN0WLPPAiy8R7QMlk/588H1tur2g9P1KH9pKAtpbOOtyva2qJQyyrEIh6K2iaZMsz1vAxKb1SJ1uqhfPd54XB7Eh9fhHEcynWn9/QPosEdQ5lpRVxuUNdrvlRTFCtVPkZo910ef47Fh6llMj1hSeBnZS4bT5XRw3YMfE7nTtLc58HEKjHEQzZmMSEl+9vMVDKK9oj77SLaQd7VogYfHSfftl8vjyKPV/I5mZ8eclHjad3ha0lP0bIEzZC+5vI98w3ANzgMNXM0u/0pqvl6q7TlZSN6f3vMhZLxyAAU3EGb3Y11iWl29b89vOMnbQp/BDoKtb6//mrKZ85VK5pF1JzFpZd4YZ2CC6yJzU8ZEpuDMrDqosb8HvHp3SVeA0I7JcttDlgIJeX1B3g6k02atiI2/PHwWb+4ScXQCMuj0MsdWQ3t6jrRgE7EziJkP3HhatTpqhRpZNUOauhSMoP12/mLkZwspJKl3omy+BKgfgsRhsa09Viz7HSHyZXjt8F/ozu7DjBJ0eIcergNCxDa0xrEFTEl7Ugtfqnw/VG9izoqtAMYf71sMQ0yFeNcvz1CIzNJal4QxHumHcFKjBgksSBM1fsyYEAJ+lxnzICgZlmOt8CCsT3C4WySrAAfYkfdl6iilDreRipMaz/EJy4HjpZs7GfycrYASyg2n+/Mw udBhDcTk NbfBUgEbydMYm3Gbk+4PL13nhwuswPeNZZVlfGLpcRSFoUxcwENoJNGctM0JuQP/FNO3nzwVPecfW+bfBvwuDqwtGp8XsUis1gY4YlFe9ys9RCNWHBjfkLS+N/UL7h4fiDBedEE+OCR904FTE3vO/y66D1pCjZ8J8SIa4TKxJthXu3zSs5LcvkEcP/VOqRAoQY8GVej4Qa6NdQhZGmh9VaQCxFmCIici3bW8z+IGfNlUmYCaQYy3V3iGycZZ32wjuGWbl9nwtqvvbT7dtqSe+5HBZIw== 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 2023-11-28 8:49 pm, Pasha Tatashin wrote: > Convert iommu/io-pgtable-arm-v7s.c to use the new page allocation functions > provided in iommu-pages.h. > > Signed-off-by: Pasha Tatashin > --- > drivers/iommu/io-pgtable-arm-v7s.c | 9 ++++++--- > 1 file changed, 6 insertions(+), 3 deletions(-) > > diff --git a/drivers/iommu/io-pgtable-arm-v7s.c b/drivers/iommu/io-pgtable-arm-v7s.c > index 75f244a3e12d..3d494ca1f671 100644 > --- a/drivers/iommu/io-pgtable-arm-v7s.c > +++ b/drivers/iommu/io-pgtable-arm-v7s.c > @@ -34,6 +34,7 @@ > #include > > #include > +#include "iommu-pages.h" > > /* Struct accessors */ > #define io_pgtable_to_data(x) \ > @@ -255,7 +256,7 @@ static void *__arm_v7s_alloc_table(int lvl, gfp_t gfp, > GFP_KERNEL : ARM_V7S_TABLE_GFP_DMA; > > if (lvl == 1) > - table = (void *)__get_free_pages(gfp_l1 | __GFP_ZERO, get_order(size)); > + table = iommu_alloc_pages(gfp_l1, get_order(size)); > else if (lvl == 2) > table = kmem_cache_zalloc(data->l2_tables, gfp); Is it really meaningful to account the L1 table which is always allocated upon initial creation, yet not the L2 tables which are allocated in use? Thanks, Robin. > @@ -283,6 +284,7 @@ static void *__arm_v7s_alloc_table(int lvl, gfp_t gfp, > } > if (lvl == 2) > kmemleak_ignore(table); > + > return table; > > out_unmap: > @@ -290,7 +292,7 @@ static void *__arm_v7s_alloc_table(int lvl, gfp_t gfp, > dma_unmap_single(dev, dma, size, DMA_TO_DEVICE); > out_free: > if (lvl == 1) > - free_pages((unsigned long)table, get_order(size)); > + iommu_free_pages(table, get_order(size)); > else > kmem_cache_free(data->l2_tables, table); > return NULL; > @@ -306,8 +308,9 @@ static void __arm_v7s_free_table(void *table, int lvl, > if (!cfg->coherent_walk) > dma_unmap_single(dev, __arm_v7s_dma_addr(table), size, > DMA_TO_DEVICE); > + > if (lvl == 1) > - free_pages((unsigned long)table, get_order(size)); > + iommu_free_pages(table, get_order(size)); > else > kmem_cache_free(data->l2_tables, table); > }