From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1762765AbYEOSDT (ORCPT ); Thu, 15 May 2008 14:03:19 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751350AbYEOSDJ (ORCPT ); Thu, 15 May 2008 14:03:09 -0400 Received: from smtp1.linux-foundation.org ([140.211.169.13]:33132 "EHLO smtp1.linux-foundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751162AbYEOSDG (ORCPT ); Thu, 15 May 2008 14:03:06 -0400 Date: Thu, 15 May 2008 11:02:44 -0700 From: Andrew Morton To: Thomas Gleixner Cc: bugme-daemon@bugzilla.kernel.org, linux-kernel@vger.kernel.org, Ingo Molnar Subject: Re: [Bugme-new] [Bug 10701] New: snd_pcsp lockdep warning Message-Id: <20080515110244.6e15d4c3.akpm@linux-foundation.org> In-Reply-To: References: X-Mailer: Sylpheed 2.4.8 (GTK+ 2.12.5; x86_64-redhat-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org (switched to email. Please respond via emailed reply-to-all, not via the bugzilla web interface). On Thu, 15 May 2008 03:43:36 -0700 (PDT) bugme-daemon@bugzilla.kernel.org wrote: > http://bugzilla.kernel.org/show_bug.cgi?id=10701 > > Summary: snd_pcsp lockdep warning > Product: Drivers > Version: 2.5 > KernelVersion: 2.6.26-rc2 > Platform: All > OS/Version: Linux > Tree: Mainline > Status: NEW > Severity: normal > Priority: P1 > Component: Sound(ALSA) > AssignedTo: perex@perex.cz > ReportedBy: nuclearcat@nuclearcat.com > > > Latest working kernel version: unknown > Earliest failing kernel version: 2.6.26-rc2 > Distribution: Gentoo > Hardware Environment: Intel 965 chipset, Core 2 Duo > Software Environment: mplayer > Problem Description: Just lockdep warning in dmesg This looks like a problem in the core hrtimers code? > Steps to reproduce: while playing HD video got this. > [52478.405955] ======================================================= > [52478.405955] [ INFO: possible circular locking dependency detected ] > [52478.405955] 2.6.26-rc2-devel #1 > [52478.405955] ------------------------------------------------------- > [52478.405955] mplayer/4814 is trying to acquire lock: > [52478.405955] (&pcsp_chip.substream_lock){++..}, at: [] > pcsp_do_timer+0x51/0x2a8 [snd_pcsp] > [52478.405955] > [52478.405955] but task is already holding lock: > [52478.405955] (&cpu_base->lock){++..}, at: [] > hrtimer_interrupt+0x6c/0x154 > [52478.405955] > [52478.405955] which lock already depends on the new lock. > [52478.405955] > [52478.405955] > [52478.405955] the existing dependency chain (in reverse order) is: > [52478.405955] > [52478.405955] -> #5 (&cpu_base->lock){++..}: > [52478.405955] [] __lock_acquire+0x982/0xb37 > [52478.405955] [] lock_acquire+0x6c/0x89 > [52478.405955] [] _spin_lock_irqsave+0x25/0x55 > [52478.405955] [] lock_hrtimer_base+0x18/0x33 > [52478.405955] [] hrtimer_start+0x19/0x100 > [52478.405955] [] enqueue_rt_entity+0xf7/0x10e > [52478.405955] [] enqueue_task_rt+0x36/0x4a > [52478.405955] [] enqueue_task+0x4c/0x58 > [52478.405955] [] activate_task+0x19/0x1f > [52478.405955] [] try_to_wake_up+0x17c/0x1be > [52478.405955] [] wake_up_process+0xf/0x11 > [52478.405955] [] migration_call+0xb4/0x403 > [52478.405955] [] migration_init+0x38/0x45 > [52478.405955] [] kernel_init+0x49/0x22a > [52478.405955] [] kernel_thread_helper+0x7/0x10 > [52478.405955] [] 0xffffffff > [52478.405955] > [52478.405955] -> #4 (&rt_b->rt_runtime_lock){++..}: > [52478.405955] [] __lock_acquire+0x982/0xb37 > [52478.405955] [] lock_acquire+0x6c/0x89 > [52478.405955] [] _spin_lock+0x1c/0x49 > [52478.405955] [] enqueue_rt_entity+0xb4/0x10e > [52478.405955] [] enqueue_task_rt+0x36/0x4a > [52478.405955] [] enqueue_task+0x4c/0x58 > [52478.405955] [] activate_task+0x19/0x1f > [52478.405955] [] try_to_wake_up+0x17c/0x1be > [52478.405955] [] wake_up_process+0xf/0x11 > [52478.405955] [] migration_call+0xb4/0x403 > [52478.405955] [] migration_init+0x38/0x45 > [52478.405955] [] kernel_init+0x49/0x22a > [52478.405955] [] kernel_thread_helper+0x7/0x10 > [52478.405955] [] 0xffffffff > [52478.405955] > [52478.405955] -> #3 (&rq->rq_lock_key){++..}: > [52478.405955] [] __lock_acquire+0x982/0xb37 > [52478.405955] [] lock_acquire+0x6c/0x89 > [52478.405955] [] _spin_lock+0x1c/0x49 > [52478.405955] [] task_rq_lock+0x36/0x5d > [52478.405955] [] try_to_wake_up+0x2a/0x1be > [52478.405955] [] default_wake_function+0xb/0xd > [52478.405955] [] __wake_up_common+0x2f/0x5a > [52478.405955] [] complete+0x2b/0x3e > [52478.405955] [] kthread+0x1f/0x64 > [52478.405955] [] kernel_thread_helper+0x7/0x10 > [52478.405955] [] 0xffffffff > [52478.405955] > [52478.405955] -> #2 (&q->lock){++..}: > [52478.405955] [] __lock_acquire+0x982/0xb37 > [52478.405955] [] lock_acquire+0x6c/0x89 > [52478.405955] [] _spin_lock_irqsave+0x25/0x55 > [52478.405955] [] __wake_up+0x15/0x3b > [52478.405955] [] snd_pcm_post_stop+0x51/0x5a [snd_pcm] > [52478.405955] [] snd_pcm_action_single+0x33/0x4b [snd_pcm] > [52478.405955] [] snd_pcm_action+0x68/0x74 [snd_pcm] > [52478.405955] [] snd_pcm_stop+0x11/0x13 [snd_pcm] > [52478.405955] [] snd_pcm_drop+0x98/0xbb [snd_pcm] > [52478.405955] [] snd_pcm_common_ioctl1+0xe7c/0xf6d [snd_pcm] > [52478.405955] [] snd_pcm_playback_ioctl1+0x355/0x36c > [snd_pcm] > [52478.405955] [] snd_pcm_kernel_ioctl+0x38/0x5d [snd_pcm] > [52478.405955] [] snd_pcm_oss_change_params+0xaee/0xea7 > [snd_pcm_oss] > [52478.405955] [] snd_pcm_oss_get_active_substream+0x34/0x4c > [snd_pcm_oss] > [52478.405955] [] snd_pcm_oss_get_format+0xe/0x20 > [snd_pcm_oss] > [52478.405955] [] snd_pcm_oss_ioctl+0x3c0/0x9a5 [snd_pcm_oss] > [52478.405955] [] vfs_ioctl+0x22/0x67 > [52478.405955] [] do_vfs_ioctl+0x264/0x27b > [52478.405955] [] sys_ioctl+0x2c/0x46 > [52478.405955] [] sysenter_past_esp+0x6a/0xb1 > [52478.405955] [] 0xffffffff > [52478.405955] > [52478.405955] -> #1 (&substream->self_group.lock){.+..}: > [52478.405955] [] __lock_acquire+0x982/0xb37 > [52478.405955] [] lock_acquire+0x6c/0x89 > [52478.405955] [] _spin_lock+0x1c/0x49 > [52478.405955] [] pcsp_do_timer+0x7f/0x2a8 [snd_pcsp] > [52478.405955] [] run_hrtimer_pending+0x3a/0xcb > [52478.405955] [] run_hrtimer_softirq+0x16/0x18 > [52478.405955] [] __do_softirq+0x6f/0xe9 > [52478.405955] [] do_softirq+0x5e/0xa8 > [52478.405955] [] 0xffffffff > [52478.405955] > [52478.405955] -> #0 (&pcsp_chip.substream_lock){++..}: > [52478.405955] [] __lock_acquire+0x8a9/0xb37 > [52478.405955] [] lock_acquire+0x6c/0x89 > [52478.405955] [] _spin_lock_irqsave+0x25/0x55 > [52478.405955] [] pcsp_do_timer+0x51/0x2a8 [snd_pcsp] > [52478.405955] [] __run_hrtimer+0x49/0x70 > [52478.405955] [] hrtimer_interrupt+0xeb/0x154 > [52478.405955] [] smp_apic_timer_interrupt+0x6c/0x80 > [52478.405955] [] apic_timer_interrupt+0x33/0x38 > [52478.405955] [] snd_pcm_plug_write_transfer+0x75/0x9f > [snd_pcm_oss] > [52478.405955] [] snd_pcm_oss_write2+0x82/0xc0 [snd_pcm_oss] > [52478.405955] [] snd_pcm_oss_write+0x165/0x1ca [snd_pcm_oss] > [52478.405955] [] vfs_write+0x8c/0x108 > [52478.405955] [] sys_write+0x3b/0x60 > [52478.405955] [] sysenter_past_esp+0x6a/0xb1 > [52478.405955] [] 0xffffffff > [52478.405955] > [52478.405955] other info that might help us debug this: > [52478.405955] > [52478.405955] 2 locks held by mplayer/4814: > [52478.405955] #0: (&runtime->oss.params_lock){--..}, at: [] > snd_pcm_oss_write+0x66/0x1ca [snd_pcm_oss] > [52478.405955] #1: (&cpu_base->lock){++..}, at: [] > hrtimer_interrupt+0x6c/0x154 > [52478.405955] > [52478.405955] stack backtrace: > [52478.405955] Pid: 4814, comm: mplayer Not tainted 2.6.26-rc2-devel #1 > [52478.405955] [] print_circular_bug_tail+0x5b/0x66 > [52478.405955] [] __lock_acquire+0x8a9/0xb37 > [52478.405955] [] lock_acquire+0x6c/0x89 > [52478.405955] [] ? pcsp_do_timer+0x51/0x2a8 [snd_pcsp] > [52478.405955] [] _spin_lock_irqsave+0x25/0x55 > [52478.405955] [] ? pcsp_do_timer+0x51/0x2a8 [snd_pcsp] > [52478.405955] [] ? pcsp_do_timer+0x0/0x2a8 [snd_pcsp] > [52478.405955] [] pcsp_do_timer+0x51/0x2a8 [snd_pcsp] > [52478.405955] [] ? __remove_hrtimer+0x62/0x6a > [52478.405955] [] ? pcsp_do_timer+0x0/0x2a8 [snd_pcsp] > [52478.405955] [] __run_hrtimer+0x49/0x70 > [52478.405955] [] hrtimer_interrupt+0xeb/0x154 > [52478.405955] [] smp_apic_timer_interrupt+0x6c/0x80 > [52478.405955] [] apic_timer_interrupt+0x33/0x38 > [52478.405955] [] ? linear_transfer+0xce/0x155 [snd_pcm_oss] > [52478.405955] [] snd_pcm_plug_write_transfer+0x75/0x9f > [snd_pcm_oss] > [52478.405955] [] snd_pcm_oss_write2+0x82/0xc0 [snd_pcm_oss] > [52478.405955] [] snd_pcm_oss_write+0x165/0x1ca [snd_pcm_oss] > [52478.405955] [] ? snd_pcm_oss_write+0x0/0x1ca [snd_pcm_oss] > [52478.405955] [] vfs_write+0x8c/0x108 > [52478.405955] [] sys_write+0x3b/0x60 > [52478.405955] [] sysenter_past_esp+0x6a/0xb1 > [52478.405955] =======================