Bug 76876 - [HSW bisected]igt/testdisplay cause Call Trace with HDMI/DP and eDP:WARNING: CPU: 3 PID: 3307 at drivers/gpu/drm/i915/intel_display.c:6894 hsw_enable_pc8+0x251/0x63f [i915]()
Summary: [HSW bisected]igt/testdisplay cause Call Trace with HDMI/DP and eDP:WARNING: ...
Status: CLOSED FIXED
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: unspecified
Hardware: Other Linux (All)
: medium normal
Assignee: Paulo Zanoni
QA Contact: Intel GFX Bugs mailing list
URL:
Whiteboard:
Keywords:
: 76880 (view as bug list)
Depends on:
Blocks:
 
Reported: 2014-04-01 02:37 UTC by liulei
Modified: 2017-10-06 14:38 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments
dmesg (127.38 KB, text/plain)
2014-04-01 02:38 UTC, liulei
no flags Details

Description liulei 2014-04-01 02:37:25 UTC
System Environment:
--------------------------
Platform: Haswell
Kernel: drm-intel-next-queued(243ee1643b4c37ef00bb1f3cb3e67cc021690344)


Bug detailed description:
-----------------------------
While doing testdisplay -a with eDP DP or HDMI, eDP became black screen(still have the backlight) and HDMI became inactive. The same behavior on DP.And we can find the Call Trace in dmesg:
Call Trace:
 ------------[ cut here ]------------
[  100.075414] WARNING: CPU: 0 PID: 1138 at drivers/gpu/drm/i915/intel_display.c:6894 hsw_enable_pc8+0x251/0x63f [i915]()
[  100.077039] PCH PWM1 enabled
[  100.078669] Modules linked in: dm_mod pcspkr iTCO_wdt i2c_i801 iTCO_vendor_support snd_hda_codec_realtek snd_hda_codec_generic lpc_ich mfd_core snd_hda_codec_hdmi uvcvideo videobuf2_vmalloc snd_hda_intel videobuf2_memops videobuf2_core snd_hda_codec videodev snd_hwdep snd_pcm snd_timer snd soundcore wmi battery ac acpi_cpufreq i915 video button drm_kms_helper drm
[  100.083911] CPU: 0 PID: 1138 Comm: kworker/0:2 Tainted: G        W    3.14.0-rc7_drm-intel-testing_6c275a_20140322_+ #21
[  100.085831] Hardware name: LENOVO 20267           /Cherry 3A       , BIOS 7CCN15WW 07/24/2013
[  100.087736] Workqueue: pm pm_runtime_work
[  100.089566]  0000000000000009 ffff8801536cbb38 ffffffff8181e98a 0000000000000006
[  100.091636]  ffff8801536cbb88 ffff8801536cbb78 ffffffff8103c01c ffff8801536cbb68
[  100.093503]  ffffffffa00b8ce8 ffff88008a778000 ffff8800034dd618 ffff8800034dd620
[  100.095469] Call Trace:
[  100.097343]  [<ffffffff8181e98a>] dump_stack+0x46/0x58
[  100.099141]  [<ffffffff8103c01c>] warn_slowpath_common+0x81/0x9b
[  100.101003]  [<ffffffffa00b8ce8>] ? hsw_enable_pc8+0x251/0x63f [i915]
[  100.102678]  [<ffffffff8103c0d9>] warn_slowpath_fmt+0x46/0x48
[  100.104432]  [<ffffffffa00b8ce8>] hsw_enable_pc8+0x251/0x63f [i915]
[  100.106035]  [<ffffffffa0072107>] i915_runtime_suspend+0x6b/0xbb [i915]
[  100.107692]  [<ffffffff813a958d>] ? pci_legacy_suspend+0xbc/0xbc
[  100.109232]  [<ffffffff813a95f7>] pci_pm_runtime_suspend+0x6a/0x129
[  100.110845]  [<ffffffff813a958d>] ? pci_legacy_suspend+0xbc/0xbc
[  100.112366]  [<ffffffff814439c0>] __rpm_callback+0x34/0x5b
[  100.114082]  [<ffffffff81443a3e>] rpm_callback+0x57/0x7a
[  100.115576]  [<ffffffff81444097>] rpm_suspend+0x2dc/0x4a2
[  100.117140]  [<ffffffff81444fff>] pm_runtime_work+0x7f/0x98
[  100.118621]  [<ffffffff81053ef2>] process_one_work+0x25a/0x442
[  100.120189]  [<ffffffff81053e5f>] ? process_one_work+0x1c7/0x442
[  100.121662]  [<ffffffff8105484d>] worker_thread+0x1d0/0x2cb
[  100.123236]  [<ffffffff8105467d>] ? manage_workers.isra.20+0x1c8/0x1c8
[  100.124713]  [<ffffffff81059ee8>] kthread+0xed/0xf5
[  100.126278]  [<ffffffff81059dfb>] ? __init_kthread_worker+0x5a/0x5a
[  100.127758]  [<ffffffff8182ceec>] ret_from_fork+0x7c/0xb0
[  100.129316]  [<ffffffff81059dfb>] ? __init_kthread_worker+0x5a/0x5a
[  100.130792] ---[ end trace 35d09271e5216f34 ]---


