]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
iommupt: Return ERR_PTR from _table_alloc()
authorJason Gunthorpe <jgg@nvidia.com>
Wed, 17 Dec 2025 17:43:04 +0000 (13:43 -0400)
committerJoerg Roedel <joerg.roedel@amd.com>
Thu, 18 Dec 2025 10:32:10 +0000 (11:32 +0100)
commit7a089c5d35aa307147e78c5cbeeb1352b92790b1
treedb7ac71c509674064470730064ce140bee4e13b8
parent8f0b4cce4481fb22653697cced8d0d04027cb1e8
iommupt: Return ERR_PTR from _table_alloc()

syzkaller noticed that with fault injection a failure inside
iommu_alloc_pages_node_sz() oops's in PT_FEAT_DMA_INCOHERENT because it goes
on to make NULL incoherent. Closer inspection shows the return value has
become confused, the alloc routines on the iommupt side expect ERR_PTR while
iommu_alloc_pages_node_sz() returns NULL.

Error out early to fix both issues.

Fixes: aefd967dab64 ("iommupt: Use the incoherent start/stop functions for PT_FEAT_DMA_INCOHERENT")
Fixes: dcd6a011a8d5 ("iommupt: Add map_pages op")
Fixes: cdb39d918579 ("iommupt: Add the basic structure of the iommu implementation")
Reported-by: syzbot+e06bb7478e687f235ad7@syzkaller.appspotmail.com
Closes: https://lore.kernel.org/all/693a39de.050a0220.4004e.02ce.GAE@google.com/
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
Reviewed-by: Lu Baolu <baolu.lu@linux.intel.com>
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
drivers/iommu/generic_pt/iommu_pt.h