RHEL7.1: Xorg graphical display freezes when mini display port cable is plugged in - 3.10.0-229.el7 WARNING: at drivers/gpu/drm/drm_dp_mst_topology.c:1272 process_single_tx_qlock+0x4b6/0x540 [drm_kms_helper]()

Solution In Progress - Updated -

Issue

  • After upgrading to kernel 3.10.0-229.el7 from 3.10.0-123.el7, plugging in a mini display port cable to Lenovo thinkpad causes graphical display / Xorg to freeze
  • The following backtrace is seen in abrt kernel log / dmesg
WARNING: at drivers/gpu/drm/drm_dp_mst_topology.c:1272 process_single_tx_qlock+0x4b6/0x540 [drm_kms_helper]()
fail
Modules linked in: i915 crct10dif_pclmul crct10dif_common crc32_pclmul crc32c_intel i2c_algo_bit drm_kms_helper ghash_clmulni_intel ahci aesni_intel drm libahci glue_helper e1000e lrw libata gf128mul ablk_helper cryptd ptp pps_core i2c_core video dm_mirror dm_region_hash dm_log dm_mod
CPU: 0 PID: 188 Comm: kworker/0:3 Not tainted 3.10.0-267.el7.x86_64 #1
Hardware name: LENOVO 20EGS0R600/20EGS0R600, BIOS GNET71WW (2.19 ) 02/05/2015
Workqueue: events_long drm_dp_mst_link_probe_work [drm_kms_helper]
 ffff8804638bf8c8 000000002a9533a0 ffff8804638bf880 ffffffff8161eb7e
 ffff8804638bf8b8 ffffffff81071540 000000000000000c 0000000000001000
 000000000000000c 0000000000000000 ffff880463d35618 ffff8804638bf920
Call Trace:
 [<ffffffff8161eb7e>] dump_stack+0x19/0x1b
 [<ffffffff81071540>] warn_slowpath_common+0x70/0xb0
 [<ffffffff810715dc>] warn_slowpath_fmt+0x5c/0x80
 [<ffffffffa019f206>] process_single_tx_qlock+0x4b6/0x540 [drm_kms_helper]
 [<ffffffff810a4be8>] ? __wake_up_common+0x58/0x90
 [<ffffffffa019f2e0>] process_single_down_tx_qlock+0x50/0x110 [drm_kms_helper]
 [<ffffffffa019f3ee>] drm_dp_queue_down_tx+0x4e/0x60 [drm_kms_helper]
 [<ffffffffa01a2728>] drm_dp_mst_i2c_xfer+0x198/0x220 [drm_kms_helper]
 [<ffffffff81270150>] ? TSS_checkhmac2.constprop.6+0x2a0/0x320
 [<ffffffff8127d910>] ? inode_doinit_with_dentry+0x210/0x680
 [<ffffffff811b4655>] ? kmem_cache_alloc+0x35/0x1d0
 [<ffffffffa00561fc>] __i2c_transfer+0x5c/0x70 [i2c_core]
 [<ffffffffa0056c2c>] i2c_transfer+0x5c/0xc0 [i2c_core]
 [<ffffffffa0127c95>] drm_do_probe_ddc_edid+0xe5/0x160 [drm]
 [<ffffffffa012941e>] drm_get_edid+0x3e/0x410 [drm]
 [<ffffffffa01a2449>] drm_dp_add_port+0x399/0x420 [drm_kms_helper]
 [<ffffffff81080038>] ? ptrace_traceme+0x68/0x80
 [<ffffffff81621d3d>] ? schedule_timeout+0x17d/0x2d0
 [<ffffffff81082470>] ? internal_add_timer+0x70/0x70
 [<ffffffff8109c506>] ? finish_wait+0x56/0x70
 [<ffffffff81622312>] ? mutex_lock+0x12/0x2f
 [<ffffffffa019e4ce>] ? drm_dp_mst_wait_tx_reply+0xfe/0x1f0 [drm_kms_helper]
 [<ffffffff8109c680>] ? wake_up_atomic_t+0x30/0x30
 [<ffffffffa01a1f7c>] drm_dp_send_link_address+0xdc/0x210 [drm_kms_helper]
 [<ffffffff810135c6>] ? __switch_to+0x136/0x4a0
 [<ffffffffa01a255d>] drm_dp_check_and_send_link_address+0x8d/0xa0 [drm_kms_helper]
 [<ffffffffa01a258c>] drm_dp_mst_link_probe_work+0x1c/0x20 [drm_kms_helper]
 [<ffffffff810933fb>] process_one_work+0x17b/0x470
 [<ffffffff810941cb>] worker_thread+0x11b/0x400
 [<ffffffff810940b0>] ? rescuer_thread+0x400/0x400
 [<ffffffff8109b68f>] kthread+0xcf/0xe0
 [<ffffffff8109b5c0>] ? kthread_create_on_node+0x140/0x140
 [<ffffffff8162f018>] ret_from_fork+0x58/0x90
 [<ffffffff8109b5c0>] ? kthread_create_on_node+0x140/0x140                                                                                                                 

Environment

  • Red Hat Enterprise Linux 7.1
    • kernel 3.10.0-229.el7 or above
    • Xorg graphical display
    • mini display port cable connected to display port capable monitor

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content