drm/msm/dp: fix NULL pointer deref in msm_dp_snapshot() for unmapped MST streams - #1050
drm/msm/dp: fix NULL pointer deref in msm_dp_snapshot() for unmapped MST streams#1050YongxingMou wants to merge 4 commits into
Conversation
|
Merge Check Failed: No CR Numbers Found Error: No Change Request numbers were found. Please add Change Request numbers to your pull request description in the format CRs-Fixed: 12345 or link GitHub issues that are associated with Change Requests. |
49ba46f to
da47e70
Compare
|
Merge Check Failed: No CR Numbers Found Error: No Change Request numbers were found. Please add Change Request numbers to your pull request description in the format CRs-Fixed: 12345 or link GitHub issues that are associated with Change Requests. |
|
Merge Check Failed: CR Not Eligible for Merge CR 4589764 is not eligible for merge. The parent software image for kernel.qli.2.0 is not development complete. Entity: Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations. |
da47e70 to
b9707e8
Compare
|
Merge Check Failed: CR Not Eligible for Merge CR 4589764 is not eligible for merge. The parent software image for kernel.qli.2.0 is not development complete. Entity: Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations. |
|
Merge Check Failed: CR Not Eligible for Merge CR 4670463 is not eligible for merge. The parent software image for kernel.qli.2.0 is not development complete. Entity: Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations. |
b9707e8 to
5ebdf2b
Compare
|
Merge Check Failed: CR Not Eligible for Merge CR 4670463 is not eligible for merge. The parent software image for kernel.qli.2.0 is not development complete. Entity: Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations. |
5ebdf2b to
5ac8bcf
Compare
|
Merge Check Failed: CR Not Eligible for Merge CR 4670463 is not eligible for merge. The parent software image for kernel.qli.2.0 is not development complete. Entity: Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations. |
5ac8bcf to
60e276b
Compare
|
Merge Check Failed: CR Not Eligible for Merge CR 4670463 is not eligible for merge. The parent software image for kernel.qli.2.0 is not development complete. Entity: Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations. |
60e276b to
2cf09ad
Compare
|
Merge Check Failed: CR Not Eligible for Merge CR 4670463 is not eligible for merge. The parent software image for kernel.qli.2.0 is not development complete. Entity: Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations. |
Test Matrix
|
|
Sign-off missing for reverted changes : |
…MST" This reverts commit cd58926. This is reverted because a newer version of this patch is being introduced. Signed-off-by: Yongxing Mou <yongxing.mou@oss.qualcomm.com>
…gister blocks" This reverts commit c8a9835. This is reverted because a newer version of this patch is being introduced. Signed-off-by: Yongxing Mou <yongxing.mou@oss.qualcomm.com>
…locks Add support for additional pixel register blocks (p1, p2, p3) to enable 4-stream MST pixel clocks. Introduce the helper functions msm_dp_read_pn and msm_dp_write_pn for pixel register programming. All pixel clocks share the same register layout but use different base addresses. Signed-off-by: Abhinav Kumar <quic_abhinavk@quicinc.com> Signed-off-by: Yongxing Mou <yongxing.mou@oss.qualcomm.com> Link: https://lore.kernel.org/all/20260831-msm-dp-mst-v6-5-c91d35d6fb9e@oss.qualcomm.com/
DisplayPort MST uses multiple stream-specific register spaces. Streams 0 and 1 share the primary link register block with different register offsets, while streams 2 and 3 use dedicated MST link register blocks. Add stream-aware register access helpers that translate stream-specific register offsets and route accesses to the appropriate register space based on the stream id. Signed-off-by: Abhinav Kumar <quic_abhinavk@quicinc.com> Signed-off-by: Yongxing Mou <yongxing.mou@oss.qualcomm.com> Link: https://lore.kernel.org/all/20260831-msm-dp-mst-v6-7-c91d35d6fb9e@oss.qualcomm.com/
2cf09ad to
9d49f1b
Compare
Done |
PR #1050 — validate-patchPR: #1050
Final Summary
|
PR #1050 — checker-log-analyzerPR: #1050
Detailed report: Full report
|
Test Matrix
|
|
Crash on Purwa device : |
This error is not coming from the display subsystem and is unrelated to my changes. Was this error already present before this change was merged? |
msm_dp_snapshot() unconditionally dumped pixel_base[0..3]/mst2link_base/
mst3link_base. On single-stream platforms, or when DT doesn't declare
the optional p1/p2/p3 pixel or mst2link/mst3link regions, these stay
NULL, so triggering a snapshot (e.g. DP hang/devcoredump) caused a NULL
pointer dereference.
Fix by explicitly setting pixel_base[i]/mst2link_base/mst3link_base to
NULL when the DT resource is legitimately absent (-EINVAL), and skip
dumping a block in msm_dp_snapshot() when its base is NULL or the
stream's pixel clock isn't enabled (via new msm_dp_ctrl_stream_clks_on()).
CRs-Fixed: 4589764