Reproduce steps:
----------------------------
1. ./testdisplay -a  (using IGT )
2. xinit &  ;  chvt 1  (this method is more effective to reproduce)

first bad commit:
----------------------------
commit a8a8bd547e6323c56295e1c5a03e30e765d42325
Author: Paulo Zanoni <paulo.r.zanoni@intel.com>
Date:   Fri Mar 7 20:08:05 2014 -0300

    drm/i915: make PC8 be part of runtime PM suspend/resume
Comment 1 liulei 2014-04-01 02:38:40 UTC
Created attachment 96692 [details]
dmesg
Comment 2 Jani Nikula 2014-04-01 10:09:12 UTC
Please *always* assign bugs to author of first bad commit. Done now.

A more complete dmesg might be useful.
Comment 3 Jani Nikula 2014-04-01 10:12:24 UTC
(In reply to comment #2)
> Please *always* assign bugs to author of first bad commit. Done now.
> 
> A more complete dmesg might be useful.

In particular, including the *first* backtrace there is. I suspect backlight does not get disabled because something else went wrong first... and there's other warnings in the dmesg as well.
Comment 4 Jani Nikula 2014-04-01 10:20:59 UTC
*** Bug 76880 has been marked as a duplicate of this bug. ***
Comment 5 Paulo Zanoni 2014-04-01 12:41:58 UTC
Hi

Can you please apply "[PATCH 1/6] drm/i915: don't schedule force_wake_timer at gen6_read" from the mailing list and test the tree again? It fixes the problem on my machine.

Here's the link to the patch: http://patchwork.freedesktop.org/patch/21687/

If that fixes your problem, we can mark this bug as a duplicate of #76544.

Thanks,
Paulo
Comment 6 liulei 2014-04-02 03:26:29 UTC
(In reply to comment #5)
> Hi

Can you please apply "[PATCH 1/6] drm/i915: don't schedule
> force_wake_timer at gen6_read" from the mailing list and test the tree
> again? It fixes the problem on my machine.

Here's the link to the patch:
> http://patchwork.freedesktop.org/patch/21687/

If that fixes your problem,
> we can mark this bug as a duplicate of #76544.

Thanks,
Paulo

Hi

The patch works. And it has been added to drm-intel-next-queued branch.
Comment 7 Paulo Zanoni 2014-04-02 14:19:41 UTC
(In reply to comment #6)
> Hi
> 
> The patch works. And it has been added to drm-intel-next-queued branch.

Closing bug. Thanks for reporting ant testing!
Comment 8 Adrien BUSTANY 2014-09-21 18:22:00 UTC
I seem to be still affected by this bug, when running kernel 3.16.2-201.fc20.x86_64 (which, according to git tag --contains, should contain the fix http://patchwork.freedesktop.org/patch/21687/ ?)... Screen turns black randomly (maybe when the GPU goes to powersave), and I need to do something (eg. invoke alt-tab window switcher, or scroll) to bring it back. The backlight appears to be on still while the screen is black. Some warnings appear in dmesg:

[14764.068319] ------------[ cut here ]------------
[14764.068326] WARNING: CPU: 3 PID: 10106 at drivers/gpu/drm/i915/intel_display.c:7257 hsw_enable_pc8+0x597/0x600 [i915]()
[14764.068327] PCH PWM1 enabled
[14764.068327] Modules linked in: rfcomm fuse xt_CHECKSUM tun ip6t_rpfilter ip6t_REJECT xt_addrtype ipt_MASQUERADE dm_thin_pool dm_persistent_data xt_conntrack dm_bio_prison libcrc32c loop ebtable_nat ebtable_broute bridge stp llc ebtable_filter ebtables ip6table_nat nf_conntrack_ipv6 nf_defrag_ipv6 nf_nat_ipv6 ip6table_mangle ip6table_security ip6table_raw ip6table_filter ip6_tables iptable_nat nf_conntrack_ipv4 vboxpci(OE) nf_defrag_ipv4 vboxnetadp(OE) nf_nat_ipv4 nf_nat vboxnetflt(OE) nf_conntrack iptable_mangle iptable_security iptable_raw bnep vboxdrv(OE) btusb bluetooth joydev iTCO_wdt iTCO_vendor_support nls_utf8 applesmc input_polldev hfsplus bcm5974 snd_hda_codec_cirrus snd_hda_codec_generic snd_hda_codec_hdmi snd_hda_intel snd_hda_controller snd_hda_codec snd_hwdep snd_seq snd_seq_device snd_pcm
[14764.068343]  x86_pkg_temp_thermal coretemp kvm_intel kvm wl(POE) cfg80211 microcode rfkill sbs sbshc snd_timer snd i2c_i801 soundcore mei_me lpc_ich shpchp mfd_core mei apple_bl nfsd auth_rpcgss nfs_acl lockd sunrpc dm_crypt crct10dif_pclmul crc32_pclmul crc32c_intel i915 i2c_algo_bit drm_kms_helper uas ghash_clmulni_intel drm usb_storage i2c_core video
[14764.068353] CPU: 3 PID: 10106 Comm: kworker/3:0 Tainted: P        W  OE 3.16.2-201.fc20.x86_64 #1
[14764.068354] Hardware name: Apple Inc. MacBookPro11,1/Mac-189A3D4F975D5FFC, BIOS MBP111.88Z.0138.B03.1310291227 10/29/2013
[14764.068355] Workqueue: pm pm_runtime_work
[14764.068356]  0000000000000000 00000000363eea1a ffff88042d9d7bf8 ffffffff81706e31
[14764.068357]  ffff88042d9d7c40 ffff88042d9d7c30 ffffffff8108d0ad ffff880455030000
[14764.068359]  ffff880455c48b68 ffff880455c48b70 ffff880458ad9098 ffff880458ad9098
[14764.068360] Call Trace:
[14764.068361]  [<ffffffff81706e31>] dump_stack+0x45/0x56
[14764.068363]  [<ffffffff8108d0ad>] warn_slowpath_common+0x7d/0xa0
[14764.068364]  [<ffffffff8108d12c>] warn_slowpath_fmt+0x5c/0x80
[14764.068373]  [<ffffffffa011cc47>] hsw_enable_pc8+0x597/0x600 [i915]
[14764.068379]  [<ffffffffa00c59bd>] intel_runtime_suspend+0x1cd/0x8a0 [i915]
[14764.068381]  [<ffffffff813a0301>] pci_pm_runtime_suspend+0x61/0x140
[14764.068383]  [<ffffffff8147afe1>] __rpm_callback+0x31/0x80
[14764.068384]  [<ffffffff8147b054>] rpm_callback+0x24/0x80
[14764.068385]  [<ffffffff8147b1d1>] rpm_suspend+0x121/0x630
[14764.068386]  [<ffffffff8147c79a>] pm_runtime_work+0x7a/0xb0
[14764.068388]  [<ffffffff810a90c6>] process_one_work+0x176/0x430
[14764.068390]  [<ffffffff810a979d>] worker_thread+0x11d/0x530
[14764.068391]  [<ffffffff810a9680>] ? rescuer_thread+0x300/0x300
[14764.068393]  [<ffffffff810b0268>] kthread+0xd8/0xf0
[14764.068394]  [<ffffffff810b0190>] ? insert_kthread_work+0x40/0x40
[14764.068396]  [<ffffffff8170e3bc>] ret_from_fork+0x7c/0xb0
[14764.068397]  [<ffffffff810b0190>] ? insert_kthread_work+0x40/0x40
[14764.068398] ---[ end trace c805e8f009ce6898 ]---
[14775.978146] [drm] Enabling RC6 states: RC6 on, RC6p off, RC6pp off
[14875.106780] ------------[ cut here ]------------


There are several line variants for the same stack trace (all in intel_display.c):

[14495.986462] WARNING: CPU: 0 PID: 28580 at drivers/gpu/drm/i915/intel_display.c:7245 hsw_enable_pc8+0x485/0x600 [i915]()
[14495.986601] WARNING: CPU: 0 PID: 28580 at drivers/gpu/drm/i915/intel_display.c:7251 hsw_enable_pc8+0x5f4/0x600 [i915]()
[14495.986698] WARNING: CPU: 0 PID: 28580 at drivers/gpu/drm/i915/intel_display.c:7253 hsw_enable_pc8+0x5d5/0x600 [i915]()
[14495.986798] WARNING: CPU: 0 PID: 28580 at drivers/gpu/drm/i915/intel_display.c:7257 hsw_enable_pc8+0x597/0x600 [i915]()

Those are the current driver parameters:

/sys/module/i915/parameters/disable_display = N
/sys/module/i915/parameters/disable_power_well = 1
/sys/module/i915/parameters/disable_vtd_wa = N
/sys/module/i915/parameters/enable_cmd_parser = 1
/sys/module/i915/parameters/enable_fbc = -1
/sys/module/i915/parameters/enable_hangcheck = Y
/sys/module/i915/parameters/enable_ips = 1
/sys/module/i915/parameters/enable_ppgtt = 1
/sys/module/i915/parameters/enable_psr = 0
/sys/module/i915/parameters/enable_rc6 = 1
/sys/module/i915/parameters/fastboot = Y
/sys/module/i915/parameters/invert_brightness = 0
/sys/module/i915/parameters/lvds_channel_mode = 0
/sys/module/i915/parameters/lvds_downclock = 1
/sys/module/i915/parameters/lvds_use_ssc = -1
/sys/module/i915/parameters/modeset = -1
/sys/module/i915/parameters/panel_ignore_lid = 1
/sys/module/i915/parameters/powersave = 1
/sys/module/i915/parameters/prefault_disable = N
/sys/module/i915/parameters/preliminary_hw_support = 0
/sys/module/i915/parameters/reset = Y
/sys/module/i915/parameters/semaphores = -1
/sys/module/i915/parameters/vbt_sdvo_panel_type = -1
Comment 9 Jani Nikula 2014-09-23 08:11:24 UTC
Adrien, can you reproduce the problem with v3.17 or drm-intel-nightly branch from http://cgit.freedesktop.org/drm-intel.
Comment 10 Elizabeth 2017-10-06 14:38:52 UTC
Closing old verified.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.