Bug 95161 - Crash when docking Thinkpad X250 with DP on dock connected
Summary: Crash when docking Thinkpad X250 with DP on dock connected
Status: RESOLVED OBSOLETE
Alias: None
Product: Drivers
Classification: Unclassified
Component: Video(DRI - Intel) (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: intel-gfx-bugs@lists.freedesktop.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-03-20 16:29 UTC by Yannic Schröder
Modified: 2015-10-07 10:07 UTC (History)
2 users (show)

See Also:
Kernel Version: 3.18.4 - 4.0.0rc4
Subsystem:
Regression: No
Bisected commit-id:


Attachments

Description Yannic Schröder 2015-03-20 16:29:44 UTC
When I dock my Thinkpad X250 with a monitor connected via DisplayPort to the dock the system crashes.

The bug starts with kernel 3.18.4, on 3.18.3 it works fine.
I have tested several different kernels. Even 4.0.0rc4 still shows this error.

If there is no monitor connected via DP to the dock it does not crash when docking.

It also does not crash if the monitor is connected directly to the computer. Attaching and detaching it works fine.

Also docking the computer and then attaching the DP monitor works.

Docking it while in standby and resume with DP monitor connected to the dock works.

DVI monitors connected while docking do not result in a crash.

If additional data is needed I can provide more info.

Here is my crash dump (with drm.debug=0xe enabled):

14:14:30 x kernel: [drm:intel_hpd_irq_handler] hotplug event received, stat 0x00400000, dig 0x10101210
14:14:30 x kernel: [drm:intel_hpd_irq_handler] digital hpd port C - long
14:14:30 x kernel: [drm:intel_hpd_irq_handler] Received HPD interrupt on PIN 5 - cnt: 0
14:14:30 x kernel: [drm:intel_dp_hpd_pulse] got hpd irq on port C - long
14:14:30 x kernel: [drm:drm_dp_dpcd_access] too many retries, giving up
14:14:30 x kernel: [drm:intel_dp_get_dpcd] DPCD: 12 14 c4 01 00 15 01 83 02 00 00 00 00 00 04
14:14:30 x kernel: [drm:intel_dp_get_dpcd] Displayport TPS3 supported
14:14:30 x kernel: [drm:intel_dp_probe_oui] Sink OUI: 000000
14:14:30 x kernel: [drm:intel_dp_probe_oui] Branch OUI: 90cc24
14:14:30 x kernel: [drm:intel_dp_probe_mst] Sink is MST capable
14:14:30 x kernel: [drm:intel_hpd_irq_handler] hotplug event received, stat 0x00400000, dig 0x10101210
14:14:30 x kernel: [drm:intel_hpd_irq_handler] digital hpd port C - long
14:14:30 x kernel: [drm:intel_hpd_irq_handler] Received HPD interrupt on PIN 5 - cnt: 1
14:14:30 x kernel: [drm:intel_dp_hpd_pulse] got hpd irq on port C - long
14:14:30 x kernel: [drm:intel_dp_hpd_pulse] MST device may have disappeared 1 vs 1
14:14:30 x kernel: BUG: unable to handle kernel NULL pointer dereference at 000000000000004c
14:14:30 x kernel: IP: [<ffffffffa039d963>] drm_dp_check_and_send_link_address+0x13/0xa0 [drm_kms_helper]
14:14:30 x kernel: PGD 0 
14:14:30 x kernel: Oops: 0000 [#1] PREEMPT SMP 
14:14:30 x kernel: Modules linked in: rfcomm fuse ecb uvcvideo hid_lenovo videobuf2_vmalloc videobuf2_memops videobuf2_core v4l2_common videodev media btusb joydev mousedev arc4 iwlmvm mac80211 iwlwifi snd_hda_codec_realtek snd_hda_codec_generic cfg80211 rtsx_pci_ms snd_hda_codec_hdmi memstick iTCO_wdt iTCO_vendor_support bnep bluetooth msr nls_iso8859_1 nls_cp437 coretemp intel_rapl vfat fat x86_pkg_temp_thermal intel_powerclamp kvm_intel kvm crct10dif_pclmul crc32_pclmul ghash_clmulni_intel aesni_intel aes_x86_64 lrw gf128mul glue_helper ablk_helper cryptd evdev pcspkr psmouse mac_hid serio_raw i2c_i801 lpc_ich thermal wmi battery nvram led_class rfkill tpm_tis hwmon ac tpm shpchp processor i915 button video drm_kms_helper snd_hda_intel snd_hda_controller drm snd_hda_codec snd_hwdep e1000e snd_pcm intel_gtt
14:14:30 x kernel:  i2c_algo_bit snd_timer i2c_core mei_me snd mei ptp soundcore pps_core sch_fq_codel ext4 crc16 mbcache jbd2 hid_logitech_dj usbhid hid dm_mod sd_mod rtsx_pci_sdmmc atkbd mmc_core libps2 ahci libahci libata crc32c_intel xhci_pci ehci_pci xhci_hcd ehci_hcd scsi_mod rtsx_pci usbcore usb_common i8042 serio
14:14:30 x kernel: CPU: 1 PID: 40 Comm: kworker/1:1 Tainted: G        W      3.18.4-1-ARCH #1
14:14:30 x kernel: Hardware name: LENOVO 20CLS06A00/20CLS06A00, BIOS N10ET29W (1.06 ) 02/12/2015
14:14:30 x kernel: Workqueue: events_long drm_dp_mst_link_probe_work [drm_kms_helper]
14:14:30 x kernel: task: ffff880221d2e4a0 ti: ffff8802218c0000 task.ti: ffff8802218c0000
14:14:30 x kernel: RIP: 0010:[<ffffffffa039d963>]  [<ffffffffa039d963>] drm_dp_check_and_send_link_address+0x13/0xa0 [drm_kms_helper]
14:14:30 x kernel: RSP: 0018:ffff8802218c3dc8  EFLAGS: 00010286
14:14:30 x kernel: RAX: ffff88022dc57405 RBX: ffff880221db39c8 RCX: ffff88022dc52e58
14:14:30 x kernel: RDX: ffff88022dc52e58 RSI: 0000000000000000 RDI: ffff880221db35f0
14:14:30 x kernel: RBP: ffff8802218c3de8 R08: ffff8802218c0000 R09: 0000000000000001
14:14:30 x kernel: R10: 0000000000000000 R11: 0000000000000dbc R12: ffff8802218759c0
14:14:30 x kernel: R13: ffff880221db35f0 R14: 0000000000000000 R15: ffff88022dc57400
14:14:30 x kernel: FS:  0000000000000000(0000) GS:ffff88022dc40000(0000) knlGS:0000000000000000
14:14:30 x kernel: CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
14:14:30 x kernel: CR2: 000000000000004c CR3: 0000000001811000 CR4: 00000000003407e0
14:14:30 x kernel: Stack:
14:14:30 x kernel:  ffff880221db39c8 ffff8802218759c0 ffff88022dc52e40 0000000000000000
14:14:30 x kernel:  ffff8802218c3df8 ffffffffa039da0c ffff8802218c3e48 ffffffff8108b815
14:14:30 x kernel:  ffff88022dc52e40 00ff880200000000 ffff88022dc52e40 ffff8802218759c0
14:14:30 x kernel: Call Trace:
14:14:30 x kernel:  [<ffffffffa039da0c>] drm_dp_mst_link_probe_work+0x1c/0x20 [drm_kms_helper]
14:14:30 x kernel:  [<ffffffff8108b815>] process_one_work+0x145/0x400
14:14:30 x kernel:  [<ffffffff8108bddb>] worker_thread+0x6b/0x4a0
14:14:30 x kernel:  [<ffffffff8108bd70>] ? init_pwq.part.22+0x10/0x10
14:14:30 x kernel:  [<ffffffff81090e5a>] kthread+0xea/0x100
14:14:30 x kernel:  [<ffffffff81090d70>] ? kthread_create_on_node+0x1c0/0x1c0
14:14:30 x kernel:  [<ffffffff81554e7c>] ret_from_fork+0x7c/0xb0
14:14:30 x kernel:  [<ffffffff81090d70>] ? kthread_create_on_node+0x1c0/0x1c0
14:14:30 x kernel: Code: ec fb ff e9 53 fe ff ff b8 f4 ff ff ff e9 72 fe ff ff 66 0f 1f 44 00 00 0f 1f 44 00 00 55 48 89 e5 41 56 41 55 41 54 53 49 89 fd <80> 7e 4c 00 49 89 f6 74 6c 49 8b 46 18 4d 8d 66 18 49 39 c4 48 
14:14:30 x kernel: RIP  [<ffffffffa039d963>] drm_dp_check_and_send_link_address+0x13/0xa0 [drm_kms_helper]
14:14:30 x kernel:  RSP <ffff8802218c3dc8>
14:14:30 x kernel: CR2: 000000000000004c
14:14:30 x kernel: ---[ end trace 37986fdafd975e4f ]---
14:14:30 x kernel: BUG: unable to handle kernel paging request at ffffffffffffffd8
14:14:30 x kernel: IP: [<ffffffff81091520>] kthread_data+0x10/0x20
14:14:30 x kernel: PGD 1814067 PUD 1816067 PMD 0 
14:14:30 x kernel: Oops: 0000 [#2] PREEMPT SMP 
14:14:30 x kernel: Modules linked in: rfcomm fuse ecb uvcvideo hid_lenovo videobuf2_vmalloc videobuf2_memops videobuf2_core v4l2_common videodev media btusb joydev mousedev arc4 iwlmvm mac80211 iwlwifi snd_hda_codec_realtek snd_hda_codec_generic cfg80211 rtsx_pci_ms snd_hda_codec_hdmi memstick iTCO_wdt iTCO_vendor_support bnep bluetooth msr nls_iso8859_1 nls_cp437 coretemp intel_rapl vfat fat x86_pkg_temp_thermal intel_powerclamp kvm_intel kvm crct10dif_pclmul crc32_pclmul ghash_clmulni_intel aesni_intel aes_x86_64 lrw gf128mul glue_helper ablk_helper cryptd evdev pcspkr psmouse mac_hid serio_raw i2c_i801 lpc_ich thermal wmi battery nvram led_class rfkill tpm_tis hwmon ac tpm shpchp processor i915 button video drm_kms_helper snd_hda_intel snd_hda_controller drm snd_hda_codec snd_hwdep e1000e snd_pcm intel_gtt
14:14:30 x kernel:  i2c_algo_bit snd_timer i2c_core mei_me snd mei ptp soundcore pps_core sch_fq_codel ext4 crc16 mbcache jbd2 hid_logitech_dj usbhid hid dm_mod sd_mod rtsx_pci_sdmmc atkbd mmc_core libps2 ahci libahci libata crc32c_intel xhci_pci ehci_pci xhci_hcd ehci_hcd scsi_mod rtsx_pci usbcore usb_common i8042 serio
14:14:30 x kernel: CPU: 1 PID: 40 Comm: kworker/1:1 Tainted: G      D W      3.18.4-1-ARCH #1
14:14:30 x kernel: Hardware name: LENOVO 20CLS06A00/20CLS06A00, BIOS N10ET29W (1.06 ) 02/12/2015
14:14:30 x kernel: task: ffff880221d2e4a0 ti: ffff8802218c0000 task.ti: ffff8802218c0000
14:14:30 x kernel: RIP: 0010:[<ffffffff81091520>]  [<ffffffff81091520>] kthread_data+0x10/0x20
14:14:30 x kernel: RSP: 0018:ffff8802218c38e8  EFLAGS: 00010092
14:14:30 x kernel: RAX: 0000000000000000 RBX: 0000000000000001 RCX: 0000000000000000
14:14:30 x kernel: RDX: 000000000000000c RSI: 0000000000000001 RDI: ffff880221d2e4a0
14:14:30 x kernel: RBP: ffff8802218c38e8 R08: 0000000000000000 R09: ffff8802218aee00
14:14:30 x kernel: R10: ffff88022dc5a020 R11: ffffea0001fd5600 R12: ffff88022dc53640
14:14:30 x kernel: R13: ffff88022dc53640 R14: ffff880221d2e4a0 R15: 0000000000000000
14:14:30 x kernel: FS:  0000000000000000(0000) GS:ffff88022dc40000(0000) knlGS:0000000000000000
14:14:30 x kernel: CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
14:14:30 x kernel: CR2: 0000000000000028 CR3: 0000000001811000 CR4: 00000000003407e0
14:14:30 x kernel: Stack:
14:14:30 x kernel:  ffff8802218c3908 ffffffff8108c295 ffff8802218c3908 0000000000000001
14:14:30 x kernel:  ffff8802218c3a28 ffffffff81550ad5 ffff880221d2e4a0 0000000000013640
14:14:30 x kernel:  ffff8802218c3fd8 0000000000013640 ffff8802218c3988 ffff880221d2e4a0
14:14:30 x kernel: Call Trace:
14:14:30 x kernel:  [<ffffffff8108c295>] wq_worker_sleeping+0x15/0xa0
14:14:30 x kernel:  [<ffffffff81550ad5>] __schedule+0x765/0xa50
14:14:30 x kernel:  [<ffffffff8128b3b6>] ? put_io_context+0x66/0xa0
14:14:30 x kernel:  [<ffffffff8128b49b>] ? put_io_context_active+0xab/0xd0
14:14:30 x kernel:  [<ffffffff81550de9>] schedule+0x29/0x70
14:14:30 x kernel:  [<ffffffff81075a32>] do_exit+0x882/0xb30
14:14:30 x kernel:  [<ffffffff810187ef>] oops_end+0x9f/0xe0
14:14:30 x kernel:  [<ffffffff81060133>] no_context+0x173/0x3b0
14:14:30 x kernel:  [<ffffffff8106049d>] __bad_area_nosemaphore+0x12d/0x250
14:14:30 x kernel:  [<ffffffff810ac03c>] ? load_balance+0x1bc/0x950
14:14:30 x kernel:  [<ffffffff810605d3>] bad_area_nosemaphore+0x13/0x20
14:14:30 x kernel:  [<ffffffff81060c14>] __do_page_fault+0x344/0x600
14:14:30 x kernel:  [<ffffffff810a7f5c>] ? update_curr+0xec/0x1b0
14:14:30 x kernel:  [<ffffffff810a850f>] ? dequeue_entity+0x13f/0x580
14:14:30 x kernel:  [<ffffffff810a98b1>] ? put_prev_entity+0x31/0x350
14:14:30 x kernel:  [<ffffffff810acd54>] ? pick_next_task_fair+0x144/0x520
14:14:30 x kernel:  [<ffffffff81060ef2>] do_page_fault+0x22/0x30
14:14:30 x kernel:  [<ffffffff81556dd8>] page_fault+0x28/0x30
14:14:30 x kernel:  [<ffffffffa039d963>] ? drm_dp_check_and_send_link_address+0x13/0xa0 [drm_kms_helper]
14:14:30 x kernel:  [<ffffffffa039da0c>] drm_dp_mst_link_probe_work+0x1c/0x20 [drm_kms_helper]
14:14:30 x kernel:  [<ffffffff8108b815>] process_one_work+0x145/0x400
14:14:30 x kernel:  [<ffffffff8108bddb>] worker_thread+0x6b/0x4a0
14:14:30 x kernel:  [<ffffffff8108bd70>] ? init_pwq.part.22+0x10/0x10
14:14:30 x kernel:  [<ffffffff81090e5a>] kthread+0xea/0x100
14:14:30 x kernel:  [<ffffffff81090d70>] ? kthread_create_on_node+0x1c0/0x1c0
14:14:30 x kernel:  [<ffffffff81554e7c>] ret_from_fork+0x7c/0xb0
14:14:30 x kernel:  [<ffffffff81090d70>] ? kthread_create_on_node+0x1c0/0x1c0
14:14:30 x kernel: Code: 00 48 89 e5 5d 48 8b 40 c8 48 c1 e8 02 83 e0 01 c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 48 8b 87 f0 04 00 00 55 48 89 e5 <48> 8b 40 d8 5d c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 
14:14:30 x kernel: RIP  [<ffffffff81091520>] kthread_data+0x10/0x20
14:14:30 x kernel:  RSP <ffff8802218c38e8>
14:14:30 x kernel: CR2: ffffffffffffffd8
14:14:30 x kernel: ---[ end trace 37986fdafd975e50 ]---
14:14:30 x kernel: Fixing recursive fault but reboot is needed!
Comment 1 Jani Nikula 2015-10-07 10:07:55 UTC
We seem to have neglected this bug. Apologies.

If the problem persists with latest kernels, please file a bug at the freedesktop.org bugzilla [1], referencing this bug. Thank you.

[1] https://bugs.freedesktop.org/enter_bug.cgi?product=DRI&component=DRM/Intel

Note You need to log in before you can comment on or make changes to this bug.