Bug 78401

Summary: Call traces from i915 referencing drm_modeset_lock / drm_modeset_drop_locks
Product: Drivers Reporter: Alan Bartlett (ajb)
Component: Video(DRI - Intel)Assignee: Daniel Vetter (daniel)
Status: RESOLVED CODE_FIX    
Severity: normal CC: ajb, intel-gfx-bugs, toracat, ville.syrjala
Priority: P3    
Hardware: x86-64   
OS: Linux   
Kernel Version: 3.16-rc1 Subsystem:
Regression: No Bisected commit-id:
Attachments: dmesg output
Output returned from lspci -nnv

Description Alan Bartlett 2014-06-19 15:04:29 UTC
Created attachment 140401 [details]
dmesg output

Hardware -- Dell Latitude E5500

lspci -nn | grep Graphics returns --

00:02.0 VGA compatible controller [0300]: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller [8086:2a42] (rev 07)
00:02.1 Display controller [0380]: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller [8086:2a43] (rev 07)

Call traces --

[    8.674057] ------------[ cut here ]------------
[    8.674087] WARNING: CPU: 0 PID: 274 at drivers/gpu/drm/drm_modeset_lock.c:108 drm_modeset_lock+0xa6/0xc0 [drm]()
[    8.674090] Modules linked in: joydev pcspkr i915(+) i2c_algo_bit drm_kms_helper drm i2c_i801 serio_raw ptp lpc_ich soundcore pps_core mfd_core i2c_core w
mi shpchp video parport_pc acpi_cpufreq parport xfs libcrc32c sd_mod sr_mod crc_t10dif cdrom crct10dif_common ahci libahci libata firewire_ohci firewire_core
 yenta_socket crc_itu_t
