mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-05-24 10:39:52 +00:00
![]() The MDSS device is created before the MSM driver attempts to bind the sub components. If any of the components return -EPROBE_DEFER the MDSS device is destroyed and tried again later. If this happens the dpu_mdss_isr interrupt created from the DPU MDSS is not freed when the MDSS device is destroyed and has a risk of triggering later and hitting a fault by accessing a mmio region that no longer exists. Even if the interrupt isn't triggered by accident when the device attempts to reprobe it would error out when it tries to re-register the interrupt so unconditionally removing it in the destroy is the right move. Switch the device managed dpu_mdss_isr to be unmanaged and add a free_irq() in the mdss destroy function. Reviewed-by: Sean Paul <seanpaul@chromium.org> Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org> Signed-off-by: Sean Paul <seanpaul@chromium.org> Signed-off-by: Rob Clark <robdclark@gmail.com> |
||
---|---|---|
.. | ||
adreno | ||
disp | ||
dsi | ||
edp | ||
hdmi | ||
Kconfig | ||
Makefile | ||
msm_atomic.c | ||
msm_debugfs.c | ||
msm_debugfs.h | ||
msm_drv.c | ||
msm_drv.h | ||
msm_fb.c | ||
msm_fbdev.c | ||
msm_fence.c | ||
msm_fence.h | ||
msm_gem.c | ||
msm_gem.h | ||
msm_gem_prime.c | ||
msm_gem_shrinker.c | ||
msm_gem_submit.c | ||
msm_gem_vma.c | ||
msm_gpu.c | ||
msm_gpu.h | ||
msm_iommu.c | ||
msm_kms.h | ||
msm_mmu.h | ||
msm_perf.c | ||
msm_rd.c | ||
msm_ringbuffer.c | ||
msm_ringbuffer.h | ||
msm_submitqueue.c | ||
NOTES |