Bug 97254 - [SKL] [regression] divide error: 0000 / RIP skl_compute_wm on 4.8-rc1 with DMC 1.23
Summary: [SKL] [regression] divide error: 0000 / RIP skl_compute_wm on 4.8-rc1 with DM...
Status: CLOSED FIXED
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: Intel GFX Bugs mailing list
QA Contact: Intel GFX Bugs mailing list
URL:
Whiteboard:
Keywords:
Depends on: 97182
Blocks:
  Show dependency treegraph
 
Reported: 2016-08-09 09:21 UTC by Direx
Modified: 2016-09-19 10:42 UTC (History)
1 user (show)

See Also:
i915 platform: SKL
i915 features: firmware/dmc


Attachments
dmesg from 4.8-rc1 with drm.debug=0xe (25.04 KB, application/x-bzip)
2016-08-09 09:21 UTC, Direx
no flags Details

Description Direx 2016-08-09 09:21:55 UTC
Created attachment 125629 [details]
dmesg from 4.8-rc1 with drm.debug=0xe

I just tried the current 4.8-rc1 kernel and it results in blank displays and a traceback in the system log. 4.7 and earlier versions work fine.

Hardware: Thinkpad L460 in UltraDock with 2 external screens (DVI+HDMI )
Software: Arch Linux with Kernel 4.8-rc1

Could be related to bug 97182.
Comment 1 Direx 2016-08-10 14:27:26 UTC
I figured out that this is somehow related to DMC FW 1.23. When I boot 4.8-rc1 with the old v1.23 FW (required) the system crashes with a black screen and I am getting this (see attachment 125629 [details]):

