Hi Leo, I am not sure - I have only personally tested the latest Ubuntu kernel based on 7.0.0 (7.0.0-27.27). Could you link me to the relevant commits / mailing list entries? I can read through them and will try to give it a test soon if I have time.
-Mitchell Augustin On Fri, Aug 7, 2026 at 9:59 AM Leo Li <[email protected]> wrote: > > > > On 2026-08-06 10:34, [email protected] wrote: > > [Some people who received this message don't often get email from > > [email protected]. Learn why this is important at > > https://aka.ms/LearnAboutSenderIdentification ] > > > > From: Mitchell Augustin <[email protected]> > > > > Issue: https://gitlab.freedesktop.org/drm/amd/-/work_items/5394 > > Ubuntu BugLink: https://bugs.launchpad.net/bugs/2162904 > > > > This commit disables panel self-refresh when more than one display is > > active to eliminate a common hang and system crash that happens > > frequently on some laptops, evidently due to race conditions between > > the DMCUB, amdgpu module, and possibly other components which are > > exacerbated when more than one display is active. > > > > To my knowledge, a fix for the underlying failure condition is not > > available upstream, so given how disruptive this is for impacted users, > > I propose disabling this feature under this condition until it is fixed. > > The main downside of disabling PSR is that it > > will increase power consumption, but this should be barely noticeable to > > end users, since PSR will remain enabled on laptops unconnected to > > external monitors, and since laptops connected to external monitors are > > likely typically also connected to power (and thus less concerned with > > the energy savings afforded by PSR). > > > > Signed-off-by: Mitchell Augustin <[email protected]> > > > > Hi Mitchell, > > Do you know if this issue still occurs on 7.2-rc6? It includes a bunch of > fixes targeting flip-done timeout issues that involved PSR. > > Thanks, > Leo > > > --- > > drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c | 3 ++- > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c > > b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c > > index 5d2715f78314..272f195b8c28 100644 > > --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c > > +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c > > @@ -152,7 +152,8 @@ void amdgpu_dm_crtc_set_panel_sr_feature( > > struct amdgpu_dm_connector *aconn = > > (struct amdgpu_dm_connector *) > > stream->dm_stream_context; > > > > - if (!aconn->disallow_edp_enter_psr) { > > + /* Do not enter PSR if multiple displays are active to > > prevent DMCUB hangs */ > > + if (!aconn->disallow_edp_enter_psr && > > dm->dc->current_state->stream_count == 1) { > > amdgpu_dm_psr_enable(stream); > > if (dm->idle_workqueue && > > (dm->dc->config.disable_ips == DMUB_IPS_ENABLE) > > && > > -- > > 2.43.0 > > > -- Mitchell Augustin Software Engineer / Tech Lead - Ubuntu on NVIDIA DGX Email:[email protected] [email protected] Location:United States of America (Central Time) canonical.com ubuntu.com
