Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1759534AbYHUPFB (ORCPT ); Thu, 21 Aug 2008 11:05:01 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1753696AbYHUPEx (ORCPT ); Thu, 21 Aug 2008 11:04:53 -0400 Received: from py-out-1112.google.com ([64.233.166.181]:55345 "EHLO py-out-1112.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752333AbYHUPEw (ORCPT ); Thu, 21 Aug 2008 11:04:52 -0400 DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:cc:mime-version:content-type :content-transfer-encoding:content-disposition; b=lP0Ym229Wyej73gOzjCb4LQvJkBXeyh5oQac4bn/OLMLuPd90dSQ0e4bSyO/SmuC7m gXa6Iz3Ql3W6+Wu8kznBcVxbagfCqlZBOk01jp4Cq3KNQROmZpy6q5Mmzf6Uxpurvn+W 6xAfFRPxw0mmJjNnpLIajp2acfaI8EU2Pn1hY= Message-ID: <19f34abd0808210804y7ee91d1fy12da5ad6f82d2451@mail.gmail.com> Date: Thu, 21 Aug 2008 17:04:51 +0200 From: "Vegard Nossum" To: "Rafael J. Wysocki" Subject: latest -git: hibernate: possible circular locking dependency detected Cc: "Dmitry Adamushko" , "Max Krasnyanskiy" , "Linux Kernel Mailing List" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Content-Disposition: inline Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 5287 Lines: 133 Hi, I just got this on v2.6.27-rc4 (+ unrelated fix): ACPI: Preparing to enter system sleep state S5 ======================================================= [ INFO: possible circular locking dependency detected ] 2.6.27-rc4-00003-ga798564 #28 ------------------------------------------------------- events/0/10 is trying to acquire lock: (cpu_add_remove_lock){--..}, at: [] cpu_maps_update_begin+0xf/0x20 but task is already holding lock: (poweroff_work){--..}, at: [] run_workqueue+0x107/0x200 which lock already depends on the new lock. the existing dependency chain (in reverse order) is: -> #2 (poweroff_work){--..}: [] validate_chain+0x976/0xe90 [] __lock_acquire+0x259/0xa00 [] lock_acquire+0x89/0xc0 [] run_workqueue+0x165/0x200 [] worker_thread+0x7d/0xe0 [] kthread+0x42/0x70 [] kernel_thread_helper+0x7/0x14 [] 0xffffffff -> #1 (events){--..}: [] validate_chain+0x976/0xe90 [] __lock_acquire+0x259/0xa00 [] lock_acquire+0x89/0xc0 [] cleanup_workqueue_thread+0x3e/0x70 [] workqueue_cpu_callback+0x7c/0x130 [] notifier_call_chain+0x37/0x70 [] __raw_notifier_call_chain+0x19/0x20 [] raw_notifier_call_chain+0x1a/0x20 [] _cpu_down+0x1ea/0x270 [] disable_nonboot_cpus+0x58/0xe0 [] hibernation_snapshot+0x117/0x220 [] hibernate+0xe0/0x180 [] state_store+0xbf/0xd0 [] kobj_attr_store+0x24/0x30 [] sysfs_write_file+0xa2/0x100 [] vfs_write+0x96/0x130 [] sys_write+0x3d/0x70 [] sysenter_do_call+0x12/0x3f [] 0xffffffff -> #0 (cpu_add_remove_lock){--..}: [] validate_chain+0x54a/0xe90 [] __lock_acquire+0x259/0xa00 [] lock_acquire+0x89/0xc0 [] mutex_lock_nested+0xab/0x300 [] cpu_maps_update_begin+0xf/0x20 [] disable_nonboot_cpus+0x13/0xe0 [] kernel_power_off+0x20/0x40 [] do_poweroff+0x8/0x10 [] run_workqueue+0x16a/0x200 [] worker_thread+0x7d/0xe0 [] kthread+0x42/0x70 [] kernel_thread_helper+0x7/0x14 [] 0xffffffff other info that might help us debug this: 2 locks held by events/0/10: #0: (events){--..}, at: [] run_workqueue+0x107/0x200 #1: (poweroff_work){--..}, at: [] run_workqueue+0x107/0x200 stack backtrace: Pid: 10, comm: events/0 Not tainted 2.6.27-rc4-00003-ga798564 #28 [] print_circular_bug_tail+0x79/0xc0 [] ? print_circular_bug_entry+0x43/0x50 [] validate_chain+0x54a/0xe90 [] ? add_lock_to_list+0x45/0xb0 [] ? acpi_os_acquire_lock+0x8/0xa [] __lock_acquire+0x259/0xa00 [] ? trace_hardirqs_off+0xb/0x10 [] lock_acquire+0x89/0xc0 [] ? cpu_maps_update_begin+0xf/0x20 [] mutex_lock_nested+0xab/0x300 [] ? cpu_maps_update_begin+0xf/0x20 [] ? cpu_maps_update_begin+0xf/0x20 [] cpu_maps_update_begin+0xf/0x20 [] disable_nonboot_cpus+0x13/0xe0 [] kernel_power_off+0x20/0x40 [] do_poweroff+0x8/0x10 [] run_workqueue+0x16a/0x200 [] ? run_workqueue+0x107/0x200 [] ? do_poweroff+0x0/0x10 [] worker_thread+0x7d/0xe0 [] ? autoremove_wake_function+0x0/0x50 [] ? worker_thread+0x0/0xe0 [] kthread+0x42/0x70 [] ? kthread+0x0/0x70 [] kernel_thread_helper+0x7/0x14 ======================= Disabling non-boot CPUs ... Unmapping cpu 1 from all nodes Unmapping cpu 1 from all nodes CPU 1 is now offline lockdep: fixing up alternatives. SMP alternatives: switching to UP code CPU0 attaching NULL sched-domain. CPU1 attaching NULL sched-domain. CPU0 attaching sched-domain: domain 0: span 0 level CPU groups: 0 CPU1 is down Power down. acpi_power_off called hwsleep-0326 [00] enter_sleep_state : Entering sleep state [S5] ...the machine would shut down, but not resume: Trying to resume from /dev/VolGroup00/LogVol01 No suspend signature on swap, not resuming. Creating root device. Mounting root filesystem. I previously also saw some SLUB errors on resuming (but those didn't make it to the serial console, unfortunately); will post follow-up if I can manage to get a capture. I don't know if it's related, but I was reading some files from /sys while doing the "echo disk > /sys/power/state". Vegard -- "The animistic metaphor of the bug that maliciously sneaked in while the programmer was not looking is intellectually dishonest as it disguises that the error is the programmer's own creation." -- E. W. Dijkstra, EWD1036 -- 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/