[    8.674125] CPU: 0 PID: 274 Comm: systemd-udevd Not tainted 3.16.0-0.rc1.inc1.el7.elrepo.x86_64 #1
[    8.674127] Hardware name: Dell Inc. Latitude E5500                  /0DW633, BIOS A19 06/13/2013
[    8.674129]  0000000000000000 00000000ac883064 ffff8800d841b580 ffffffff816526d5
[    8.674134]  0000000000000000 ffff8800d841b5b8 ffffffff81072c8d ffff8800d841b6e0
[    8.674137]  ffff88003781bb70 ffff88003781ba30 00000000ffffffff ffff8800d699a000
[    8.674142] Call Trace:
[    8.674150]  [<ffffffff816526d5>] dump_stack+0x45/0x56
[    8.674155]  [<ffffffff81072c8d>] warn_slowpath_common+0x7d/0xa0
[    8.674158]  [<ffffffff81072dba>] warn_slowpath_null+0x1a/0x20
[    8.674176]  [<ffffffffa022dd36>] drm_modeset_lock+0xa6/0xc0 [drm]
[    8.674208]  [<ffffffffa02e5ef2>] intel_get_load_detect_pipe+0xd2/0x540 [i915]
[    8.674212]  [<ffffffff810acee8>] ? __enqueue_entity+0x78/0x80
[    8.674214]  [<ffffffff810b30db>] ? put_prev_entity+0x5b/0x3b0
[    8.674216]  [<ffffffff810ad6c9>] ? pick_next_entity+0xa9/0x190
[    8.674219]  [<ffffffff810ade0f>] ? set_next_entity+0x5f/0x80
[    8.674241]  [<ffffffffa03112ea>] intel_tv_detect+0x12a/0x570 [i915]
[    8.674247]  [<ffffffffa027cac3>] drm_helper_probe_single_connector_modes_merge_bits+0x293/0x3a0 [drm_kms_helper]
[    8.674251]  [<ffffffffa027cbe3>] drm_helper_probe_single_connector_modes+0x13/0x20 [drm_kms_helper]
[    8.674255]  [<ffffffffa027e9a0>] drm_fb_helper_probe_connector_modes.isra.3+0x50/0x70 [drm_kms_helper]
[    8.674260]  [<ffffffffa027facd>] drm_fb_helper_initial_config+0x15d/0x4d0 [drm_kms_helper]
[    8.674280]  [<ffffffffa02cb0d2>] ? gen4_write32+0x52/0xb0 [i915]
[    8.674299]  [<ffffffffa02b9efd>] ? i915_hpd_irq_setup+0xcd/0xe0 [i915]
[    8.674319]  [<ffffffffa02f173f>] intel_fbdev_initial_config+0x1f/0x30 [i915]
[    8.674342]  [<ffffffffa03150e9>] i915_driver_load+0xeb9/0xf50 [i915]
[    8.674346]  [<ffffffff812fe0b8>] ? kobject_uevent_env+0x178/0x690
[    8.674349]  [<ffffffff8140c1c7>] ? get_device+0x17/0x30
[    8.674352]  [<ffffffff81411ca5>] ? klist_class_dev_get+0x15/0x20
[    8.674355]  [<ffffffff81640a5a>] ? klist_add_tail+0x3a/0x40
[    8.674357]  [<ffffffff8140db59>] ? device_add+0x219/0x630
[    8.674367]  [<ffffffffa021d476>] ? drm_sysfs_device_add+0xd6/0x120 [drm]
[    8.674376]  [<ffffffffa021995d>] drm_dev_register+0xad/0x100 [drm]
[    8.674385]  [<ffffffffa021c4ef>] drm_get_pci_dev+0x8f/0x1f0 [drm]
[    8.674401]  [<ffffffffa028b4bb>] i915_pci_probe+0x3b/0x60 [i915]
[    8.674404]  [<ffffffff813354a5>] local_pci_probe+0x45/0xa0
[    8.674407]  [<ffffffff81336655>] ? pci_match_device+0xe5/0x110
[    8.674409]  [<ffffffff813367b9>] pci_device_probe+0xf9/0x150
[    8.674412]  [<ffffffff81410dd0>] driver_probe_device+0x90/0x3c0
[    8.674415]  [<ffffffff814111d3>] __driver_attach+0x93/0xa0
[    8.674417]  [<ffffffff81411140>] ? __device_attach+0x40/0x40
[    8.674419]  [<ffffffff8140ed13>] bus_for_each_dev+0x73/0xc0
[    8.674422]  [<ffffffff8141086e>] driver_attach+0x1e/0x20
[    8.674424]  [<ffffffff81410450>] bus_add_driver+0x180/0x250
[    8.674427]  [<ffffffff814119b4>] driver_register+0x64/0xf0
[    8.674429]  [<ffffffff81334e3c>] __pci_register_driver+0x4c/0x50
[    8.674438]  [<ffffffffa021c75a>] drm_pci_init+0x10a/0x140 [drm]
[    8.674441]  [<ffffffffa036b000>] ? 0xffffffffa036afff
[    8.674456]  [<ffffffffa036b089>] i915_init+0x89/0x90 [i915]
[    8.674459]  [<ffffffff81002144>] do_one_initcall+0xd4/0x210
[    8.674462]  [<ffffffff811a2f82>] ? __vunmap+0xb2/0x100
[    8.674465]  [<ffffffff810f1938>] load_module+0x2018/0x2520
[    8.674469]  [<ffffffff810ed320>] ? store_uevent+0x70/0x70
[    8.674472]  [<ffffffff810edef9>] ? copy_module_from_fd.isra.47+0x129/0x180
[    8.674474]  [<ffffffff810f1ff6>] SyS_finit_module+0xa6/0xd0
[    8.674478]  [<ffffffff8165a8a9>] system_call_fastpath+0x16/0x1b
[    8.674480] ---[ end trace 40b86ef82f5d3fe8 ]---

[    8.674484] ------------[ cut here ]------------
[    8.674495] WARNING: CPU: 0 PID: 274 at drivers/gpu/drm/drm_modeset_lock.c:108 drm_modeset_lock+0xa6/0xc0 [drm]()
[    8.674496] Modules linked in: joydev pcspkr i915(+) i2c_algo_bit drm_kms_helper drm i2c_i801 serio_raw ptp lpc_ich soundcore pps_core mfd_core i2c_core w
mi shpchp video parport_pc acpi_cpufreq parport xfs libcrc32c sd_mod sr_mod crc_t10dif cdrom crct10dif_common ahci libahci libata firewire_ohci firewire_core
 yenta_socket crc_itu_t
