From f3a739ec0bbae75f6e96c744705ba65752c7e68f Mon Sep 17 00:00:00 2001 From: Zhangfei Gao Date: Thu, 2 Feb 2023 08:18:57 +0000 Subject: [PATCH] iommufd: iommufd_hw_pagetable_dma_fault_destroy check header If guest do not have device buildin, iommufd_hwpt_alloc cmd->eventfd=-1 iommufd_hw_pagetable_dma_fault_init will not be called s1->fault_pages is NULL iommufd_hw_pagetable_dma_fault_destroy fail with NULL pointer Signed-off-by: Zhangfei Gao --- drivers/iommu/iommufd/hw_pagetable.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/iommu/iommufd/hw_pagetable.c b/drivers/iommu/iommufd/hw_pagetable.c index eca8e3ae98ddb..ba81f3f756402 100644 --- a/drivers/iommu/iommufd/hw_pagetable.c +++ b/drivers/iommu/iommufd/hw_pagetable.c @@ -25,6 +25,9 @@ iommufd_hw_pagetable_dma_fault_destroy(struct iommufd_hw_pagetable *hwpt) struct iommufd_stage1_dma_fault *header = (struct iommufd_stage1_dma_fault *)s1->fault_pages; + if (!header) + return; + WARN_ON(header->tail != header->head); iommufd_hw_pagetable_eventfd_destroy(&s1->trigger); kfree(s1->fault_pages);