[   12.705057] divide error: 0000 [#1] PREEMPT SMP
[   12.705091] Modules linked in: snd_hda_codec_realtek(+) snd_hda_codec_generic nf_conntrack_ipv6 nf_defrag_ipv6 ipt_REJECT nf_reject_ipv4 xt_tcpudp nf_conntrack_ipv4 nf_defrag_ipv4 xt_conntrack nf_conntrack ip6table_filter iptable_filter ip6_tables snd_soc_skl snd_soc_skl_ipc snd_hda_ext_core snd_soc_sst_dsp snd_soc_sst_ipc snd_soc_sst_match snd_soc_core arc4 iTCO_wdt iTCO_vendor_support psmouse serio_raw atkbd libps2 iwlmvm intel_rapl x86_pkg_temp_thermal mac80211 intel_powerclamp efi_pstore coretemp snd_hda_intel kvm rtsx_pci_ms irqbypass snd_hda_codec iwlwifi i915 snd_hwdep memstick snd_hda_core efivars cfg80211 e1000e snd_pcm i2c_i801 i2c_smbus btusb snd_timer intel_gtt ptp pps_core i2c_algo_bit joydev shpchp btrtl thinkpad_acpi mousedev evdev nvram input_leds btbcm drm_kms_helper btintel wmi
[   12.705533]  mac_hid snd bluetooth syscopyarea battery ac soundcore sysfillrect led_class i8042 sysimgblt fb_sys_fops serio drm video thermal crc16 rfkill intel_pch_thermal button tpm_tis tpm_tis_core tpm sch_fq_codel ip_tables x_tables btrfs xor raid6_pq algif_skcipher af_alg hid_logitech_hidpp hid_logitech_dj usbhid dm_crypt dm_mod rtsx_pci_sdmmc mmc_core crct10dif_pclmul crc32_pclmul crc32c_intel ghash_clmulni_intel rtsx_pci sd_mod xhci_pci xhci_hcd hid_microsoft hid jitterentropy_rng sha256_ssse3 sha256_generic hmac drbg ansi_cprng
[   12.705840] CPU: 3 PID: 438 Comm: Xorg Not tainted 4.8.0-rc1-git+ #13
[   12.705870] Hardware name: LENOVO 20FVS01500/20FVS01500, BIOS R08ET42W (1.16 ) 06/17/2016
[   12.705907] task: ffff88042f128000 task.stack: ffff8804237a8000
[   12.705935] RIP: 0010:[<ffffffffa061c839>]  [<ffffffffa061c839>] skl_compute_wm+0x1d9/0x1200 [i915]
[   12.705996] RSP: 0018:ffff8804237abad0  EFLAGS: 00010206
[   12.706022] RAX: 0000000000000000 RBX: 0000000000000000 RCX: ffff88042fc55000
[   12.706054] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000
[   12.706087] RBP: ffff8804237abba0 R08: 0000000000000001 R09: 000000000000037c
[   12.706120] R10: ffffffffa070be97 R11: 00000000ffffffff R12: ffff880428080000
[   12.706153] R13: ffff880427ed7000 R14: ffff88042fc55000 R15: ffff88042fc53800
[   12.706186] FS:  00007fa84b2e8940(0000) GS:ffff8804434c0000(0000) knlGS:0000000000000000
[   12.706224] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[   12.706251] CR2: 00007fa84b3b9000 CR3: 0000000423787000 CR4: 00000000003406e0
[   12.706284] Stack:
[   12.706296]  ffff880428080000 ffff880428080000 ffff88042376d320 0000000000000008
[   12.706337]  0000000000000001 ffff88042fc53800 ffff88042fc55000 0000000000000000
[   12.706378]  ffff880428080000 ffff880427ed7000 ffff88042fc5527c ffffffffa0689d7d
[   12.706419] Call Trace:
[   12.706451]  [<ffffffffa0689d7d>] ? intel_crtc_atomic_check+0x18d/0x220 [i915]
[   12.706501]  [<ffffffffa068cb67>] intel_atomic_check+0x9e7/0x11c0 [i915]
[   12.706534]  [<ffffffff81313aa3>] ? idr_alloc+0x83/0x100
[   12.706566]  [<ffffffffa02d73d7>] drm_atomic_check_only+0x187/0x610 [drm]
[   12.706602]  [<ffffffffa02d8023>] ? drm_atomic_replace_property_blob_from_id.isra.7+0x53/0x90 [drm]
[   12.706647]  [<ffffffffa02d7877>] drm_atomic_commit+0x17/0x60 [drm]
[   12.706680]  [<ffffffffa04dec3c>] drm_atomic_helper_legacy_gamma_set+0x14c/0x1a0 [drm_kms_helper]
[   12.706689]  [<ffffffffa067c5fb>] intel_atomic_legacy_gamma_set+0x1b/0xa0 [i915]
[   12.706689]  [<ffffffffa02cb9f1>] drm_mode_gamma_set_ioctl+0x141/0x150 [drm]
[   12.706689]  [<ffffffffa02bcd36>] drm_ioctl+0x2e6/0x4c0 [drm]
[   12.706689]  [<ffffffffa02cb8b0>] ? drm_mode_connector_property_set_ioctl+0x60/0x60 [drm]
[   12.706689]  [<ffffffff8121ecc4>] ? __vfs_write+0xe4/0x140
[   12.706689]  [<ffffffff81232682>] do_vfs_ioctl+0xa2/0x5d0
[   12.706689]  [<ffffffff810e6197>] ? percpu_up_read+0x17/0x40
[   12.706689]  [<ffffffff8123d697>] ? __fget+0x77/0xb0
[   12.706689]  [<ffffffff81232c29>] SyS_ioctl+0x79/0x90
[   12.706689]  [<ffffffff8163a9b2>] entry_SYSCALL_64_fastpath+0x1a/0xa4
[   12.706689] Code: 19 c9 d3 e0 31 d2 48 8b 8d 60 ff ff ff 41 81 e1 80 01 00 00 83 e8 01 41 81 c1 fc 01 00 00 21 f8 89 c7 f3 0f b8 c7 90 41 0f af c1 <f7> f6 31 d2 89 c7 48 63 c3 48 8d 0c 81 48 89 45 c0 44 89 c8 f7 
[   12.706689] RIP  [<ffffffffa061c839>] skl_compute_wm+0x1d9/0x1200 [i915]
[   12.706689]  RSP <ffff8804237abad0>
[   12.716770] ---[ end trace 2cba5b21f2b23959 ]---

When I change the code in intel_csr.c to load DMC FW v1.26 the system boots fine, without any call traces.
Comment 2 Direx 2016-08-29 09:39:59 UTC
Issue is fixed in 4.8-rc4 by 177d91aaea4bcafb29232336bafaa521b85286aa.


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.