From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753935Ab3G1RzR (ORCPT ); Sun, 28 Jul 2013 13:55:17 -0400 Received: from out1-smtp.messagingengine.com ([66.111.4.25]:40668 "EHLO out1-smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753902Ab3G1RzO (ORCPT ); Sun, 28 Jul 2013 13:55:14 -0400 X-Sasl-enc: h3oNblU0VyaMhrnUT4/XcxhcVQyGl42rNNVrQx/Tbo+G 1375034113 Message-ID: <51F55AF5.5040402@imap.cc> Date: Sun, 28 Jul 2013 19:55:01 +0200 From: Tilman Schmidt User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:16.0) Gecko/20121025 Thunderbird/16.0.2 MIME-Version: 1.0 To: Linux Kernel Subject: [3.10] [nouveau] INFO: possible circular locking dependency detected X-Enigmail-Version: 1.4.6 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="------------enigCF653CFDCA2E8E78BDD48D8F" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enigCF653CFDCA2E8E78BDD48D8F Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: quoted-printable To whom it may concern. With kernel 3.10.x I see this lockdep warning in my boot log during the switch to nouveaufb: <6>[ 23.243923] fbcon: nouveaufb (fb0) is primary device <4>[ 23.245629] <4>[ 23.245631] =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D <4>[ 23.245632] [ INFO: possible circular locking dependency detected ]= <4>[ 23.245635] 3.10.3-capigig #1 Tainted: G W <4>[ 23.245637] -------------------------------------------------------= <4>[ 23.245639] swapper/0/0 is trying to acquire lock: <4>[ 23.245666] (&(&dev->vblank_time_lock)->rlock){-.....}, at: [] drm_handle_vblank+0x3a/0x28f [drm] <4>[ 23.245667] <4>[ 23.245667] but task is already holding lock: <4>[ 23.245710] (&(&event->lock)->rlock#2){-.....}, at: [] nouveau_event_trigger+0x25/0xcb [nouveau] <4>[ 23.245711] <4>[ 23.245711] which lock already depends on the new lock. <4>[ 23.245711] <4>[ 23.245712] <4>[ 23.245712] the existing dependency chain (in reverse order) is: <4>[ 23.245716] <4>[ 23.245716] -> #1 (&(&event->lock)->rlock#2){-.....}: <4>[ 23.245724] [] lock_acquire+0x7e/0x94 <4>[ 23.245730] [] _raw_spin_lock_irqsave+0x44= /0x57 <4>[ 23.245758] [] nouveau_event_get+0x1b/0x80= [nouveau] <4>[ 23.245806] [] nouveau_drm_vblank_enable+0= xb3/0xbf [nouveau] <4>[ 23.245819] [] drm_vblank_get+0x90/0x22c [= drm] <4>[ 23.245831] [] drm_vblank_pre_modeset+0x34= /0x49 [drm] <4>[ 23.245881] [] nv_crtc_prepare+0x48/0xdf [= nouveau] <4>[ 23.245888] [] drm_crtc_helper_set_mode+0x= 25a/0x400 [drm_kms_helper] <4>[ 23.245893] [] drm_crtc_helper_set_config+= 0x6e7/0x976 [drm_kms_helper] <4>[ 23.245909] [] drm_mode_set_config_interna= l+0x25/0x52 [drm] <4>[ 23.245914] [] drm_fb_helper_set_par+0x59/= 0xa2 [drm_kms_helper] <4>[ 23.245919] [] fbcon_init+0x406/0x523 <4>[ 23.245923] [] visual_init+0xba/0x111 <4>[ 23.245927] [] do_bind_con_driver+0x1c7/0x= 2de <4>[ 23.245930] [] do_take_over_console+0x38/0= x45 <4>[ 23.245933] [] do_fbcon_takeover+0x57/0x91= <4>[ 23.245936] [] fbcon_event_notify+0x4df/0x= 832 <4>[ 23.245940] [] notifier_call_chain+0x32/0x= 5e <4>[ 23.245944] [] __blocking_notifier_call_ch= ain+0x46/0x5b <4>[ 23.245947] [] blocking_notifier_call_chai= n+0xf/0x11 <4>[ 23.245951] [] fb_notifier_call_chain+0x16= /0x18 <4>[ 23.245955] [] register_framebuffer+0x28b/= 0x2b7 <4>[ 23.245960] [] drm_fb_helper_initial_confi= g+0x38c/0x44f [drm_kms_helper] <4>[ 23.246010] [] nouveau_fbcon_init+0xe3/0xf= 3 [nouveau] <4>[ 23.246057] [] nouveau_drm_load+0x4a6/0x4e= f [nouveau] <4>[ 23.246071] [] drm_get_pci_dev+0x14f/0x25a= [drm] <4>[ 23.246117] [] nouveau_drm_probe+0x1d2/0x1= f6 [nouveau] <4>[ 23.246122] [] local_pci_probe+0x39/0x61 <4>[ 23.246126] [] pci_device_probe+0xc8/0xf3 <4>[ 23.246130] [] driver_probe_device+0x12a/0= x2f9 <4>[ 23.246133] [] __driver_attach+0x4a/0x6b <4>[ 23.246137] [] bus_for_each_dev+0x5c/0x89 <4>[ 23.246140] [] driver_attach+0x19/0x1b <4>[ 23.246143] [] bus_add_driver+0xe4/0x21e <4>[ 23.246146] [] driver_register+0x8e/0x108 <4>[ 23.246149] [] __pci_register_driver+0x5f/= 0x64 <4>[ 23.246163] [] drm_pci_init+0x8a/0xef [drm= ] <4>[ 23.246189] [] nouveau_drm_init+0x4d/0x100= 0 [nouveau] <4>[ 23.246193] [] do_one_initcall+0x9b/0x130 <4>[ 23.246197] [] load_module+0x1d83/0x20dd <4>[ 23.246201] [] SyS_init_module+0xd4/0xd6 <4>[ 23.246205] [] system_call_fastpath+0x16/0= x1b <4>[ 23.246209] <4>[ 23.246209] -> #0 (&(&dev->vblank_time_lock)->rlock){-.....}: <4>[ 23.246212] [] __lock_acquire+0xc46/0xf61 <4>[ 23.246215] [] lock_acquire+0x7e/0x94 <4>[ 23.246218] [] _raw_spin_lock_irqsave+0x44= /0x57 <4>[ 23.246230] [] drm_handle_vblank+0x3a/0x28= f [drm] <4>[ 23.246277] [] nouveau_drm_vblank_handler+= 0x1a/0x21 [nouveau] <4>[ 23.246305] [] nouveau_event_trigger+0x52/= 0xcb [nouveau] <4>[ 23.246345] [] nv04_disp_intr+0x50/0xa2 [n= ouveau] <4>[ 23.246382] [] nouveau_mc_intr+0x5e/0xa6 [= nouveau] <4>[ 23.246386] [] handle_irq_event_percpu+0x2= 9/0x128 <4>[ 23.246389] [] handle_irq_event+0x3c/0x5c <4>[ 23.246393] [] handle_fasteoi_irq+0x76/0xa= a <4>[ 23.246397] [] handle_irq+0x157/0x16a <4>[ 23.246400] [] do_IRQ+0x48/0x9f <4>[ 23.246403] [] ret_from_intr+0x0/0x13 <4>[ 23.246407] [] arch_cpu_idle+0x13/0x1d <4>[ 23.246410] [] cpu_startup_entry+0xec/0x14= 9 <4>[ 23.246415] [] rest_init+0xc1/0xc8 <4>[ 23.246419] [] start_kernel+0x3da/0x3e7 <4>[ 23.246423] [] x86_64_start_reservations+0= x2a/0x2c <4>[ 23.246426] [] x86_64_start_kernel+0xe8/0x= ef <4>[ 23.246427] <4>[ 23.246427] other info that might help us debug this: <4>[ 23.246427] <4>[ 23.246428] Possible unsafe locking scenario: <4>[ 23.246428] <4>[ 23.246429] CPU0 CPU1 <4>[ 23.246430] ---- ---- <4>[ 23.246433] lock(&(&event->lock)->rlock#2); <4>[ 23.246436] lock(&(&dev->vblank_time= _lock)->rlock); <4>[ 23.246439] lock(&(&event->lock)->rl= ock#2); <4>[ 23.246441] lock(&(&dev->vblank_time_lock)->rlock); <4>[ 23.246442] <4>[ 23.246442] *** DEADLOCK *** <4>[ 23.246442] <4>[ 23.246444] 1 lock held by swapper/0/0: <4>[ 23.246475] #0: (&(&event->lock)->rlock#2){-.....}, at: [] nouveau_event_trigger+0x25/0xcb [nouveau] <4>[ 23.246476] <4>[ 23.246476] stack backtrace: <4>[ 23.246480] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G W 3.= 10.3-capigig #1 <4>[ 23.246482] Hardware name: /DQ965GF, BIOS CO96510J= =2E86A.5953.2007.0730.2059 07/30/2007 <4>[ 23.246488] ffffffff81d97690 ffff8801a7c03b28 ffffffff81444164 fff= f8801a7c03b78 <4>[ 23.246492] ffffffff8107d878 ffffffff8107dc49 ffff8801a7c03bc8 fff= fffff81a10b10 <4>[ 23.246496] ffffffff81a10400 ffffffff81a10b10 ffffffff81a10ae8 000= 0000000000001 <4>[ 23.246497] Call Trace: <4>[ 23.246504] [] dump_stack+0x19/0x1d <4>[ 23.246508] [] print_circular_bug+0x1f8/0x209 <4>[ 23.246511] [] ? print_irq_inversion_bug+0x1d2/0= x1d2 <4>[ 23.246515] [] __lock_acquire+0xc46/0xf61 <4>[ 23.246519] [] lock_acquire+0x7e/0x94 <4>[ 23.246532] [] ? drm_handle_vblank+0x3a/0x28f [d= rm] <4>[ 23.246536] [] _raw_spin_lock_irqsave+0x44/0x57 <4>[ 23.246548] [] ? drm_handle_vblank+0x3a/0x28f [d= rm] <4>[ 23.246558] [] drm_handle_vblank+0x3a/0x28f [drm= ] <4>[ 23.246558] [] ? nouveau_event_trigger+0x25/0xcb= [nouveau] <4>[ 23.246558] [] nouveau_drm_vblank_handler+0x1a/0= x21 [nouveau] <4>[ 23.246558] [] nouveau_event_trigger+0x52/0xcb [= nouveau] <4>[ 23.246558] [] nv04_disp_intr+0x50/0xa2 [nouveau= ] <4>[ 23.246558] [] nouveau_mc_intr+0x5e/0xa6 [nouvea= u] <4>[ 23.246558] [] handle_irq_event_percpu+0x29/0x12= 8 <4>[ 23.246558] [] handle_irq_event+0x3c/0x5c <4>[ 23.246558] [] ? _raw_spin_lock+0x3e/0x45 <4>[ 23.246558] [] ? handle_fasteoi_irq+0x19/0xaa <4>[ 23.246558] [] handle_fasteoi_irq+0x76/0xaa <4>[ 23.246558] [] handle_irq+0x157/0x16a <4>[ 23.246558] [] ? __local_bh_enable+0x9a/0x9e <4>[ 23.246558] [] do_IRQ+0x48/0x9f <4>[ 23.246558] [] common_interrupt+0x6f/0x6f <4>[ 23.246558] [] ? retint_restore_args+0xe/= 0xe <4>[ 23.246558] [] ? default_idle+0x10/0x17 <4>[ 23.246558] [] ? default_idle+0xe/0x17 <4>[ 23.246558] [] arch_cpu_idle+0x13/0x1d <4>[ 23.246558] [] cpu_startup_entry+0xec/0x149 <4>[ 23.246558] [] rest_init+0xc1/0xc8 <4>[ 23.246558] [] ? rest_init+0x40/0xc8 <4>[ 23.246558] [] start_kernel+0x3da/0x3e7 <4>[ 23.246558] [] ? repair_env_string+0x56/0x56 <4>[ 23.246558] [] x86_64_start_reservations+0x2a/0x= 2c <4>[ 23.246558] [] x86_64_start_kernel+0xe8/0xef <6>[ 23.256206] nouveau [ DRM] 0xD179: Parsing digital output scri= pt table <6>[ 23.319086] nouveau [ DRM] 0xD1C2: Parsing digital output scri= pt table <6>[ 23.369297] Console: switching to colour frame buffer device 160x64= <6>[ 23.479124] nouveau 0000:01:00.0: fb0: nouveaufb frame buffer devic= e <6>[ 23.480107] nouveau 0000:01:00.0: registered panic notifier <6>[ 23.481097] [drm] Initialized nouveau 1.1.1 20120801 for 0000:01:00= =2E0 on minor 0 The warning appears with kernels 3.10.3 and 3.10.1 but not 3.9.x. The W taint flag seems to come from: <4>[ 0.000000] WARNING: BIOS bug: CPU MTRRs don't cover all of memory,= losing 64MB of RAM. The machine is an Intel Pentium D on an Intel DQ965GF board (ICH7 chipset) with an nVidia GeForce 6200TC PCIe card and dual monitors, running a 64 bit kernel. Everything is running fine so it appears to be a false positive. --=20 Tilman Schmidt E-Mail: tilman@imap.cc Bonn, Germany Diese Nachricht besteht zu 100% aus wiederverwerteten Bits. Unge=F6ffnet mindestens haltbar bis: (siehe R=FCckseite) --------------enigCF653CFDCA2E8E78BDD48D8F Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.16 (GNU/Linux) Comment: Using GnuPG with undefined - http://www.enigmail.net/ iEYEARECAAYFAlH1WwAACgkQQ3+did9BuFuDaQCgggqgwrZzjE0ZyIj8gyRFpwQs tP4Ani5/rm2MxT5npGiBAqiBh36uj8qF =Z/2Y -----END PGP SIGNATURE----- --------------enigCF653CFDCA2E8E78BDD48D8F--