On Tue, 02 Aug 2016, Jiri Kosina <jikos@xxxxxxxxxx> wrote: > On Mon, 1 Aug 2016, Linus Torvalds wrote: > >> > This is the main drm pull request for 4.8, I'm down with a cold at the moment >> > so hopefully this isn't in too bad a state, I finished pulling stuff last >> > week mostly (nouveau fixes just went in today), so only this message should >> > be influenced by illness. Apologies to anyone who's major feature I missed :-) >> > >> > i915: >> > BXT support enabled by default >> > GVT-g infrastructure >> > GuC command submission and fixes >> > BXT workarounds >> > SKL/BKL workarounds >> > Demidlayering device registration >> > Thundering herd fixes >> > Missing pci ids >> > Atomic updates >> >> Hmm. I did the merge and pushed it out, but testing it on my laptop >> shows some very annoying flickering problem. > > In addition to that, what I see with current git (HEAD == 731c7d3a205, > i.e. the drm merge) is lockdep report during bootup about AB-BA between > mode_config.mutex and fb_notifier_list rwsem; will probably not have time > to look into it more (look at the code and / or bisect) until tomorrow, so > sending out early as a heads-up. > > Also, trying to suspend the machine to disk hangs, with the "suspend" LED > constantly blinking, LCD being blank, but the machine never actually > powering off. Not sure whether it might not be the very deadlock actually > triggering for real. There was [1] before my vacation to fix this, but it doesn't seem to have gone anywhere since. And it doesn't refer what caused the lockdep splat to begin with. BR, Jani. [1] http://patchwork.freedesktop.org/patch/msgid/1467286256-8870-1-git-send-email-chris@xxxxxxxxxxxxxxxxxx > > > [ 8.731638] fbcon: inteldrmfb (fb0) is primary device > > [ 8.732611] ====================================================== > [ 8.732612] [ INFO: possible circular locking dependency detected ] > [ 8.732614] 4.7.0-10753-g731c7d3 #459 Not tainted > [ 8.732614] ------------------------------------------------------- > [ 8.732615] kworker/u8:3/60 is trying to acquire lock: > [ 8.732650] (&dev->mode_config.mutex){+.+.+.}, at: [<ffffffffc02bfd00>] drm_modeset_lock_all+0x40/0x120 [drm] > [ 8.732651] > but task is already holding lock: > [ 8.732657] ((fb_notifier_list).rwsem){++++.+}, at: [<ffffffff8d08fe2a>] __blocking_notifier_call_chain+0x3a/0x70 > [ 8.732658] > which lock already depends on the new lock. > > [ 8.732658] > the existing dependency chain (in reverse order) is: > [ 8.732661] > -> #1 ((fb_notifier_list).rwsem){++++.+}: > [ 8.732665] [<ffffffff8d0c22d0>] lock_acquire+0xb0/0x1e0 > [ 8.732669] [<ffffffff8d6a0b25>] down_write+0x55/0xc0 > [ 8.732671] [<ffffffff8d08ffb1>] blocking_notifier_chain_register+0x21/0xb0 > [ 8.732674] [<ffffffff8d3d1318>] fb_register_client+0x18/0x20 > [ 8.732676] [<ffffffff8d3d0b88>] backlight_device_register+0x138/0x250 > [ 8.732746] [<ffffffffc0568912>] intel_backlight_device_register+0xa2/0x160 [i915] > [ 8.732791] [<ffffffffc053735e>] intel_connector_register+0xe/0x10 [i915] > [ 8.732809] [<ffffffffc02ae389>] drm_connector_register+0x49/0x80 [drm] > [ 8.732827] [<ffffffffc02b28a0>] drm_modeset_register_all+0x1d0/0x260 [drm] > [ 8.732843] [<ffffffffc02a9c22>] drm_dev_register+0xc2/0xd0 [drm] > [ 8.732878] [<ffffffffc04a6ce5>] i915_driver_load+0x745/0x13e0 [i915] > [ 8.732914] [<ffffffffc04b173f>] i915_pci_probe+0x4f/0x70 [i915] > [ 8.732917] [<ffffffff8d3af7d5>] local_pci_probe+0x45/0xa0 > [ 8.732920] [<ffffffff8d3b0bf1>] pci_device_probe+0xe1/0x130 > [ 8.732923] [<ffffffff8d489be8>] driver_probe_device+0x1a8/0x460 > [ 8.732925] [<ffffffff8d489f6d>] __driver_attach+0xcd/0xf0 > [ 8.732927] [<ffffffff8d4878a4>] bus_for_each_dev+0x64/0xa0 > [ 8.732929] [<ffffffff8d4894ee>] driver_attach+0x1e/0x20 > [ 8.732931] [<ffffffff8d488f83>] bus_add_driver+0x1d3/0x290 > [ 8.732933] [<ffffffff8d48ad30>] driver_register+0x60/0xe0 > [ 8.732935] [<ffffffff8d3af100>] __pci_register_driver+0x60/0x70 > [ 8.732972] [<ffffffffc05ec05d>] i915_init+0x5d/0x64 [i915] > [ 8.732975] [<ffffffff8d00041d>] do_one_initcall+0x3d/0x160 > [ 8.732979] [<ffffffff8d182bfd>] do_init_module+0x60/0x1dc > [ 8.732982] [<ffffffff8d107a5e>] load_module+0x142e/0x1bf0 > [ 8.732984] [<ffffffff8d108449>] SYSC_finit_module+0xa9/0xd0 > [ 8.732986] [<ffffffff8d10848e>] SyS_finit_module+0xe/0x10 > [ 8.732989] [<ffffffff8d6a38e9>] entry_SYSCALL_64_fastpath+0x1c/0xac > [ 8.732992] > -> #0 (&dev->mode_config.mutex){+.+.+.}: > [ 8.732995] [<ffffffff8d0c1e7c>] __lock_acquire+0x16cc/0x1700 > [ 8.732997] [<ffffffff8d0c22d0>] lock_acquire+0xb0/0x1e0 > [ 8.732999] [<ffffffff8d69f2d1>] mutex_lock_nested+0x71/0x390 > [ 8.733019] [<ffffffffc02bfd00>] drm_modeset_lock_all+0x40/0x120 [drm] > [ 8.733034] [<ffffffffc047640b>] drm_fb_helper_restore_fbdev_mode_unlocked+0x2b/0x80 [drm_kms_helper] > [ 8.733043] [<ffffffffc047648c>] drm_fb_helper_set_par+0x2c/0x50 [drm_kms_helper] > [ 8.733088] [<ffffffffc05476aa>] intel_fbdev_set_par+0x1a/0x60 [i915] > [ 8.733091] [<ffffffff8d3ce2b8>] fbcon_init+0x4d8/0x550 > [ 8.733094] [<ffffffff8d450526>] visual_init+0xd6/0x130 > [ 8.733097] [<ffffffff8d452ab6>] do_bind_con_driver+0x146/0x310 > [ 8.733099] [<ffffffff8d452f66>] do_take_over_console+0x106/0x180 > [ 8.733101] [<ffffffff8d3c9777>] do_fbcon_takeover+0x57/0xb0 > [ 8.733104] [<ffffffff8d3cedd6>] fbcon_event_notify+0x726/0x870 > [ 8.733106] [<ffffffff8d08fbfe>] notifier_call_chain+0x4e/0xa0 > [ 8.733109] [<ffffffff8d08fe43>] __blocking_notifier_call_chain+0x53/0x70 > [ 8.733111] [<ffffffff8d08fe76>] blocking_notifier_call_chain+0x16/0x20 > [ 8.733113] [<ffffffff8d3d135b>] fb_notifier_call_chain+0x1b/0x20 > [ 8.733116] [<ffffffff8d3d3379>] register_framebuffer+0x239/0x320 > [ 8.733126] [<ffffffffc047670a>] drm_fb_helper_initial_config+0x25a/0x3a3 [drm_kms_helper] > [ 8.733169] [<ffffffffc0548938>] intel_fbdev_initial_config+0x18/0x30 [i915] > [ 8.733172] [<ffffffff8d091aaa>] async_run_entry_fn+0x4a/0x140 > [ 8.733174] [<ffffffff8d08771e>] process_one_work+0x1de/0x670 > [ 8.733176] [<ffffffff8d087cd5>] worker_thread+0x125/0x4a0 > [ 8.733178] [<ffffffff8d08e7e2>] kthread+0xf2/0x110 > [ 8.733181] [<ffffffff8d6a3b2f>] ret_from_fork+0x1f/0x40 > [ 8.733181] > other info that might help us debug this: > > [ 8.733182] Possible unsafe locking scenario: > > [ 8.733183] CPU0 CPU1 > [ 8.733183] ---- ---- > [ 8.733185] lock((fb_notifier_list).rwsem); > [ 8.733186] lock(&dev->mode_config.mutex); > [ 8.733187] lock((fb_notifier_list).rwsem); > [ 8.733188] lock(&dev->mode_config.mutex); > [ 8.733189] > *** DEADLOCK *** > > [ 8.733190] 6 locks held by kworker/u8:3/60: > [ 8.733194] #0: ("events_unbound"){.+.+.+}, at: [<ffffffff8d08769f>] process_one_work+0x15f/0x670 > [ 8.733198] #1: ((&entry->work)){+.+.+.}, at: [<ffffffff8d08769f>] process_one_work+0x15f/0x670 > [ 8.733201] #2: (registration_lock){+.+.+.}, at: [<ffffffff8d3d3167>] register_framebuffer+0x27/0x320 > [ 8.733205] #3: (console_lock){+.+.+.}, at: [<ffffffff8d3d3396>] register_framebuffer+0x256/0x320 > [ 8.733208] #4: (&fb_info->lock){+.+.+.}, at: [<ffffffff8d3d178d>] lock_fb_info+0x1d/0x40 > [ 8.733212] #5: ((fb_notifier_list).rwsem){++++.+}, at: [<ffffffff8d08fe2a>] __blocking_notifier_call_chain+0x3a/0x70 > [ 8.733212] > stack backtrace: > [ 8.733214] CPU: 1 PID: 60 Comm: kworker/u8:3 Not tainted 4.7.0-10753-g731c7d3 #459 > [ 8.733215] Hardware name: LENOVO 7470BN2/7470BN2, BIOS 6DET38WW (2.02 ) 12/19/2008 > [ 8.733218] Workqueue: events_unbound async_run_entry_fn > [ 8.733221] 0000000000000000 ffff95f0b77537d8 ffffffff8d36c09e ffffffff8e822d00 > [ 8.733224] ffffffff8e822d00 ffff95f0b7753818 ffffffff8d18205b ffff95f0b7753850 > [ 8.733226] ffff95f0b774d718 0000000000000005 0000000000000006 ffff95f0b774cd40 > [ 8.733227] Call Trace: > [ 8.733230] [<ffffffff8d36c09e>] dump_stack+0x67/0x99 > [ 8.733232] [<ffffffff8d18205b>] print_circular_bug+0x200/0x20e > [ 8.733235] [<ffffffff8d0c1e7c>] __lock_acquire+0x16cc/0x1700 > [ 8.733238] [<ffffffff8d0a17c8>] ? sched_clock_local+0x18/0x80 > [ 8.733240] [<ffffffff8d0c22d0>] lock_acquire+0xb0/0x1e0 > [ 8.733260] [<ffffffffc02bfd00>] ? drm_modeset_lock_all+0x40/0x120 [drm] > [ 8.733262] [<ffffffff8d69f2d1>] mutex_lock_nested+0x71/0x390 > [ 8.733281] [<ffffffffc02bfd00>] ? drm_modeset_lock_all+0x40/0x120 [drm] > [ 8.733301] [<ffffffffc02bfd00>] ? drm_modeset_lock_all+0x40/0x120 [drm] > [ 8.733304] [<ffffffff8d1ec87c>] ? kmem_cache_alloc_trace+0x25c/0x320 > [ 8.733322] [<ffffffffc02bfce5>] ? drm_modeset_lock_all+0x25/0x120 [drm] > [ 8.733341] [<ffffffffc02bfd00>] drm_modeset_lock_all+0x40/0x120 [drm] > [ 8.733351] [<ffffffffc047640b>] drm_fb_helper_restore_fbdev_mode_unlocked+0x2b/0x80 [drm_kms_helper] > [ 8.733360] [<ffffffffc047648c>] drm_fb_helper_set_par+0x2c/0x50 [drm_kms_helper] > [ 8.733403] [<ffffffffc05476aa>] intel_fbdev_set_par+0x1a/0x60 [i915] > [ 8.733406] [<ffffffff8d3ce2b8>] fbcon_init+0x4d8/0x550 > [ 8.733408] [<ffffffff8d450526>] visual_init+0xd6/0x130 > [ 8.733410] [<ffffffff8d452ab6>] do_bind_con_driver+0x146/0x310 > [ 8.733413] [<ffffffff8d452f66>] do_take_over_console+0x106/0x180 > [ 8.733415] [<ffffffff8d3c9777>] do_fbcon_takeover+0x57/0xb0 > [ 8.733417] [<ffffffff8d3cedd6>] fbcon_event_notify+0x726/0x870 > [ 8.733419] [<ffffffff8d08fbfe>] notifier_call_chain+0x4e/0xa0 > [ 8.733422] [<ffffffff8d08fe43>] __blocking_notifier_call_chain+0x53/0x70 > [ 8.733424] [<ffffffff8d08fe76>] blocking_notifier_call_chain+0x16/0x20 > [ 8.733426] [<ffffffff8d3d135b>] fb_notifier_call_chain+0x1b/0x20 > [ 8.733427] [<ffffffff8d3d3379>] register_framebuffer+0x239/0x320 > [ 8.733430] [<ffffffff8d4817c0>] ? vga_switcheroo_client_fb_set+0x60/0x70 > [ 8.733440] [<ffffffffc047670a>] drm_fb_helper_initial_config+0x25a/0x3a3 [drm_kms_helper] > [ 8.733483] [<ffffffffc0548938>] intel_fbdev_initial_config+0x18/0x30 [i915] > [ 8.733484] [<ffffffff8d091aaa>] async_run_entry_fn+0x4a/0x140 > [ 8.733486] [<ffffffff8d08771e>] process_one_work+0x1de/0x670 > [ 8.733488] [<ffffffff8d08769f>] ? process_one_work+0x15f/0x670 > [ 8.733490] [<ffffffff8d087cd5>] worker_thread+0x125/0x4a0 > [ 8.733492] [<ffffffff8d087bb0>] ? process_one_work+0x670/0x670 > [ 8.733494] [<ffffffff8d08e7e2>] kthread+0xf2/0x110 > [ 8.733497] [<ffffffff8d6a3b2f>] ret_from_fork+0x1f/0x40 > [ 8.733499] [<ffffffff8d08e6f0>] ? kthread_create_on_node+0x220/0x220 -- Jani Nikula, Intel Open Source Technology Center _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel