[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <918b9d1a-25ee-e99f-6821-5ed035f4a2fd@quicinc.com>
Date: Wed, 22 Jun 2022 13:09:48 -0700
From: Kuogee Hsieh <quic_khsieh@...cinc.com>
To: Stephen Boyd <swboyd@...omium.org>, <agross@...nel.org>,
<airlied@...ux.ie>, <bjorn.andersson@...aro.org>,
<daniel@...ll.ch>, <dianders@...omium.org>,
<dmitry.baryshkov@...aro.org>, <robdclark@...il.com>,
<sean@...rly.run>, <vkoul@...nel.org>
CC: <quic_abhinavk@...cinc.com>, <quic_aravindh@...cinc.com>,
<quic_sbillaka@...cinc.com>, <freedreno@...ts.freedesktop.org>,
<dri-devel@...ts.freedesktop.org>, <linux-arm-msm@...r.kernel.org>,
<linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v2] drm/msm/dp: reset drm_dev to NULL at
dp_display_unbind()
On 6/22/2022 1:06 PM, Stephen Boyd wrote:
> Quoting Kuogee Hsieh (2022-06-22 12:55:31)
>> During msm initialize phase, dp_display_unbind() will be called to undo
>> initializations had been done by dp_display_bind() previously if there is
>> error happen at msm_drm_bind. Under this kind of circumstance, drm_device
>> may not be populated completed which causes system crash at drm_dev_dbg().
>> This patch reset drm_dev to NULL so that following drm_dev_dbg() will not
>> refer to any internal fields of drm_device to prevent system from crashing.
>> Below are panic stack trace,
>>
>> [ 53.584904] Unable to handle kernel paging request at virtual address 0000000070018001
>> .
>> [ 53.702212] Hardware name: Qualcomm Technologies, Inc. sc7280 CRD platform (rev5+) (DT)
>> [ 53.710445] pstate: 20400009 (nzCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
>> [ 53.717596] pc : string_nocheck+0x1c/0x64
>> [ 53.721738] lr : string+0x54/0x60
>> [ 53.725162] sp : ffffffc013d6b650
>> [ 53.728590] pmr_save: 000000e0
>> [ 53.731743] x29: ffffffc013d6b650 x28: 0000000000000002 x27: 0000000000ffffff
>> [ 53.739083] x26: ffffffc013d6b710 x25: ffffffd07a066ae0 x24: ffffffd07a419f97
>> [ 53.746420] x23: ffffffd07a419f99 x22: ffffff81fef360d4 x21: ffffff81fef364d4
>> [ 53.753760] x20: ffffffc013d6b6f8 x19: ffffffd07a06683c x18: 0000000000000000
>> [ 53.761093] x17: 4020386678302f30 x16: 00000000000000b0 x15: ffffffd0797523c8
>> [ 53.768429] x14: 0000000000000004 x13: ffff0000ffffff00 x12: ffffffd07a066b2c
>> [ 53.775780] x11: 0000000000000000 x10: 000000000000013c x9 : 0000000000000000
>> [ 53.783117] x8 : ffffff81fef364d4 x7 : 0000000000000000 x6 : 0000000000000000
>> [ 53.790445] x5 : 0000000000000000 x4 : ffff0a00ffffff04 x3 : ffff0a00ffffff04
>> [ 53.797783] x2 : 0000000070018001 x1 : ffffffffffffffff x0 : ffffff81fef360d4
>> [ 53.805136] Call trace:
>> [ 53.807667] string_nocheck+0x1c/0x64
>> [ 53.811439] string+0x54/0x60
>> [ 53.814498] vsnprintf+0x374/0x53c
>> [ 53.818009] pointer+0x3dc/0x40c
>> [ 53.821340] vsnprintf+0x398/0x53c
>> [ 53.824854] vscnprintf+0x3c/0x88
>> [ 53.828274] __trace_array_vprintk+0xcc/0x2d4
>> [ 53.832768] trace_array_printk+0x8c/0xb4
>> [ 53.836900] drm_trace_printf+0x74/0x9c
>> [ 53.840875] drm_dev_dbg+0xfc/0x1b8
>> [ 53.844480] dp_pm_suspend+0x70/0xf8
>> [ 53.848164] dpm_run_callback+0x60/0x1a0
>> [ 53.852222] __device_suspend+0x304/0x3f4
>> [ 53.856363] dpm_suspend+0xf8/0x3a8
>> [ 53.859959] dpm_suspend_start+0x8c/0xc0
>>
>> Fixes: a65c95ff88f2 ("drm/msm/dp: stop event kernel thread when DP unbind")
> Commit doesn't exist. I guess it's
>
> Fixes: 570d3e5d28db ("drm/msm/dp: stop event kernel thread when DP unbind")
it is my bad, i keep using our internal commit id.
Will be careful next time.
Powered by blists - more mailing lists