diff options
author | Maarten Lankhorst <maarten.lankhorst@linux.intel.com> | 2022-12-22 23:18:04 +0300 |
---|---|---|
committer | Jani Nikula <jani.nikula@intel.com> | 2023-06-02 20:41:44 +0300 |
commit | f917130f19fe62c6688cc95ebebfafee3e005958 (patch) | |
tree | 3addf0f2066a5c030f5a7813f539efb49e084224 | |
parent | c7b5abd3e030718b6666cdf766f8905b006a9b1b (diff) | |
download | linux-f917130f19fe62c6688cc95ebebfafee3e005958.tar.xz |
drm/i915: Flush power delayed put when connector init failed
When intel_dp_init_connector fails, some power wells used in dp aux
communication may not be completely disabled yet. This may result in a
null pointer dereference when icl_aux_pw_to_phy() is called from
icl_combo_phy_aux_power_well_disable() after the encoder and connector
are already freed.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Imre Deak <imre.deak@intel.com>
Cc: Jani Nikula <jani.nikula@intel.com>
Acked-by: Imre Deak <imre.deak@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20221222201804.1380963-1-maarten.lankhorst@linux.intel.com
-rw-r--r-- | drivers/gpu/drm/i915/display/intel_dp.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c index 8445a37d9d01..f4192fda1a76 100644 --- a/drivers/gpu/drm/i915/display/intel_dp.c +++ b/drivers/gpu/drm/i915/display/intel_dp.c @@ -5719,6 +5719,7 @@ intel_dp_init_connector(struct intel_digital_port *dig_port, return true; fail: + intel_display_power_flush_work(dev_priv); drm_connector_cleanup(connector); return false; |