[    8.674514] CPU: 0 PID: 274 Comm: systemd-udevd Tainted: G        W     3.16.0-0.rc1.inc1.el7.elrepo.x86_64 #1
[    8.674515] Hardware name: Dell Inc. Latitude E5500                  /0DW633, BIOS A19 06/13/2013
[    8.674516]  0000000000000000 00000000ac883064 ffff8800d841b580 ffffffff816526d5
[    8.674519]  0000000000000000 ffff8800d841b5b8 ffffffff81072c8d ffff8800d841b6e0
[    8.674521]  ffff88003781bb70 ffff8800d8391018 0000000000000001 ffff8800d699a000
[    8.674524] Call Trace:
[    8.674526]  [<ffffffff816526d5>] dump_stack+0x45/0x56
[    8.674528]  [<ffffffff81072c8d>] warn_slowpath_common+0x7d/0xa0
[    8.674531]  [<ffffffff81072dba>] warn_slowpath_null+0x1a/0x20
[    8.674541]  [<ffffffffa022dd36>] drm_modeset_lock+0xa6/0xc0 [drm]
[    8.674562]  [<ffffffffa02e5f5e>] intel_get_load_detect_pipe+0x13e/0x540 [i915]
[    8.674565]  [<ffffffff810acee8>] ? __enqueue_entity+0x78/0x80
[    8.674567]  [<ffffffff810b30db>] ? put_prev_entity+0x5b/0x3b0
[    8.674569]  [<ffffffff810ad6c9>] ? pick_next_entity+0xa9/0x190
[    8.674571]  [<ffffffff810ade0f>] ? set_next_entity+0x5f/0x80
[    8.674593]  [<ffffffffa03112ea>] intel_tv_detect+0x12a/0x570 [i915]
[    8.674598]  [<ffffffffa027cac3>] drm_helper_probe_single_connector_modes_merge_bits+0x293/0x3a0 [drm_kms_helper]
[    8.674602]  [<ffffffffa027cbe3>] drm_helper_probe_single_connector_modes+0x13/0x20 [drm_kms_helper]
[    8.674605]  [<ffffffffa027e9a0>] drm_fb_helper_probe_connector_modes.isra.3+0x50/0x70 [drm_kms_helper]
[    8.674609]  [<ffffffffa027facd>] drm_fb_helper_initial_config+0x15d/0x4d0 [drm_kms_helper]
[    8.674629]  [<ffffffffa02cb0d2>] ? gen4_write32+0x52/0xb0 [i915]
[    8.674648]  [<ffffffffa02b9efd>] ? i915_hpd_irq_setup+0xcd/0xe0 [i915]
[    8.674669]  [<ffffffffa02f173f>] intel_fbdev_initial_config+0x1f/0x30 [i915]
[    8.674690]  [<ffffffffa03150e9>] i915_driver_load+0xeb9/0xf50 [i915]
[    8.674694]  [<ffffffff812fe0b8>] ? kobject_uevent_env+0x178/0x690
[    8.674696]  [<ffffffff8140c1c7>] ? get_device+0x17/0x30
[    8.674698]  [<ffffffff81411ca5>] ? klist_class_dev_get+0x15/0x20
[    8.674701]  [<ffffffff81640a5a>] ? klist_add_tail+0x3a/0x40
[    8.674703]  [<ffffffff8140db59>] ? device_add+0x219/0x630
[    8.674712]  [<ffffffffa021d476>] ? drm_sysfs_device_add+0xd6/0x120 [drm]
[    8.674721]  [<ffffffffa021995d>] drm_dev_register+0xad/0x100 [drm]
[    8.674730]  [<ffffffffa021c4ef>] drm_get_pci_dev+0x8f/0x1f0 [drm]
[    8.674745]  [<ffffffffa028b4bb>] i915_pci_probe+0x3b/0x60 [i915]
[    8.674748]  [<ffffffff813354a5>] local_pci_probe+0x45/0xa0
[    8.674751]  [<ffffffff81336655>] ? pci_match_device+0xe5/0x110
[    8.674753]  [<ffffffff813367b9>] pci_device_probe+0xf9/0x150
[    8.674756]  [<ffffffff81410dd0>] driver_probe_device+0x90/0x3c0
[    8.674758]  [<ffffffff814111d3>] __driver_attach+0x93/0xa0
[    8.674761]  [<ffffffff81411140>] ? __device_attach+0x40/0x40
[    8.674763]  [<ffffffff8140ed13>] bus_for_each_dev+0x73/0xc0
[    8.674765]  [<ffffffff8141086e>] driver_attach+0x1e/0x20
[    8.674767]  [<ffffffff81410450>] bus_add_driver+0x180/0x250
[    8.674770]  [<ffffffff814119b4>] driver_register+0x64/0xf0
[    8.674772]  [<ffffffff81334e3c>] __pci_register_driver+0x4c/0x50
[    8.674781]  [<ffffffffa021c75a>] drm_pci_init+0x10a/0x140 [drm]
[    8.674784]  [<ffffffffa036b000>] ? 0xffffffffa036afff
[    8.674798]  [<ffffffffa036b089>] i915_init+0x89/0x90 [i915]
[    8.674800]  [<ffffffff81002144>] do_one_initcall+0xd4/0x210
[    8.674803]  [<ffffffff811a2f82>] ? __vunmap+0xb2/0x100
[    8.674805]  [<ffffffff810f1938>] load_module+0x2018/0x2520
[    8.674808]  [<ffffffff810ed320>] ? store_uevent+0x70/0x70
[    8.674810]  [<ffffffff810edef9>] ? copy_module_from_fd.isra.47+0x129/0x180
[    8.674813]  [<ffffffff810f1ff6>] SyS_finit_module+0xa6/0xd0
[    8.674816]  [<ffffffff8165a8a9>] system_call_fastpath+0x16/0x1b
[    8.674817] ---[ end trace 40b86ef82f5d3fe9 ]---

