mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-11 07:03:09 -04:00
msm: smmu: Unregister SMMU fault handler before cleanup
IOMMU fault handler can be invoked post SMMU destroy which can lead to use-after-free issue. Unregister the SMMU fault handler before freeing SMMU context and unregistering the platform device. Change-Id: I1cddd4a381f16d650258850a3d012d380fbe5ef8 Signed-off-by: Harini Manikumar <hmanikum@qti.qualcomm.com> Signed-off-by: Karthik Veeranki <quic_kveerank@quicinc.com>
This commit is contained in:
parent
e5fdc7822b
commit
df717747fd
1 changed files with 5 additions and 0 deletions
|
|
@ -1,4 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
|
||||
* Copyright (c) 2015-2020, The Linux Foundation. All rights reserved.
|
||||
* Copyright (C) 2013 Red Hat
|
||||
* Author: Rob Clark <robdclark@gmail.com>
|
||||
|
|
@ -211,6 +212,10 @@ static void msm_smmu_destroy(struct msm_mmu *mmu)
|
|||
{
|
||||
struct msm_smmu *smmu = to_msm_smmu(mmu);
|
||||
struct platform_device *pdev = to_platform_device(smmu->client_dev);
|
||||
struct iommu_domain *domain = iommu_get_domain_for_dev(smmu->client_dev);
|
||||
|
||||
if (domain)
|
||||
iommu_set_fault_handler(domain, NULL, NULL);
|
||||
|
||||
if (smmu->client_dev)
|
||||
platform_device_unregister(pdev);
|
||||
|
|
|
|||
Loading…
Reference in a new issue