Comment 97 for bug 1384342

Revision history for this message
M Nolan (mpnolan) wrote :

Did anyone find a fix for this on ValleyView? As I understand it the fixes posted to date are for Haswell/IvyBridge only.

I am seeing the issue on a 3.16.0-36.48 kernel which I confirmed has the following code block in it:

} else if (IS_VALLEYVIEW(dev)) {
                ring = &dev_priv->ring[BCS];
} else if (IS_IVYBRIDGE(dev) || IS_HASWELL(dev)) {
                ring = &dev_priv->ring[BCS];

Here is the stack trace that occurs when the problem happens:

Oct 13 12:35:58 System kernel: [ 8902.798602] Call Trace:
Oct 13 12:35:58 System kernel: [ 8902.798625] <c168d7ca> dump_stack+0x41/0x52
Oct 13 12:35:58 System kernel: [ 8902.798640] <c105c3ae> warn_slowpath_common+0x7e/0xa0
Oct 13 12:35:58 System kernel: [ 8902.798799] <f8555ae7> ? intel_crtc_wait_for_pending_flips+0x137/0x140 i915
Oct 13 12:35:58 System kernel: [ 8902.798950] <f8555ae7> ? intel_crtc_wait_for_pending_flips+0x137/0x140 i915
Oct 13 12:35:58 System kernel: [ 8902.798963] <c105c472> warn_slowpath_null+0x22/0x30
Oct 13 12:35:58 System kernel: [ 8902.799114] <f8555ae7> intel_crtc_wait_for_pending_flips+0x137/0x140 i915
Oct 13 12:35:58 System kernel: [ 8902.799128] <c109a690> ? prepare_to_wait_event+0xd0/0xd0
Oct 13 12:35:58 System kernel: [ 8902.799281] <f855e8c3> intel_crtc_set_config+0x813/0xba0 i915
Oct 13 12:35:58 System kernel: [ 8902.799366] <f839864e> drm_mode_set_config_internal+0x4e/0xb0 drm
Oct 13 12:35:58 System kernel: [ 8902.799514] <f8551240> ? intel_reset_dpio+0x1a0/0x1a0 i915
Oct 13 12:35:58 System kernel: [ 8902.799549] <f836965a> restore_fbdev_mode+0xaa/0xe0 drm_kms_helper
Oct 13 12:35:58 System kernel: [ 8902.799583] <f836af6e> drm_fb_helper_restore_fbdev_mode_unlocked+0x1e/0x50 drm_kms_helper
Oct 13 12:35:58 System kernel: [ 8902.799616] <f836afc2> drm_fb_helper_set_par+0x22/0x50 drm_kms_helper
Oct 13 12:35:58 System kernel: [ 8902.799631] <c1384ddd> fb_set_var+0x1bd/0x410
Oct 13 12:35:58 System kernel: [ 8902.799644] <c108cece> ? update_cfs_rq_blocked_load+0x11e/0x180
Oct 13 12:35:58 System kernel: [ 8902.799658] <c108fb1b> ? update_curr+0x12b/0x1e0
Oct 13 12:35:58 System kernel: [ 8902.799675] <c137c9de> fbcon_blank+0x1ee/0x2e0
Oct 13 12:35:58 System kernel: [ 8902.799694] <c13feca6> do_unblank_screen+0xa6/0x1c0
Oct 13 12:35:58 System kernel: [ 8902.799709] <c13f6111> complete_change_console+0x51/0xe0
Oct 13 12:35:58 System kernel: [ 8902.799722] <c13f7144> vt_ioctl+0xfa4/0x1080
Oct 13 12:35:58 System kernel: [ 8902.799734] <c11c4a77> ? fsnotify_destroy_event+0x27/0x40
Oct 13 12:35:58 System kernel: [ 8902.799745] <c11c68a3> ? inotify_handle_event+0x103/0x160
Oct 13 12:35:58 System kernel: [ 8902.799767] <c13f61a0> ? complete_change_console+0xe0/0xe0
Oct 13 12:35:58 System kernel: [ 8902.799778] <c13ebf83> tty_ioctl+0x233/0xa30
Oct 13 12:35:58 System kernel: [ 8902.799793] <c11c474f> ? fsnotify+0x1ef/0x2c0
Oct 13 12:35:58 System kernel: [ 8902.799804] <c13ebd50> ? no_tty+0x30/0x30
Oct 13 12:35:58 System kernel: [ 8902.799817] <c119f6d2> do_vfs_ioctl+0x2f2/0x4f0
Oct 13 12:35:58 System kernel: [ 8902.799829] <c11a27ae> ? dput+0x1e/0x150
Oct 13 12:35:58 System kernel: [ 8902.799843] <c1190a51> ? __sb_end_write+0x31/0x70
Oct 13 12:35:58 System kernel: [ 8902.799854] <c118eebd> ? vfs_write+0x15d/0x1d0
Oct 13 12:35:58 System kernel: [ 8902.799867] <c11a81e2> ? __fget_light+0x22/0x60
Oct 13 12:35:58 System kernel: [ 8902.799879] <c119f930> SyS_ioctl+0x60/0x90
Oct 13 12:35:58 System kernel: [ 8902.799893] <c1694bdf> sysenter_do_call+0x12/0x12
Oct 13 12:35:58 System kernel: [ 8902.799901] --[ end trace e3f9449caabb831e ]--

When this happens we are running a screensaver-like animation, cycling images with scaling effects. I am not sure if the screen freezes when the animation is clicked (to wake up the screensaver) or if it is already frozen by that time. The bug occurs sporadically. For the above stack trace, I believe what I actually did was tried to switch to a VT with ctrl+alt+F2 -- that would explain the tty_ioctl stuff, I think? When the problem occurs, there is not always a stack trace.