[    8.799737] ------------[ cut here ]------------
[    8.799759] WARNING: CPU: 1 PID: 274 at drivers/gpu/drm/drm_modeset_lock.c:90 drm_modeset_drop_locks+0x6e/0x70 [drm]()
[    8.799760] Modules linked in: snd sdhci_pci sdhci mmc_core tg3 joydev pcspkr i915(+) i2c_algo_bit drm_kms_helper drm i2c_i801 serio_raw ptp lpc_ich sound
core pps_core mfd_core i2c_core wmi shpchp video parport_pc acpi_cpufreq parport xfs libcrc32c sd_mod sr_mod crc_t10dif cdrom crct10dif_common ahci libahci l
ibata firewire_ohci firewire_core yenta_socket crc_itu_t
[    8.799783] CPU: 1 PID: 274 Comm: systemd-udevd Tainted: G        W     3.16.0-0.rc1.inc1.el7.elrepo.x86_64 #1
[    8.799785] Hardware name: Dell Inc. Latitude E5500                  /0DW633, BIOS A19 06/13/2013
[    8.799786]  0000000000000000 00000000ac883064 ffff8800d841b600 ffffffff816526d5
[    8.799789]  0000000000000000 ffff8800d841b638 ffffffff81072c8d ffff8800d841b6d0
[    8.799791]  ffff8800d841b6e0 ffff8800d841b6e0 ffff8800d699a000 ffff8800d8391000
[    8.799794] Call Trace:
[    8.799800]  [<ffffffff816526d5>] dump_stack+0x45/0x56
[    8.799804]  [<ffffffff81072c8d>] warn_slowpath_common+0x7d/0xa0
[    8.799806]  [<ffffffff81072dba>] warn_slowpath_null+0x1a/0x20
[    8.799817]  [<ffffffffa022db2e>] drm_modeset_drop_locks+0x6e/0x70 [drm]
[    8.799849]  [<ffffffffa02e63a8>] intel_release_load_detect_pipe+0x48/0xf0 [i915]
[    8.799872]  [<ffffffffa03114f1>] intel_tv_detect+0x331/0x570 [i915]
[    8.799879]  [<ffffffffa027cac3>] drm_helper_probe_single_connector_modes_merge_bits+0x293/0x3a0 [drm_kms_helper]
[    8.799883]  [<ffffffffa027cbe3>] drm_helper_probe_single_connector_modes+0x13/0x20 [drm_kms_helper]
[    8.799887]  [<ffffffffa027e9a0>] drm_fb_helper_probe_connector_modes.isra.3+0x50/0x70 [drm_kms_helper]
[    8.799891]  [<ffffffffa027facd>] drm_fb_helper_initial_config+0x15d/0x4d0 [drm_kms_helper]
[    8.799911]  [<ffffffffa02cb0d2>] ? gen4_write32+0x52/0xb0 [i915]
[    8.799930]  [<ffffffffa02b9efd>] ? i915_hpd_irq_setup+0xcd/0xe0 [i915]
[    8.799951]  [<ffffffffa02f173f>] intel_fbdev_initial_config+0x1f/0x30 [i915]
[    8.799973]  [<ffffffffa03150e9>] i915_driver_load+0xeb9/0xf50 [i915]
[    8.799978]  [<ffffffff812fe0b8>] ? kobject_uevent_env+0x178/0x690
[    8.799981]  [<ffffffff8140c1c7>] ? get_device+0x17/0x30
[    8.799984]  [<ffffffff81411ca5>] ? klist_class_dev_get+0x15/0x20
[    8.799987]  [<ffffffff81640a5a>] ? klist_add_tail+0x3a/0x40
[    8.799989]  [<ffffffff8140db59>] ? device_add+0x219/0x630
[    8.799999]  [<ffffffffa021d476>] ? drm_sysfs_device_add+0xd6/0x120 [drm]
[    8.800023]  [<ffffffffa021995d>] drm_dev_register+0xad/0x100 [drm]
[    8.800033]  [<ffffffffa021c4ef>] drm_get_pci_dev+0x8f/0x1f0 [drm]
[    8.800050]  [<ffffffffa028b4bb>] i915_pci_probe+0x3b/0x60 [i915]
[    8.800054]  [<ffffffff813354a5>] local_pci_probe+0x45/0xa0
[    8.800057]  [<ffffffff81336655>] ? pci_match_device+0xe5/0x110
[    8.800060]  [<ffffffff813367b9>] pci_device_probe+0xf9/0x150
[    8.800063]  [<ffffffff81410dd0>] driver_probe_device+0x90/0x3c0
[    8.800065]  [<ffffffff814111d3>] __driver_attach+0x93/0xa0
[    8.800068]  [<ffffffff81411140>] ? __device_attach+0x40/0x40
[    8.800070]  [<ffffffff8140ed13>] bus_for_each_dev+0x73/0xc0
[    8.800072]  [<ffffffff8141086e>] driver_attach+0x1e/0x20
[    8.800075]  [<ffffffff81410450>] bus_add_driver+0x180/0x250
[    8.800077]  [<ffffffff814119b4>] driver_register+0x64/0xf0
[    8.800080]  [<ffffffff81334e3c>] __pci_register_driver+0x4c/0x50
[    8.800089]  [<ffffffffa021c75a>] drm_pci_init+0x10a/0x140 [drm]
[    8.800093]  [<ffffffffa036b000>] ? 0xffffffffa036afff
[    8.800107]  [<ffffffffa036b089>] i915_init+0x89/0x90 [i915]
[    8.800110]  [<ffffffff81002144>] do_one_initcall+0xd4/0x210
[    8.800115]  [<ffffffff811a2f82>] ? __vunmap+0xb2/0x100
[    8.800119]  [<ffffffff810f1938>] load_module+0x2018/0x2520
[    8.800122]  [<ffffffff810ed320>] ? store_uevent+0x70/0x70
[    8.800138]  [<ffffffff810edef9>] ? copy_module_from_fd.isra.47+0x129/0x180
[    8.800141]  [<ffffffff810f1ff6>] SyS_finit_module+0xa6/0xd0
[    8.800145]  [<ffffffff8165a8a9>] system_call_fastpath+0x16/0x1b
[    8.800147] ---[ end trace 40b86ef82f5d3fea ]---
Comment 1 Alan Bartlett 2014-06-19 15:07:25 UTC
Created attachment 140411 [details]
Output returned from lspci -nnv
Comment 2 Ville Syrjala 2014-06-19 15:26:56 UTC
https://patchwork.kernel.org/patch/4315611/
Comment 3 Alan Bartlett 2014-06-19 19:53:49 UTC
(In reply to Ville Syrjala from comment #2)
> https://patchwork.kernel.org/patch/4315611/

I am pleased to report that applying the above patch resolves the problem in the drivers/gpu/drm/drm_modeset_lock.c file.

However a new code trace was seen, this time originating from the g4x_wait_for_vblank function of the drivers/gpu/drm/i915/intel_display.c file.

------------[ cut here ]------------
WARNING: CPU: 0 PID: 113 at drivers/gpu/drm/i915/intel_display.c:861 g4x_wait_for_vblank+0xd5/0xf0 [i915]()
vblank wait timed out
Modules linked in: i915 drm_kms_helper video
CPU: 0 PID: 113 Comm: plymouthd Not tainted 3.16.0-0.rc1.inc2.el6.elrepo.x86_64 #1
Hardware name: Dell Inc. Latitude E5500                  /0DW633, BIOS A19 06/13/2013
 000000000000035d ffff8800dc4239c8 ffffffff8164f6b6 000000000000035d
 ffff8800dc423a18 ffff8800dc423a08 ffffffff8107146c 00000000fffb740d
 ffff8800dcfa0000 0000000000071040 000000000000000d 00000000fffb740c
Call Trace:
 [<ffffffff8164f6b6>] dump_stack+0x49/0x5b
 [<ffffffff8107146c>] warn_slowpath_common+0x8c/0xc0
 [<ffffffff81071556>] warn_slowpath_fmt+0x46/0x50
 [<ffffffffa0078465>] g4x_wait_for_vblank+0xd5/0xf0 [i915]
 [<ffffffffa00784b5>] intel_wait_for_vblank+0x35/0x130 [i915]
 [<ffffffffa00ad76b>] intel_tv_detect_type+0x10b/0x330 [i915]
 [<ffffffffa00ada65>] intel_tv_detect+0xd5/0x1c0 [i915]
 [<ffffffffa000fc1b>] drm_helper_probe_single_connector_modes_merge_bits+0x1bb/0x380 [drm_kms_helper]
 [<ffffffff81403664>] ? _object_find+0x74/0xb0
 [<ffffffffa000fe13>] drm_helper_probe_single_connector_modes+0x13/0x20 [drm_kms_helper]
 [<ffffffff81405e7c>] drm_mode_getconnector+0x40c/0x450
 [<ffffffff813f7c90>] drm_ioctl+0x350/0x630
 [<ffffffff81405a70>] ? drm_plane_force_disable+0x70/0x70
 [<ffffffff811df593>] do_vfs_ioctl+0x73/0x380
 [<ffffffff8126b1af>] ? selinux_file_ioctl+0x4f/0xf0
 [<ffffffff811df941>] SyS_ioctl+0xa1/0xb0
 [<ffffffff81653e29>] system_call_fastpath+0x16/0x1b
---[ end trace 29d16e55157f97ce ]---
Comment 4 Jani Nikula 2014-06-30 10:17:39 UTC
(In reply to Alan Bartlett from comment #3)
> (In reply to Ville Syrjala from comment #2)
> > https://patchwork.kernel.org/patch/4315611/
> 
> I am pleased to report that applying the above patch resolves the problem in
> the drivers/gpu/drm/drm_modeset_lock.c file.

Fixed since v3.16-rc2 by

commit fb54918af7e7a607af8b70ba052a35ff8acb8620
Author: Rob Clark <robdclark@gmail.com>
Date:   Sat Jun 7 10:55:39 2014 -0400

    drm: fix uninitialized acquire_ctx fields (v2)

> However a new code trace was seen, this time originating from the
> g4x_wait_for_vblank function of the drivers/gpu/drm/i915/intel_display.c
> file.

I presume this is not introduced by the above mentioned commit. Please file a new bug report for new bugs.

Thanks for the report and testing.