diff options
| author | Jason Gunthorpe <[email protected]> | 2025-04-08 16:54:09 +0000 |
|---|---|---|
| committer | Joerg Roedel <[email protected]> | 2025-04-17 14:22:51 +0000 |
| commit | 5087f663c21e8ac2af7bd178a9b8da50ff7752ac (patch) | |
| tree | b650d88caa4eb5788a5d411f9c4fb0d771bbd5b2 /drivers/iommu/amd/io_pgtable.c | |
| parent | iommu/pages: Remove iommu_alloc_page/pages() (diff) | |
| download | kernel-5087f663c21e8ac2af7bd178a9b8da50ff7752ac.tar.gz kernel-5087f663c21e8ac2af7bd178a9b8da50ff7752ac.zip | |
iommu/pages: Remove iommu_alloc_page_node()
Use iommu_alloc_pages_node_sz() instead.
AMD and Intel are both using 4K pages for these structures since those
drivers only work on 4K PAGE_SIZE.
riscv is also spec'd to use SZ_4K.
Reviewed-by: Lu Baolu <[email protected]>
Tested-by: Alejandro Jimenez <[email protected]>
Signed-off-by: Jason Gunthorpe <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Joerg Roedel <[email protected]>
Diffstat (limited to 'drivers/iommu/amd/io_pgtable.c')
| -rw-r--r-- | drivers/iommu/amd/io_pgtable.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/iommu/amd/io_pgtable.c b/drivers/iommu/amd/io_pgtable.c index 97ddadbcfb54..4d308c071134 100644 --- a/drivers/iommu/amd/io_pgtable.c +++ b/drivers/iommu/amd/io_pgtable.c @@ -114,7 +114,7 @@ static bool increase_address_space(struct amd_io_pgtable *pgtable, bool ret = true; u64 *pte; - pte = iommu_alloc_page_node(cfg->amd.nid, gfp); + pte = iommu_alloc_pages_node_sz(cfg->amd.nid, gfp, SZ_4K); if (!pte) return false; @@ -206,7 +206,8 @@ static u64 *alloc_pte(struct amd_io_pgtable *pgtable, if (!IOMMU_PTE_PRESENT(__pte) || pte_level == PAGE_MODE_NONE) { - page = iommu_alloc_page_node(cfg->amd.nid, gfp); + page = iommu_alloc_pages_node_sz(cfg->amd.nid, gfp, + SZ_4K); if (!page) return NULL; @@ -535,7 +536,8 @@ static struct io_pgtable *v1_alloc_pgtable(struct io_pgtable_cfg *cfg, void *coo { struct amd_io_pgtable *pgtable = io_pgtable_cfg_to_data(cfg); - pgtable->root = iommu_alloc_page_node(cfg->amd.nid, GFP_KERNEL); + pgtable->root = + iommu_alloc_pages_node_sz(cfg->amd.nid, GFP_KERNEL, SZ_4K); if (!pgtable->root) return NULL; pgtable->mode = PAGE_MODE_3_LEVEL; |
