Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752644AbbG3Pug (ORCPT ); Thu, 30 Jul 2015 11:50:36 -0400 Received: from imap.thunk.org ([74.207.234.97]:59595 "EHLO imap.thunk.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751262AbbG3Pud (ORCPT ); Thu, 30 Jul 2015 11:50:33 -0400 Date: Thu, 30 Jul 2015 11:50:29 -0400 From: "Theodore Ts'o" To: Linus Torvalds , intel-gfx , DRI , Daniel Vetter , Mani Nikula , Ander Conselvan de Oliveira , Linux Kernel Mailing List Subject: Re: [REGRESSION] Re: i915 driver crashes on T540p if docking station attached Message-ID: <20150730155029.GA3065@thunk.org> Mail-Followup-To: Theodore Ts'o , Linus Torvalds , intel-gfx , DRI , Daniel Vetter , Mani Nikula , Ander Conselvan de Oliveira , Linux Kernel Mailing List References: <20150730004937.GA3133@thunk.org> <20150730013912.GA4068@thunk.org> <20150730144002.GY16722@phenom.ffwll.local> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150730144002.GY16722@phenom.ffwll.local> User-Agent: Mutt/1.5.23 (2014-03-12) X-SA-Exim-Connect-IP: X-SA-Exim-Mail-From: tytso@thunk.org X-SA-Exim-Scanned: No (on imap.thunk.org); SAEximRunCond expanded to false Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 14003 Lines: 161 On Thu, Jul 30, 2015 at 04:40:02PM +0200, Daniel Vetter wrote: > I have 4 patches in git://people.freedesktop.org/~danvet/drm fixes-stuff > but I couldn't test them yet since no dp mst here and I didn't find > anything that would ship faster than 1-2 weeks yet. I'll try to get some > other people here to test it meanwhile too. I've tried pulling in your patches from fixes-stuff, onto Linus's tree (without Linus's fix), and the good news is that I'm no longer crashing on boot. The *bad* news is that (a) it breaks the external monitor attached to the docking station completely (this was working with Linus's patch), and (b) it's triggering a LOCKDEP failure. So even though Linus's patch wasn't supposed to work, I think I'm going to back to it.... - Ted Jul 30 11:46:49 closure kernel: [ 4.221951] Jul 30 11:46:49 closure kernel: [ 4.221954] ====================================================== Jul 30 11:46:49 closure kernel: [ 4.221957] [ INFO: possible circular locking dependency detected ] Jul 30 11:46:49 closure kernel: [ 4.221960] 4.2.0-rc4-13906-g5f1b75cd #16 Not tainted Jul 30 11:46:49 closure kernel: [ 4.221963] ------------------------------------------------------- Jul 30 11:46:49 closure kernel: [ 4.221966] modprobe/503 is trying to acquire lock: Jul 30 11:46:49 closure kernel: [ 4.221968] (init_mutex){+.+.+.}, at: [] acpi_video_get_backlight_type+0x17/0x164 Jul 30 11:46:49 closure kernel: [ 4.221977] Jul 30 11:46:49 closure kernel: [ 4.221977] but task is already holding lock: Jul 30 11:46:49 closure kernel: [ 4.221979] (&(&backlight_notifier)->rwsem){++++..}, at: [] __blocking_notifier_call_chain+0x37/0x69 Jul 30 11:46:49 closure kernel: [ 4.221987] Jul 30 11:46:49 closure kernel: [ 4.221987] which lock already depends on the new lock. Jul 30 11:46:49 closure kernel: [ 4.221987] Jul 30 11:46:49 closure kernel: [ 4.221990] Jul 30 11:46:49 closure kernel: [ 4.221990] the existing dependency chain (in reverse order) is: Jul 30 11:46:49 closure kernel: [ 4.221995] Jul 30 11:46:49 closure kernel: [ 4.221995] -> #1 (&(&backlight_notifier)->rwsem){++++..}: Jul 30 11:46:49 closure kernel: [ 4.222001] [] lock_acquire+0x104/0x18b Jul 30 11:46:49 closure kernel: [ 4.222007] [] down_write+0x46/0x8a Jul 30 11:46:49 closure kernel: [ 4.222012] [] blocking_notifier_chain_register+0x36/0x57 Jul 30 11:46:49 closure kernel: [ 4.222017] [] backlight_register_notifier+0x18/0x1a Jul 30 11:46:49 closure kernel: [ 4.222022] [] acpi_video_get_backlight_type+0xfa/0x164 Jul 30 11:46:49 closure kernel: [ 4.222028] [] 0xffffffffc03a1e45 Jul 30 11:46:49 closure audispd: No plugins found, exiting Jul 30 11:46:49 closure kernel: [ 4.222032] [] 0xffffffffc03a28a8 Jul 30 11:46:49 closure kernel: [ 4.222036] [] do_one_initcall+0x19a/0x1af Jul 30 11:46:49 closure kernel: [ 4.222042] [] do_init_module+0x60/0x1e3 Jul 30 11:46:49 closure kernel: [ 4.222047] [] load_module+0x1c42/0x2059 Jul 30 11:46:49 closure kernel: [ 4.222052] [] SyS_finit_module+0x85/0x92 Jul 30 11:46:49 closure kernel: [ 4.222056] [] entry_SYSCALL_64_fastpath+0x16/0x73 Jul 30 11:46:49 closure kernel: [ 4.222060] Jul 30 11:46:49 closure kernel: [ 4.222060] -> #0 (init_mutex){+.+.+.}: Jul 30 11:46:49 closure kernel: [ 4.222065] [] __lock_acquire+0xc55/0xf54 Jul 30 11:46:49 closure kernel: [ 4.222070] [] lock_acquire+0x104/0x18b Jul 30 11:46:49 closure kernel: [ 4.222074] [] mutex_lock_nested+0x70/0x391 Jul 30 11:46:49 closure kernel: [ 4.222078] [] acpi_video_get_backlight_type+0x17/0x164 Jul 30 11:46:49 closure kernel: [ 4.222083] [] acpi_video_backlight_notify+0x19/0x2f Jul 30 11:46:49 closure kernel: [ 4.222088] [] notifier_call_chain+0x4c/0x71 Jul 30 11:46:49 closure kernel: [ 4.222092] [] __blocking_notifier_call_chain+0x50/0x69 Jul 30 11:46:49 closure kernel: [ 4.222098] [] blocking_notifier_call_chain+0x14/0x16 Jul 30 11:46:49 closure kernel: [ 4.222103] [] backlight_device_register+0x1df/0x1f1 Jul 30 11:46:49 closure kernel: [ 4.222108] [] intel_backlight_register+0xf0/0x157 [i915] Jul 30 11:46:49 closure kernel: [ 4.222146] [] intel_modeset_gem_init+0x158/0x164 [i915] Jul 30 11:46:49 closure kernel: [ 4.222176] [] i915_driver_load+0xf1c/0x1139 [i915] Jul 30 11:46:49 closure kernel: [ 4.222205] [] drm_dev_register+0x84/0xfd [drm] Jul 30 11:46:49 closure kernel: [ 4.222217] [] drm_get_pci_dev+0x102/0x1bc [drm] Jul 30 11:46:49 closure kernel: [ 4.222228] [] i915_pci_probe+0x4f/0x51 [i915] Jul 30 11:46:49 closure kernel: [ 4.222247] [] pci_device_probe+0x74/0xd6 Jul 30 11:46:49 closure kernel: [ 4.222253] [] driver_probe_device+0x15f/0x387 Jul 30 11:46:49 closure kernel: [ 4.222257] [] __driver_attach+0x53/0x74 Jul 30 11:46:49 closure kernel: [ 4.222262] [] bus_for_each_dev+0x6f/0x89 Jul 30 11:46:49 closure kernel: [ 4.222266] [] driver_attach+0x1e/0x20 Jul 30 11:46:49 closure kernel: [ 4.222269] [] bus_add_driver+0x140/0x238 Jul 30 11:46:49 closure kernel: [ 4.222273] [] driver_register+0x8f/0xcc Jul 30 11:46:49 closure kernel: [ 4.222278] [] __pci_register_driver+0x5e/0x62 Jul 30 11:46:49 closure kernel: [ 4.222282] [] drm_pci_init+0x58/0xda [drm] Jul 30 11:46:49 closure kernel: [ 4.222293] [] i915_init+0xa0/0xa8 [i915] Jul 30 11:46:49 closure kernel: [ 4.222312] [] do_one_initcall+0x19a/0x1af Jul 30 11:46:49 closure kernel: [ 4.222317] [] do_init_module+0x60/0x1e3 Jul 30 11:46:49 closure kernel: [ 4.222321] [] load_module+0x1c42/0x2059 Jul 30 11:46:49 closure kernel: [ 4.222325] [] SyS_finit_module+0x85/0x92 Jul 30 11:46:49 closure kernel: [ 4.222329] [] entry_SYSCALL_64_fastpath+0x16/0x73 Jul 30 11:46:49 closure kernel: [ 4.222334] Jul 30 11:46:49 closure kernel: [ 4.222334] other info that might help us debug this: Jul 30 11:46:49 closure kernel: [ 4.222334] Jul 30 11:46:49 closure kernel: [ 4.222340] Possible unsafe locking scenario: Jul 30 11:46:49 closure kernel: [ 4.222340] Jul 30 11:46:49 closure kernel: [ 4.222344] CPU0 CPU1 Jul 30 11:46:49 closure kernel: [ 4.222347] ---- ---- Jul 30 11:46:49 closure kernel: [ 4.222350] lock(&(&backlight_notifier)->rwsem); Jul 30 11:46:49 closure kernel: [ 4.222353] lock(init_mutex); Jul 30 11:46:49 closure kernel: [ 4.222357] lock(&(&backlight_notifier)->rwsem); Jul 30 11:46:49 closure kernel: [ 4.222363] lock(init_mutex); Jul 30 11:46:49 closure kernel: [ 4.222366] Jul 30 11:46:49 closure kernel: [ 4.222366] *** DEADLOCK *** Jul 30 11:46:49 closure kernel: [ 4.222366] Jul 30 11:46:49 closure kernel: [ 4.222371] 4 locks held by modprobe/503: Jul 30 11:46:49 closure kernel: [ 4.222374] #0: (&dev->mutex){......}, at: [] device_lock+0xf/0x11 Jul 30 11:46:49 closure kernel: [ 4.222381] #1: (&dev->mutex){......}, at: [] device_lock+0xf/0x11 Jul 30 11:46:49 closure kernel: [ 4.222388] #2: (drm_global_mutex){+.+.+.}, at: [] drm_dev_register+0x24/0xfd [drm] Jul 30 11:46:49 closure kernel: [ 4.222402] #3: (&(&backlight_notifier)->rwsem){++++..}, at: [] __blocking_notifier_call_chain+0x37/0x69 Jul 30 11:46:49 closure kernel: [ 4.222410] Jul 30 11:46:49 closure kernel: [ 4.222410] stack backtrace: Jul 30 11:46:49 closure kernel: [ 4.222416] CPU: 7 PID: 503 Comm: modprobe Not tainted 4.2.0-rc4-13906-g5f1b75cd #16 Jul 30 11:46:49 closure kernel: [ 4.222420] Hardware name: LENOVO 20BECTO1WW/20BECTO1WW, BIOS GMET59WW (2.07 ) 02/12/2014 Jul 30 11:46:49 closure kernel: [ 4.222425] ffffffff8280a230 ffff8800c992b5d8 ffffffff8161a71e 0000000000000006 Jul 30 11:46:49 closure kernel: [ 4.222431] ffffffff8280a230 ffff8800c992b628 ffffffff810b9adf ffffffff82265780 Jul 30 11:46:49 closure kernel: [ 4.222437] ffff880405588000 0000000000000004 ffff880405588880 0000000000000004 Jul 30 11:46:49 closure kernel: [ 4.222443] Call Trace: Jul 30 11:46:49 closure kernel: [ 4.222447] [] dump_stack+0x4c/0x65 Jul 30 11:46:49 closure kernel: [ 4.222451] [] print_circular_bug+0x1f8/0x209 Jul 30 11:46:49 closure kernel: [ 4.222455] [] __lock_acquire+0xc55/0xf54 Jul 30 11:46:49 closure kernel: [ 4.222460] [] lock_acquire+0x104/0x18b Jul 30 11:46:49 closure kernel: [ 4.222464] [] ? acpi_video_get_backlight_type+0x17/0x164 Jul 30 11:46:49 closure kernel: [ 4.222469] [] mutex_lock_nested+0x70/0x391 Jul 30 11:46:49 closure kernel: [ 4.222472] [] ? acpi_video_get_backlight_type+0x17/0x164 Jul 30 11:46:49 closure kernel: [ 4.222476] [] ? acpi_video_get_backlight_type+0x17/0x164 Jul 30 11:46:49 closure kernel: [ 4.222480] [] acpi_video_get_backlight_type+0x17/0x164 Jul 30 11:46:49 closure kernel: [ 4.222484] [] acpi_video_backlight_notify+0x19/0x2f Jul 30 11:46:49 closure kernel: [ 4.222488] [] notifier_call_chain+0x4c/0x71 Jul 30 11:46:49 closure kernel: [ 4.222492] [] __blocking_notifier_call_chain+0x50/0x69 Jul 30 11:46:49 closure kernel: [ 4.222496] [] blocking_notifier_call_chain+0x14/0x16 Jul 30 11:46:49 closure kernel: [ 4.222500] [] backlight_device_register+0x1df/0x1f1 Jul 30 11:46:49 closure kernel: [ 4.222530] [] intel_backlight_register+0xf0/0x157 [i915] Jul 30 11:46:49 closure kernel: [ 4.222556] [] intel_modeset_gem_init+0x158/0x164 [i915] Jul 30 11:46:49 closure kernel: [ 4.222584] [] i915_driver_load+0xf1c/0x1139 [i915] Jul 30 11:46:49 closure kernel: [ 4.222589] [] ? mark_held_locks+0x56/0x6c Jul 30 11:46:49 closure kernel: [ 4.222593] [] ? _raw_spin_unlock_irqrestore+0x3f/0x4d Jul 30 11:46:49 closure kernel: [ 4.222597] [] ? trace_hardirqs_on_caller+0x171/0x18d Jul 30 11:46:49 closure kernel: [ 4.222607] [] drm_dev_register+0x84/0xfd [drm] Jul 30 11:46:49 closure kernel: [ 4.222618] [] drm_get_pci_dev+0x102/0x1bc [drm] Jul 30 11:46:49 closure kernel: [ 4.222636] [] i915_pci_probe+0x4f/0x51 [i915] Jul 30 11:46:49 closure kernel: [ 4.222640] [] pci_device_probe+0x74/0xd6 Jul 30 11:46:49 closure kernel: [ 4.222644] [] ? driver_probe_device+0x387/0x387 Jul 30 11:46:49 closure kernel: [ 4.222648] [] driver_probe_device+0x15f/0x387 Jul 30 11:46:49 closure kernel: [ 4.222652] [] ? driver_probe_device+0x387/0x387 Jul 30 11:46:49 closure kernel: [ 4.222655] [] __driver_attach+0x53/0x74 Jul 30 11:46:49 closure kernel: [ 4.222659] [] bus_for_each_dev+0x6f/0x89 Jul 30 11:46:49 closure kernel: [ 4.222662] [] driver_attach+0x1e/0x20 Jul 30 11:46:49 closure kernel: [ 4.222666] [] bus_add_driver+0x140/0x238 Jul 30 11:46:49 closure kernel: [ 4.222670] [] driver_register+0x8f/0xcc Jul 30 11:46:49 closure kernel: [ 4.222674] [] __pci_register_driver+0x5e/0x62 Jul 30 11:46:49 closure kernel: [ 4.222677] [] ? 0xffffffffc081f000 Jul 30 11:46:49 closure kernel: [ 4.222687] [] drm_pci_init+0x58/0xda [drm] Jul 30 11:46:49 closure kernel: [ 4.222690] [] ? 0xffffffffc081f000 Jul 30 11:46:49 closure kernel: [ 4.222708] [] i915_init+0xa0/0xa8 [i915] Jul 30 11:46:49 closure kernel: [ 4.222712] [] ? 0xffffffffc081f000 Jul 30 11:46:49 closure kernel: [ 4.222716] [] do_one_initcall+0x19a/0x1af Jul 30 11:46:49 closure kernel: [ 4.222719] [] ? do_init_module+0x28/0x1e3 Jul 30 11:46:49 closure kernel: [ 4.222723] [] ? kmem_cache_alloc_trace+0xba/0xcc Jul 30 11:46:49 closure kernel: [ 4.222727] [] do_init_module+0x60/0x1e3 Jul 30 11:46:49 closure kernel: [ 4.222731] [] load_module+0x1c42/0x2059 Jul 30 11:46:49 closure kernel: [ 4.222736] [] SyS_finit_module+0x85/0x92 Jul 30 11:46:49 closure kernel: [ 4.222739] [] entry_SYSCALL_64_fastpath+0x16/0x73 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/