* X freezes for a second or every now and then when lid closed
@ 2018-10-27 7:38 Joel Fernandes
[not found] ` <20181027073856.GA113061-igYJUEsKnA/Ht/MElyovVYaSKrA+ACpX0E9HWUfgJXw@public.gmane.org>
0 siblings, 1 reply; 7+ messages in thread
From: Joel Fernandes @ 2018-10-27 7:38 UTC (permalink / raw)
To: intel-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW,
xorg-devel-go0+a7rfsptAfugRpC6u6w
Hi!
My Linux laptop running kernel v4.17 freezes intermittently when the laptop
lid is closed but external monitors are connected to 2 HDMI ports. I provided
details on the issue, any idea what could be causing it?
I ruled out many different subsystems by trial and error, finally I enabled
ftrace events on power subsystem and see that the freeze is precisely at the
same time as drm_mode_getconnector is called on these events and its the Xorg
process. I think since Xorg is busy on this drm_mode_getconnector ioctl, its
not able to perform its duties.
I get a stacktrace like so:
Xorg-1285 [001] .... 801.156606: pm_qos_update_request:
pm_qos_class=CPU_DMA_LATENCY value=-1
Xorg-1285 [001] .... 801.156607: pm_qos_update_target:
action=UPDATE_REQ prev_value=0 curr_value=2000000000
Xorg-1285 [001] .... 801.156609: <stack trace>
=> pm_qos_update_target
=> intel_dp_aux_xfer
=> intel_dp_aux_transfer
=> drm_dp_dpcd_access
=> drm_dp_dpcd_read
=> intel_dp_read_dpcd
=> intel_dp_detect
=> drm_helper_probe_single_connector_modes
=> drm_mode_getconnector
=> drm_ioctl_kernel
=> drm_ioctl
=> do_vfs_ioctl
=> ksys_ioctl
=> __x64_sys_ioctl
=> do_syscall_64
=> entry_SYSCALL_64_after_hwframe
The X version I'm running is X.Org X Server 1.19.6
I also see these in /var/log/Xorg.0.log every 30 seconds and it seems
correlated to the time of freezing:
[ 1141.925] (--) modeset(0): HDMI max TMDS frequency 170000KHz
[ 1142.223] (II) modeset(0): EDID vendor "HWP", prod id 13093
[ 1142.223] (II) modeset(0): Using hsync ranges from config file
[ 1142.223] (II) modeset(0): Using vrefresh ranges from config file
[ 1142.223] (II) modeset(0): Printing DDC gathered Modelines:
[ 1142.223] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2008
2052 2200 1080 1084 1089 1125 +hsync +vsync (67.5 kHz eP)
[ 1142.223] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2448
2492 2640 1080 1084 1089 1125 +hsync +vsync (56.2 kHz e)
Let me know if you spot anything weird, and if you have any suggestions?
thank you!
- Joel
_______________________________________________
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: X freezes for a second or every now and then when lid closed
[not found] ` <20181027073856.GA113061-igYJUEsKnA/Ht/MElyovVYaSKrA+ACpX0E9HWUfgJXw@public.gmane.org>
@ 2018-10-27 8:14 ` Joel Fernandes
[not found] ` <20181027081407.GA122466-igYJUEsKnA/Ht/MElyovVYaSKrA+ACpX0E9HWUfgJXw@public.gmane.org>
0 siblings, 1 reply; 7+ messages in thread
From: Joel Fernandes @ 2018-10-27 8:14 UTC (permalink / raw)
To: intel-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW,
xorg-devel-go0+a7rfsptAfugRpC6u6w
On Sat, Oct 27, 2018 at 12:38:56AM -0700, Joel Fernandes wrote:
> Hi!
> My Linux laptop running kernel v4.17 freezes intermittently when the laptop
> lid is closed but external monitors are connected to 2 HDMI ports. I provided
> details on the issue, any idea what could be causing it?
>
> I ruled out many different subsystems by trial and error, finally I enabled
> ftrace events on power subsystem and see that the freeze is precisely at the
> same time as drm_mode_getconnector is called on these events and its the Xorg
> process. I think since Xorg is busy on this drm_mode_getconnector ioctl, its
> not able to perform its duties.
>
> I get a stacktrace like so:
> Xorg-1285 [001] .... 801.156606: pm_qos_update_request:
> pm_qos_class=CPU_DMA_LATENCY value=-1
> Xorg-1285 [001] .... 801.156607: pm_qos_update_target:
> action=UPDATE_REQ prev_value=0 curr_value=2000000000
> Xorg-1285 [001] .... 801.156609: <stack trace>
> => pm_qos_update_target
> => intel_dp_aux_xfer
> => intel_dp_aux_transfer
> => drm_dp_dpcd_access
> => drm_dp_dpcd_read
> => intel_dp_read_dpcd
> => intel_dp_detect
> => drm_helper_probe_single_connector_modes
> => drm_mode_getconnector
> => drm_ioctl_kernel
> => drm_ioctl
> => do_vfs_ioctl
> => ksys_ioctl
> => __x64_sys_ioctl
> => do_syscall_64
> => entry_SYSCALL_64_after_hwframe
>
> The X version I'm running is X.Org X Server 1.19.6
>
> I also see these in /var/log/Xorg.0.log every 30 seconds and it seems
> correlated to the time of freezing:
> [ 1141.925] (--) modeset(0): HDMI max TMDS frequency 170000KHz
> [ 1142.223] (II) modeset(0): EDID vendor "HWP", prod id 13093
> [ 1142.223] (II) modeset(0): Using hsync ranges from config file
> [ 1142.223] (II) modeset(0): Using vrefresh ranges from config file
> [ 1142.223] (II) modeset(0): Printing DDC gathered Modelines:
> [ 1142.223] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2008
> 2052 2200 1080 1084 1089 1125 +hsync +vsync (67.5 kHz eP)
> [ 1142.223] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2448
> 2492 2640 1080 1084 1089 1125 +hsync +vsync (56.2 kHz e)
>
> Let me know if you spot anything weird, and if you have any suggestions?
Just for documenting it, the issue seems very similar to what is reported in
this comment:
https://forums.linuxmint.com/viewtopic.php?t=253475#p1457587
I am indeed using Cinammon as well. With the lid closed, the same 'modeset'
log messages appear and freeze the system every 30 seconds.
- Joel
_______________________________________________
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: X freezes for a second or every now and then when lid closed
[not found] ` <20181027081407.GA122466-igYJUEsKnA/Ht/MElyovVYaSKrA+ACpX0E9HWUfgJXw@public.gmane.org>
@ 2018-10-29 13:11 ` Chris Wilson
2018-11-02 0:02 ` Joel Fernandes
0 siblings, 1 reply; 7+ messages in thread
From: Chris Wilson @ 2018-10-29 13:11 UTC (permalink / raw)
To: Joel Fernandes, intel-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW,
xorg-devel-go0+a7rfsptAfugRpC6u6w
Quoting Joel Fernandes (2018-10-27 09:14:07)
> On Sat, Oct 27, 2018 at 12:38:56AM -0700, Joel Fernandes wrote:
> > Hi!
> > My Linux laptop running kernel v4.17 freezes intermittently when the laptop
> > lid is closed but external monitors are connected to 2 HDMI ports. I provided
> > details on the issue, any idea what could be causing it?
> >
> > I ruled out many different subsystems by trial and error, finally I enabled
> > ftrace events on power subsystem and see that the freeze is precisely at the
> > same time as drm_mode_getconnector is called on these events and its the Xorg
> > process. I think since Xorg is busy on this drm_mode_getconnector ioctl, its
> > not able to perform its duties.
> >
> > I get a stacktrace like so:
> > Xorg-1285 [001] .... 801.156606: pm_qos_update_request:
> > pm_qos_class=CPU_DMA_LATENCY value=-1
> > Xorg-1285 [001] .... 801.156607: pm_qos_update_target:
> > action=UPDATE_REQ prev_value=0 curr_value=2000000000
> > Xorg-1285 [001] .... 801.156609: <stack trace>
> > => pm_qos_update_target
> > => intel_dp_aux_xfer
> > => intel_dp_aux_transfer
> > => drm_dp_dpcd_access
> > => drm_dp_dpcd_read
> > => intel_dp_read_dpcd
> > => intel_dp_detect
> > => drm_helper_probe_single_connector_modes
> > => drm_mode_getconnector
> > => drm_ioctl_kernel
> > => drm_ioctl
> > => do_vfs_ioctl
> > => ksys_ioctl
> > => __x64_sys_ioctl
> > => do_syscall_64
> > => entry_SYSCALL_64_after_hwframe
> >
> > The X version I'm running is X.Org X Server 1.19.6
> >
> > I also see these in /var/log/Xorg.0.log every 30 seconds and it seems
> > correlated to the time of freezing:
> > [ 1141.925] (--) modeset(0): HDMI max TMDS frequency 170000KHz
> > [ 1142.223] (II) modeset(0): EDID vendor "HWP", prod id 13093
> > [ 1142.223] (II) modeset(0): Using hsync ranges from config file
> > [ 1142.223] (II) modeset(0): Using vrefresh ranges from config file
> > [ 1142.223] (II) modeset(0): Printing DDC gathered Modelines:
> > [ 1142.223] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2008
> > 2052 2200 1080 1084 1089 1125 +hsync +vsync (67.5 kHz eP)
> > [ 1142.223] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2448
> > 2492 2640 1080 1084 1089 1125 +hsync +vsync (56.2 kHz e)
> >
> > Let me know if you spot anything weird, and if you have any suggestions?
>
> Just for documenting it, the issue seems very similar to what is reported in
> this comment:
> https://forums.linuxmint.com/viewtopic.php?t=253475#p1457587
>
> I am indeed using Cinammon as well. With the lid closed, the same 'modeset'
> log messages appear and freeze the system every 30 seconds.
30s == hotplug polling kthread; the implication would be that it is
generating a hotplug uevent everytime. drm.debug=0xe should record what
it going on, so capture a dmesg with the lid closed.
Platform and panel HW would be useful to know, dmesg from boot is
usually sufficient.
-Chris
_______________________________________________
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: X freezes for a second or every now and then when lid closed
2018-10-29 13:11 ` Chris Wilson
@ 2018-11-02 0:02 ` Joel Fernandes
[not found] ` <20181102000254.GA172861-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
0 siblings, 1 reply; 7+ messages in thread
From: Joel Fernandes @ 2018-11-02 0:02 UTC (permalink / raw)
To: Chris Wilson
Cc: intel-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW,
xorg-devel-go0+a7rfsptAfugRpC6u6w
On Mon, Oct 29, 2018 at 01:11:30PM +0000, Chris Wilson wrote:
> Quoting Joel Fernandes (2018-10-27 09:14:07)
> > On Sat, Oct 27, 2018 at 12:38:56AM -0700, Joel Fernandes wrote:
> > > Hi!
> > > My Linux laptop running kernel v4.17 freezes intermittently when the laptop
> > > lid is closed but external monitors are connected to 2 HDMI ports. I provided
> > > details on the issue, any idea what could be causing it?
> > >
> > > I ruled out many different subsystems by trial and error, finally I enabled
> > > ftrace events on power subsystem and see that the freeze is precisely at the
> > > same time as drm_mode_getconnector is called on these events and its the Xorg
> > > process. I think since Xorg is busy on this drm_mode_getconnector ioctl, its
> > > not able to perform its duties.
> > >
> > > I get a stacktrace like so:
> > > Xorg-1285 [001] .... 801.156606: pm_qos_update_request:
> > > pm_qos_class=CPU_DMA_LATENCY value=-1
> > > Xorg-1285 [001] .... 801.156607: pm_qos_update_target:
> > > action=UPDATE_REQ prev_value=0 curr_value=2000000000
> > > Xorg-1285 [001] .... 801.156609: <stack trace>
> > > => pm_qos_update_target
> > > => intel_dp_aux_xfer
> > > => intel_dp_aux_transfer
> > > => drm_dp_dpcd_access
> > > => drm_dp_dpcd_read
> > > => intel_dp_read_dpcd
> > > => intel_dp_detect
> > > => drm_helper_probe_single_connector_modes
> > > => drm_mode_getconnector
> > > => drm_ioctl_kernel
> > > => drm_ioctl
> > > => do_vfs_ioctl
> > > => ksys_ioctl
> > > => __x64_sys_ioctl
> > > => do_syscall_64
> > > => entry_SYSCALL_64_after_hwframe
> > >
> > > The X version I'm running is X.Org X Server 1.19.6
> > >
> > > I also see these in /var/log/Xorg.0.log every 30 seconds and it seems
> > > correlated to the time of freezing:
> > > [ 1141.925] (--) modeset(0): HDMI max TMDS frequency 170000KHz
> > > [ 1142.223] (II) modeset(0): EDID vendor "HWP", prod id 13093
> > > [ 1142.223] (II) modeset(0): Using hsync ranges from config file
> > > [ 1142.223] (II) modeset(0): Using vrefresh ranges from config file
> > > [ 1142.223] (II) modeset(0): Printing DDC gathered Modelines:
> > > [ 1142.223] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2008
> > > 2052 2200 1080 1084 1089 1125 +hsync +vsync (67.5 kHz eP)
> > > [ 1142.223] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2448
> > > 2492 2640 1080 1084 1089 1125 +hsync +vsync (56.2 kHz e)
> > >
> > > Let me know if you spot anything weird, and if you have any suggestions?
> >
> > Just for documenting it, the issue seems very similar to what is reported in
> > this comment:
> > https://forums.linuxmint.com/viewtopic.php?t=253475#p1457587
> >
> > I am indeed using Cinammon as well. With the lid closed, the same 'modeset'
> > log messages appear and freeze the system every 30 seconds.
>
> 30s == hotplug polling kthread; the implication would be that it is
> generating a hotplug uevent everytime. drm.debug=0xe should record what
> it going on, so capture a dmesg with the lid closed.
>
> Platform and panel HW would be useful to know, dmesg from boot is
> usually sufficient
Thanks a lot Chris. So here is what I get with drm.debug=0xe. Below is a
small part of it close to the "stuck" state. I do see some errors. Any insights are appreciated!
I attached the full dmesg dump here at this link:
https://gist.github.com/joelagnel/72806b2e1a4a0c97e11915315158cbde
[ 297.414429] [drm:drm_helper_probe_single_connector_modes [drm_kms_helper]] [CONNECTOR:71:eDP-1]
[ 297.414497] [drm:intel_dp_detect [i915]] [CONNECTOR:71:eDP-1]
[ 297.414560] [drm:intel_dp_print_rates [i915]] source rates: 162000, 216000, 270000, 324000, 432000, 540000
[ 297.414610] [drm:intel_dp_print_rates [i915]] sink rates: 162000, 270000
[ 297.414656] [drm:intel_dp_print_rates [i915]] common rates: 162000, 270000
[ 297.414717] [drm:edp_panel_vdd_on [i915]] Turning eDP port A VDD on
[ 297.414771] [drm:wait_panel_power_cycle [i915]] Wait for panel power cycle
[ 297.414882] [drm:wait_panel_status [i915]] mask b800000f value 00000000 status 00000000 control 00000000
[ 297.414991] [drm:wait_panel_status [i915]] Wait complete
[ 297.415102] [drm:edp_panel_vdd_on [i915]] PP_STATUS: 0x00000000 PP_CONTROL: 0x00000008
[ 297.415165] [drm:edp_panel_vdd_on [i915]] eDP port A panel power wasn't enabled
[ 297.514369] [drm:gen8_de_irq_handler [i915]] hotplug event received, stat 0x01000000, dig 0x12101010, pins 0x00000010
[ 297.514429] [drm:intel_hpd_irq_handler [i915]] digital hpd port A - long
[ 297.514482] [drm:intel_hpd_irq_handler [i915]] Received HPD interrupt on PIN 4 - cnt: 0
[ 297.514619] [drm:intel_dp_hpd_pulse [i915]] ignoring long hpd on eDP port A
[ 297.623908] [drm:drm_dp_read_desc [drm_kms_helper]] DP sink: OUI 00-1c-f8 dev-ID a\006UA\024\001 HW-rev 10.0 SW-rev 1.48 quirks 0x0000
[ 297.624283] [drm:drm_add_display_info [drm]] non_desktop set to 0
[ 297.624315] [drm:drm_add_edid_modes [drm]] ELD: no CEA Extension found
[ 297.624337] [drm:drm_add_display_info [drm]] non_desktop set to 0
[ 297.624392] [drm:drm_helper_probe_single_connector_modes [drm_kms_helper]] [CONNECTOR:71:eDP-1] probed modes :
[ 297.624419] [drm:drm_mode_debug_printmodeline [drm]] Modeline 72:"1920x1080" 60 141000 1920 1936 1952 2104 1080 1083 1097 1116 0x48 0xa
[ 297.624884] [drm:drm_helper_probe_single_connector_modes [drm_kms_helper]] [CONNECTOR:78:DP-1]
[ 297.624943] [drm:intel_dp_detect [i915]] [CONNECTOR:78:DP-1]
[ 297.633348] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.641715] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.650081] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.658445] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.666809] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.675174] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.683537] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.691907] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.700270] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.708632] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.716992] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.725352] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.733712] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.742072] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.750432] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.758790] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.767150] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.775509] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.783869] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.792229] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.800588] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.808947] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.817313] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.825671] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.834030] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.842389] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
[ 297.850747] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
Right around this, I see the following in Xorg.0.log:
[ 297.932] (--) modeset(0): HDMI max TMDS frequency 170000KHz
[ 298.231] (II) modeset(0): EDID vendor "HWP", prod id 13093
[ 298.231] (II) modeset(0): Using hsync ranges from config file
[ 298.231] (II) modeset(0): Using vrefresh ranges from config file
[ 298.231] (II) modeset(0): Printing DDC gathered Modelines:
[ 298.231] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync (67.5 kHz eP)
[ 298.231] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2448 2492 2640 1080 1084 1089 1125 +hsync +vsync (56.2 kHz e)
_______________________________________________
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: X freezes for a second or every now and then when lid closed
[not found] ` <20181102000254.GA172861-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
@ 2018-11-05 5:51 ` Joel Fernandes
[not found] ` <20181105055144.GE56850-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
0 siblings, 1 reply; 7+ messages in thread
From: Joel Fernandes @ 2018-11-05 5:51 UTC (permalink / raw)
To: Jani Nikula, Joonas Lahtinen, Rodrigo Vivi
Cc: intel-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW,
xorg-devel-go0+a7rfsptAfugRpC6u6w
i915 DRM maintainers, could you take a look at the below issue? It causes an
annoying Xorg hang every 30 seconds when my laptop lid is closed with
external monitors connected. This is a thinkpad laptop. I am not sure how to
get the panel info but if you can let me know how to do that, I can dig it
out. Logs excerpts are below and full logs are attached to earlier threads.
On Thu, Nov 01, 2018 at 05:02:54PM -0700, Joel Fernandes wrote:
> On Mon, Oct 29, 2018 at 01:11:30PM +0000, Chris Wilson wrote:
> > Quoting Joel Fernandes (2018-10-27 09:14:07)
> > > On Sat, Oct 27, 2018 at 12:38:56AM -0700, Joel Fernandes wrote:
> > > > Hi!
> > > > My Linux laptop running kernel v4.17 freezes intermittently when the laptop
> > > > lid is closed but external monitors are connected to 2 HDMI ports. I provided
> > > > details on the issue, any idea what could be causing it?
> > > >
> > > > I ruled out many different subsystems by trial and error, finally I enabled
> > > > ftrace events on power subsystem and see that the freeze is precisely at the
> > > > same time as drm_mode_getconnector is called on these events and its the Xorg
> > > > process. I think since Xorg is busy on this drm_mode_getconnector ioctl, its
> > > > not able to perform its duties.
> > > >
> > > > I get a stacktrace like so:
> > > > Xorg-1285 [001] .... 801.156606: pm_qos_update_request:
> > > > pm_qos_class=CPU_DMA_LATENCY value=-1
> > > > Xorg-1285 [001] .... 801.156607: pm_qos_update_target:
> > > > action=UPDATE_REQ prev_value=0 curr_value=2000000000
> > > > Xorg-1285 [001] .... 801.156609: <stack trace>
> > > > => pm_qos_update_target
> > > > => intel_dp_aux_xfer
> > > > => intel_dp_aux_transfer
> > > > => drm_dp_dpcd_access
> > > > => drm_dp_dpcd_read
> > > > => intel_dp_read_dpcd
> > > > => intel_dp_detect
> > > > => drm_helper_probe_single_connector_modes
> > > > => drm_mode_getconnector
> > > > => drm_ioctl_kernel
> > > > => drm_ioctl
> > > > => do_vfs_ioctl
> > > > => ksys_ioctl
> > > > => __x64_sys_ioctl
> > > > => do_syscall_64
> > > > => entry_SYSCALL_64_after_hwframe
> > > >
> > > > The X version I'm running is X.Org X Server 1.19.6
> > > >
> > > > I also see these in /var/log/Xorg.0.log every 30 seconds and it seems
> > > > correlated to the time of freezing:
> > > > [ 1141.925] (--) modeset(0): HDMI max TMDS frequency 170000KHz
> > > > [ 1142.223] (II) modeset(0): EDID vendor "HWP", prod id 13093
> > > > [ 1142.223] (II) modeset(0): Using hsync ranges from config file
> > > > [ 1142.223] (II) modeset(0): Using vrefresh ranges from config file
> > > > [ 1142.223] (II) modeset(0): Printing DDC gathered Modelines:
> > > > [ 1142.223] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2008
> > > > 2052 2200 1080 1084 1089 1125 +hsync +vsync (67.5 kHz eP)
> > > > [ 1142.223] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2448
> > > > 2492 2640 1080 1084 1089 1125 +hsync +vsync (56.2 kHz e)
> > > >
> > > > Let me know if you spot anything weird, and if you have any suggestions?
> > >
> > > Just for documenting it, the issue seems very similar to what is reported in
> > > this comment:
> > > https://forums.linuxmint.com/viewtopic.php?t=253475#p1457587
> > >
> > > I am indeed using Cinammon as well. With the lid closed, the same 'modeset'
> > > log messages appear and freeze the system every 30 seconds.
> >
> > 30s == hotplug polling kthread; the implication would be that it is
> > generating a hotplug uevent everytime. drm.debug=0xe should record what
> > it going on, so capture a dmesg with the lid closed.
> >
> > Platform and panel HW would be useful to know, dmesg from boot is
> > usually sufficient
>
> Thanks a lot Chris. So here is what I get with drm.debug=0xe. Below is a
> small part of it close to the "stuck" state. I do see some errors. Any insights are appreciated!
> I attached the full dmesg dump here at this link:
> https://gist.github.com/joelagnel/72806b2e1a4a0c97e11915315158cbde
>
> [ 297.414429] [drm:drm_helper_probe_single_connector_modes [drm_kms_helper]] [CONNECTOR:71:eDP-1]
> [ 297.414497] [drm:intel_dp_detect [i915]] [CONNECTOR:71:eDP-1]
> [ 297.414560] [drm:intel_dp_print_rates [i915]] source rates: 162000, 216000, 270000, 324000, 432000, 540000
> [ 297.414610] [drm:intel_dp_print_rates [i915]] sink rates: 162000, 270000
> [ 297.414656] [drm:intel_dp_print_rates [i915]] common rates: 162000, 270000
> [ 297.414717] [drm:edp_panel_vdd_on [i915]] Turning eDP port A VDD on
> [ 297.414771] [drm:wait_panel_power_cycle [i915]] Wait for panel power cycle
> [ 297.414882] [drm:wait_panel_status [i915]] mask b800000f value 00000000 status 00000000 control 00000000
> [ 297.414991] [drm:wait_panel_status [i915]] Wait complete
> [ 297.415102] [drm:edp_panel_vdd_on [i915]] PP_STATUS: 0x00000000 PP_CONTROL: 0x00000008
> [ 297.415165] [drm:edp_panel_vdd_on [i915]] eDP port A panel power wasn't enabled
> [ 297.514369] [drm:gen8_de_irq_handler [i915]] hotplug event received, stat 0x01000000, dig 0x12101010, pins 0x00000010
> [ 297.514429] [drm:intel_hpd_irq_handler [i915]] digital hpd port A - long
> [ 297.514482] [drm:intel_hpd_irq_handler [i915]] Received HPD interrupt on PIN 4 - cnt: 0
> [ 297.514619] [drm:intel_dp_hpd_pulse [i915]] ignoring long hpd on eDP port A
> [ 297.623908] [drm:drm_dp_read_desc [drm_kms_helper]] DP sink: OUI 00-1c-f8 dev-ID a\006UA\024\001 HW-rev 10.0 SW-rev 1.48 quirks 0x0000
> [ 297.624283] [drm:drm_add_display_info [drm]] non_desktop set to 0
> [ 297.624315] [drm:drm_add_edid_modes [drm]] ELD: no CEA Extension found
> [ 297.624337] [drm:drm_add_display_info [drm]] non_desktop set to 0
> [ 297.624392] [drm:drm_helper_probe_single_connector_modes [drm_kms_helper]] [CONNECTOR:71:eDP-1] probed modes :
> [ 297.624419] [drm:drm_mode_debug_printmodeline [drm]] Modeline 72:"1920x1080" 60 141000 1920 1936 1952 2104 1080 1083 1097 1116 0x48 0xa
> [ 297.624884] [drm:drm_helper_probe_single_connector_modes [drm_kms_helper]] [CONNECTOR:78:DP-1]
> [ 297.624943] [drm:intel_dp_detect [i915]] [CONNECTOR:78:DP-1]
> [ 297.633348] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.641715] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.650081] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.658445] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.666809] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.675174] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.683537] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.691907] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.700270] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.708632] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.716992] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.725352] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.733712] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.742072] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.750432] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.758790] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.767150] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.775509] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.783869] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.792229] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.800588] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.808947] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.817313] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.825671] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.834030] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.842389] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> [ 297.850747] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
>
> Right around this, I see the following in Xorg.0.log:
>
> [ 297.932] (--) modeset(0): HDMI max TMDS frequency 170000KHz
> [ 298.231] (II) modeset(0): EDID vendor "HWP", prod id 13093
> [ 298.231] (II) modeset(0): Using hsync ranges from config file
> [ 298.231] (II) modeset(0): Using vrefresh ranges from config file
> [ 298.231] (II) modeset(0): Printing DDC gathered Modelines:
> [ 298.231] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync (67.5 kHz eP)
> [ 298.231] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2448 2492 2640 1080 1084 1089 1125 +hsync +vsync (56.2 kHz e)
>
_______________________________________________
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: X freezes for a second or every now and then when lid closed
[not found] ` <20181105055144.GE56850-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
@ 2018-11-05 6:03 ` Joel Fernandes
2018-11-05 20:30 ` Rodrigo Vivi
1 sibling, 0 replies; 7+ messages in thread
From: Joel Fernandes @ 2018-11-05 6:03 UTC (permalink / raw)
To: Jani Nikula, Joonas Lahtinen, Rodrigo Vivi
Cc: intel-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW,
xorg-devel-go0+a7rfsptAfugRpC6u6w
On Sun, Nov 04, 2018 at 09:51:44PM -0800, Joel Fernandes wrote:
> i915 DRM maintainers, could you take a look at the below issue? It causes an
> annoying Xorg hang every 30 seconds when my laptop lid is closed with
> external monitors connected. This is a thinkpad laptop. I am not sure how to
> get the panel info but if you can let me know how to do that, I can dig it
> out. Logs excerpts are below and full logs are attached to earlier threads.
>
> On Thu, Nov 01, 2018 at 05:02:54PM -0700, Joel Fernandes wrote:
> > On Mon, Oct 29, 2018 at 01:11:30PM +0000, Chris Wilson wrote:
> > > Quoting Joel Fernandes (2018-10-27 09:14:07)
> > > > On Sat, Oct 27, 2018 at 12:38:56AM -0700, Joel Fernandes wrote:
> > > > > Hi!
> > > > > My Linux laptop running kernel v4.17 freezes intermittently when the laptop
> > > > > lid is closed but external monitors are connected to 2 HDMI ports. I provided
> > > > > details on the issue, any idea what could be causing it?
> > > > >
> > > > > I ruled out many different subsystems by trial and error, finally I enabled
> > > > > ftrace events on power subsystem and see that the freeze is precisely at the
> > > > > same time as drm_mode_getconnector is called on these events and its the Xorg
> > > > > process. I think since Xorg is busy on this drm_mode_getconnector ioctl, its
> > > > > not able to perform its duties.
> > > > >
> > > > > I get a stacktrace like so:
> > > > > Xorg-1285 [001] .... 801.156606: pm_qos_update_request:
> > > > > pm_qos_class=CPU_DMA_LATENCY value=-1
> > > > > Xorg-1285 [001] .... 801.156607: pm_qos_update_target:
> > > > > action=UPDATE_REQ prev_value=0 curr_value=2000000000
> > > > > Xorg-1285 [001] .... 801.156609: <stack trace>
> > > > > => pm_qos_update_target
> > > > > => intel_dp_aux_xfer
> > > > > => intel_dp_aux_transfer
> > > > > => drm_dp_dpcd_access
> > > > > => drm_dp_dpcd_read
> > > > > => intel_dp_read_dpcd
> > > > > => intel_dp_detect
> > > > > => drm_helper_probe_single_connector_modes
> > > > > => drm_mode_getconnector
> > > > > => drm_ioctl_kernel
> > > > > => drm_ioctl
> > > > > => do_vfs_ioctl
> > > > > => ksys_ioctl
> > > > > => __x64_sys_ioctl
> > > > > => do_syscall_64
> > > > > => entry_SYSCALL_64_after_hwframe
> > > > >
> > > > > The X version I'm running is X.Org X Server 1.19.6
> > > > >
> > > > > I also see these in /var/log/Xorg.0.log every 30 seconds and it seems
> > > > > correlated to the time of freezing:
> > > > > [ 1141.925] (--) modeset(0): HDMI max TMDS frequency 170000KHz
> > > > > [ 1142.223] (II) modeset(0): EDID vendor "HWP", prod id 13093
> > > > > [ 1142.223] (II) modeset(0): Using hsync ranges from config file
> > > > > [ 1142.223] (II) modeset(0): Using vrefresh ranges from config file
> > > > > [ 1142.223] (II) modeset(0): Printing DDC gathered Modelines:
> > > > > [ 1142.223] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2008
> > > > > 2052 2200 1080 1084 1089 1125 +hsync +vsync (67.5 kHz eP)
> > > > > [ 1142.223] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2448
> > > > > 2492 2640 1080 1084 1089 1125 +hsync +vsync (56.2 kHz e)
> > > > >
> > > > > Let me know if you spot anything weird, and if you have any suggestions?
> > > >
> > > > Just for documenting it, the issue seems very similar to what is reported in
> > > > this comment:
> > > > https://forums.linuxmint.com/viewtopic.php?t=253475#p1457587
> > > >
> > > > I am indeed using Cinammon as well. With the lid closed, the same 'modeset'
> > > > log messages appear and freeze the system every 30 seconds.
> > >
> > > 30s == hotplug polling kthread; the implication would be that it is
> > > generating a hotplug uevent everytime. drm.debug=0xe should record what
> > > it going on, so capture a dmesg with the lid closed.
> > >
> > > Platform and panel HW would be useful to know, dmesg from boot is
> > > usually sufficient
> >
> > Thanks a lot Chris. So here is what I get with drm.debug=0xe. Below is a
> > small part of it close to the "stuck" state. I do see some errors. Any insights are appreciated!
> > I attached the full dmesg dump here at this link:
> > https://gist.github.com/joelagnel/72806b2e1a4a0c97e11915315158cbde
> >
> > [ 297.414429] [drm:drm_helper_probe_single_connector_modes [drm_kms_helper]] [CONNECTOR:71:eDP-1]
> > [ 297.414497] [drm:intel_dp_detect [i915]] [CONNECTOR:71:eDP-1]
> > [ 297.414560] [drm:intel_dp_print_rates [i915]] source rates: 162000, 216000, 270000, 324000, 432000, 540000
> > [ 297.414610] [drm:intel_dp_print_rates [i915]] sink rates: 162000, 270000
> > [ 297.414656] [drm:intel_dp_print_rates [i915]] common rates: 162000, 270000
> > [ 297.414717] [drm:edp_panel_vdd_on [i915]] Turning eDP port A VDD on
> > [ 297.414771] [drm:wait_panel_power_cycle [i915]] Wait for panel power cycle
> > [ 297.414882] [drm:wait_panel_status [i915]] mask b800000f value 00000000 status 00000000 control 00000000
> > [ 297.414991] [drm:wait_panel_status [i915]] Wait complete
> > [ 297.415102] [drm:edp_panel_vdd_on [i915]] PP_STATUS: 0x00000000 PP_CONTROL: 0x00000008
> > [ 297.415165] [drm:edp_panel_vdd_on [i915]] eDP port A panel power wasn't enabled
> > [ 297.514369] [drm:gen8_de_irq_handler [i915]] hotplug event received, stat 0x01000000, dig 0x12101010, pins 0x00000010
> > [ 297.514429] [drm:intel_hpd_irq_handler [i915]] digital hpd port A - long
> > [ 297.514482] [drm:intel_hpd_irq_handler [i915]] Received HPD interrupt on PIN 4 - cnt: 0
> > [ 297.514619] [drm:intel_dp_hpd_pulse [i915]] ignoring long hpd on eDP port A
> > [ 297.623908] [drm:drm_dp_read_desc [drm_kms_helper]] DP sink: OUI 00-1c-f8 dev-ID a\006UA\024\001 HW-rev 10.0 SW-rev 1.48 quirks 0x0000
> > [ 297.624283] [drm:drm_add_display_info [drm]] non_desktop set to 0
> > [ 297.624315] [drm:drm_add_edid_modes [drm]] ELD: no CEA Extension found
> > [ 297.624337] [drm:drm_add_display_info [drm]] non_desktop set to 0
> > [ 297.624392] [drm:drm_helper_probe_single_connector_modes [drm_kms_helper]] [CONNECTOR:71:eDP-1] probed modes :
> > [ 297.624419] [drm:drm_mode_debug_printmodeline [drm]] Modeline 72:"1920x1080" 60 141000 1920 1936 1952 2104 1080 1083 1097 1116 0x48 0xa
> > [ 297.624884] [drm:drm_helper_probe_single_connector_modes [drm_kms_helper]] [CONNECTOR:78:DP-1]
> > [ 297.624943] [drm:intel_dp_detect [i915]] [CONNECTOR:78:DP-1]
> > [ 297.633348] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.641715] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.650081] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.658445] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.666809] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.675174] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.683537] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.691907] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.700270] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.708632] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.716992] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.725352] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.733712] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.742072] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.750432] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.758790] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.767150] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.775509] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.783869] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.792229] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.800588] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.808947] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.817313] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.825671] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.834030] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.842389] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.850747] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> >
> > Right around this, I see the following in Xorg.0.log:
> >
> > [ 297.932] (--) modeset(0): HDMI max TMDS frequency 170000KHz
> > [ 298.231] (II) modeset(0): EDID vendor "HWP", prod id 13093
> > [ 298.231] (II) modeset(0): Using hsync ranges from config file
> > [ 298.231] (II) modeset(0): Using vrefresh ranges from config file
> > [ 298.231] (II) modeset(0): Printing DDC gathered Modelines:
> > [ 298.231] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync (67.5 kHz eP)
> > [ 298.231] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2448 2492 2640 1080 1084 1089 1125 +hsync +vsync (56.2 kHz e)
> >
Also here is the EDID output from eDP1 which corresponds to the laptop panel:
https://hastebin.com/kegavowomo.cpp
thanks for any help,
- Joel
_______________________________________________
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: X freezes for a second or every now and then when lid closed
[not found] ` <20181105055144.GE56850-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2018-11-05 6:03 ` Joel Fernandes
@ 2018-11-05 20:30 ` Rodrigo Vivi
1 sibling, 0 replies; 7+ messages in thread
From: Rodrigo Vivi @ 2018-11-05 20:30 UTC (permalink / raw)
To: Joel Fernandes
Cc: intel-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW, Joonas Lahtinen,
xorg-devel-go0+a7rfsptAfugRpC6u6w, Jani Nikula
On Sun, Nov 04, 2018 at 09:51:44PM -0800, Joel Fernandes wrote:
> i915 DRM maintainers, could you take a look at the below issue? It causes an
> annoying Xorg hang every 30 seconds when my laptop lid is closed with
> external monitors connected. This is a thinkpad laptop. I am not sure how to
> get the panel info but if you can let me know how to do that, I can dig it
> out. Logs excerpts are below and full logs are attached to earlier threads.
Hi Joel,
Could you please file a bug at https://bugs.freedesktop.org
following:
https://01.org/linuxgraphics/documentation/how-report-bugs
Unfortunately the dmesg provided is not enough since it has
lost the initial information. So please increase log length
or capture right on the begining with only drm.debug=0xe
Thanks,
Rodrigo.
>
> On Thu, Nov 01, 2018 at 05:02:54PM -0700, Joel Fernandes wrote:
> > On Mon, Oct 29, 2018 at 01:11:30PM +0000, Chris Wilson wrote:
> > > Quoting Joel Fernandes (2018-10-27 09:14:07)
> > > > On Sat, Oct 27, 2018 at 12:38:56AM -0700, Joel Fernandes wrote:
> > > > > Hi!
> > > > > My Linux laptop running kernel v4.17 freezes intermittently when the laptop
> > > > > lid is closed but external monitors are connected to 2 HDMI ports. I provided
> > > > > details on the issue, any idea what could be causing it?
> > > > >
> > > > > I ruled out many different subsystems by trial and error, finally I enabled
> > > > > ftrace events on power subsystem and see that the freeze is precisely at the
> > > > > same time as drm_mode_getconnector is called on these events and its the Xorg
> > > > > process. I think since Xorg is busy on this drm_mode_getconnector ioctl, its
> > > > > not able to perform its duties.
> > > > >
> > > > > I get a stacktrace like so:
> > > > > Xorg-1285 [001] .... 801.156606: pm_qos_update_request:
> > > > > pm_qos_class=CPU_DMA_LATENCY value=-1
> > > > > Xorg-1285 [001] .... 801.156607: pm_qos_update_target:
> > > > > action=UPDATE_REQ prev_value=0 curr_value=2000000000
> > > > > Xorg-1285 [001] .... 801.156609: <stack trace>
> > > > > => pm_qos_update_target
> > > > > => intel_dp_aux_xfer
> > > > > => intel_dp_aux_transfer
> > > > > => drm_dp_dpcd_access
> > > > > => drm_dp_dpcd_read
> > > > > => intel_dp_read_dpcd
> > > > > => intel_dp_detect
> > > > > => drm_helper_probe_single_connector_modes
> > > > > => drm_mode_getconnector
> > > > > => drm_ioctl_kernel
> > > > > => drm_ioctl
> > > > > => do_vfs_ioctl
> > > > > => ksys_ioctl
> > > > > => __x64_sys_ioctl
> > > > > => do_syscall_64
> > > > > => entry_SYSCALL_64_after_hwframe
> > > > >
> > > > > The X version I'm running is X.Org X Server 1.19.6
> > > > >
> > > > > I also see these in /var/log/Xorg.0.log every 30 seconds and it seems
> > > > > correlated to the time of freezing:
> > > > > [ 1141.925] (--) modeset(0): HDMI max TMDS frequency 170000KHz
> > > > > [ 1142.223] (II) modeset(0): EDID vendor "HWP", prod id 13093
> > > > > [ 1142.223] (II) modeset(0): Using hsync ranges from config file
> > > > > [ 1142.223] (II) modeset(0): Using vrefresh ranges from config file
> > > > > [ 1142.223] (II) modeset(0): Printing DDC gathered Modelines:
> > > > > [ 1142.223] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2008
> > > > > 2052 2200 1080 1084 1089 1125 +hsync +vsync (67.5 kHz eP)
> > > > > [ 1142.223] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2448
> > > > > 2492 2640 1080 1084 1089 1125 +hsync +vsync (56.2 kHz e)
> > > > >
> > > > > Let me know if you spot anything weird, and if you have any suggestions?
> > > >
> > > > Just for documenting it, the issue seems very similar to what is reported in
> > > > this comment:
> > > > https://forums.linuxmint.com/viewtopic.php?t=253475#p1457587
> > > >
> > > > I am indeed using Cinammon as well. With the lid closed, the same 'modeset'
> > > > log messages appear and freeze the system every 30 seconds.
> > >
> > > 30s == hotplug polling kthread; the implication would be that it is
> > > generating a hotplug uevent everytime. drm.debug=0xe should record what
> > > it going on, so capture a dmesg with the lid closed.
> > >
> > > Platform and panel HW would be useful to know, dmesg from boot is
> > > usually sufficient
> >
> > Thanks a lot Chris. So here is what I get with drm.debug=0xe. Below is a
> > small part of it close to the "stuck" state. I do see some errors. Any insights are appreciated!
> > I attached the full dmesg dump here at this link:
> > https://gist.github.com/joelagnel/72806b2e1a4a0c97e11915315158cbde
> >
> > [ 297.414429] [drm:drm_helper_probe_single_connector_modes [drm_kms_helper]] [CONNECTOR:71:eDP-1]
> > [ 297.414497] [drm:intel_dp_detect [i915]] [CONNECTOR:71:eDP-1]
> > [ 297.414560] [drm:intel_dp_print_rates [i915]] source rates: 162000, 216000, 270000, 324000, 432000, 540000
> > [ 297.414610] [drm:intel_dp_print_rates [i915]] sink rates: 162000, 270000
> > [ 297.414656] [drm:intel_dp_print_rates [i915]] common rates: 162000, 270000
> > [ 297.414717] [drm:edp_panel_vdd_on [i915]] Turning eDP port A VDD on
> > [ 297.414771] [drm:wait_panel_power_cycle [i915]] Wait for panel power cycle
> > [ 297.414882] [drm:wait_panel_status [i915]] mask b800000f value 00000000 status 00000000 control 00000000
> > [ 297.414991] [drm:wait_panel_status [i915]] Wait complete
> > [ 297.415102] [drm:edp_panel_vdd_on [i915]] PP_STATUS: 0x00000000 PP_CONTROL: 0x00000008
> > [ 297.415165] [drm:edp_panel_vdd_on [i915]] eDP port A panel power wasn't enabled
> > [ 297.514369] [drm:gen8_de_irq_handler [i915]] hotplug event received, stat 0x01000000, dig 0x12101010, pins 0x00000010
> > [ 297.514429] [drm:intel_hpd_irq_handler [i915]] digital hpd port A - long
> > [ 297.514482] [drm:intel_hpd_irq_handler [i915]] Received HPD interrupt on PIN 4 - cnt: 0
> > [ 297.514619] [drm:intel_dp_hpd_pulse [i915]] ignoring long hpd on eDP port A
> > [ 297.623908] [drm:drm_dp_read_desc [drm_kms_helper]] DP sink: OUI 00-1c-f8 dev-ID a\006UA\024\001 HW-rev 10.0 SW-rev 1.48 quirks 0x0000
> > [ 297.624283] [drm:drm_add_display_info [drm]] non_desktop set to 0
> > [ 297.624315] [drm:drm_add_edid_modes [drm]] ELD: no CEA Extension found
> > [ 297.624337] [drm:drm_add_display_info [drm]] non_desktop set to 0
> > [ 297.624392] [drm:drm_helper_probe_single_connector_modes [drm_kms_helper]] [CONNECTOR:71:eDP-1] probed modes :
> > [ 297.624419] [drm:drm_mode_debug_printmodeline [drm]] Modeline 72:"1920x1080" 60 141000 1920 1936 1952 2104 1080 1083 1097 1116 0x48 0xa
> > [ 297.624884] [drm:drm_helper_probe_single_connector_modes [drm_kms_helper]] [CONNECTOR:78:DP-1]
> > [ 297.624943] [drm:intel_dp_detect [i915]] [CONNECTOR:78:DP-1]
> > [ 297.633348] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.641715] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.650081] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.658445] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.666809] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.675174] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.683537] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.691907] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.700270] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.708632] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.716992] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.725352] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.733712] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.742072] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.750432] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.758790] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.767150] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.775509] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.783869] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.792229] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.800588] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.808947] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.817313] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.825671] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.834030] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.842389] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> > [ 297.850747] [drm:intel_dp_aux_xfer [i915]] dp_aux_ch timeout status 0x7d4003ff
> >
> > Right around this, I see the following in Xorg.0.log:
> >
> > [ 297.932] (--) modeset(0): HDMI max TMDS frequency 170000KHz
> > [ 298.231] (II) modeset(0): EDID vendor "HWP", prod id 13093
> > [ 298.231] (II) modeset(0): Using hsync ranges from config file
> > [ 298.231] (II) modeset(0): Using vrefresh ranges from config file
> > [ 298.231] (II) modeset(0): Printing DDC gathered Modelines:
> > [ 298.231] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync (67.5 kHz eP)
> > [ 298.231] (II) modeset(0): Modeline "1920x1080"x0.0 148.50 1920 2448 2492 2640 1080 1084 1089 1125 +hsync +vsync (56.2 kHz e)
> >
> _______________________________________________
> xorg-devel@lists.x.org: X.Org development
> Archives: http://lists.x.org/archives/xorg-devel
> Info: https://lists.x.org/mailman/listinfo/xorg-devel
_______________________________________________
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2018-11-05 20:30 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-10-27 7:38 X freezes for a second or every now and then when lid closed Joel Fernandes
[not found] ` <20181027073856.GA113061-igYJUEsKnA/Ht/MElyovVYaSKrA+ACpX0E9HWUfgJXw@public.gmane.org>
2018-10-27 8:14 ` Joel Fernandes
[not found] ` <20181027081407.GA122466-igYJUEsKnA/Ht/MElyovVYaSKrA+ACpX0E9HWUfgJXw@public.gmane.org>
2018-10-29 13:11 ` Chris Wilson
2018-11-02 0:02 ` Joel Fernandes
[not found] ` <20181102000254.GA172861-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2018-11-05 5:51 ` Joel Fernandes
[not found] ` <20181105055144.GE56850-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2018-11-05 6:03 ` Joel Fernandes
2018-11-05 20:30 ` Rodrigo Vivi
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.