public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Arthur Marsh <arthur.marsh@internode.on.net>
To: Takashi Iwai <tiwai@suse.de>
Cc: Anssi Hannula <anssi.hannula@iki.fi>,
	ALSA devel <alsa-devel@alsa-project.org>,
	xorg-driver-ati@lists.x.org, linux-kernel@vger.kernel.org
Subject: Re: ALSA: hda - Fix possible races in HDMI driver - lockup on shutdown when radeon.audio=1 after using audacity
Date: Tue, 21 Jan 2014 11:50:43 +1030	[thread overview]
Message-ID: <52DDCB6B.7010602@internode.on.net> (raw)
In-Reply-To: <s5hha8zox0j.wl%tiwai@suse.de>



Takashi Iwai wrote, on 20/01/14 19:22:
> At Sun, 19 Jan 2014 17:32:16 +1030,
> Arthur Marsh wrote:
>>
>> I have had reproducible lock-ups on shut-down (at the shutting down ALSA
>> stage) of my AMD64 machine (Asus M3A78Pro motherboard, BIOS 1701
>> 01/27/2011, CPU AMD Athlon(tm) II X4 640 Processor) running the 64 bit
>> Linux kernel more recent than 3.12 when *both* radeon.audio=1 was set
>> and I had been running audacity 2.0.5. (iommu=noaperture is also set).
>>
>> The problem was reproducible with the stock Debian kernel
>> linux-image-3.13-rc6-amd64 version 3.13~rc6-1~exp1.
>>
>> The machine is using an ATI/AMD 3850HD video card with a DVI cable to a
>> DVI input on my monitor, and the default audio device is the
>> motherboard's on-board audio device:
>>
>> 00:14.2 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] SBx00
>> Azalia (Intel HDA)
>>
>> 01:00.0 VGA compatible controller: Advanced Micro Devices, Inc.
>> [AMD/ATI] RV670 [Radeon HD 3690/3850]
>> 01:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] RV670/680
>> HDMI Audio [Radeon HD 3690/3800 Series]
>>
>> $ git bisect bad
>> cbbaa603a03cc46681e24d6b2804b62fde95a2af is the first bad commit
>> commit cbbaa603a03cc46681e24d6b2804b62fde95a2af
>> Author: Takashi Iwai <tiwai@suse.de>
>> Date:   Thu Oct 17 18:03:24 2013 +0200
>>
>>       ALSA: hda - Fix possible races in HDMI driver
>>
>>       Some per_pin fields and ELD contents might be changed dynamically in
>>       multiple ways where the concurrent accesses are still opened in the
>>       current code.  This patch fixes such possible races by using eld->lock
>>       in appropriate places.
>>
>>       Reported-by: Anssi Hannula <anssi.hannula@iki.fi>
>>       Signed-off-by: Takashi Iwai <tiwai@suse.de>
>>
>> :040000 040000 0c29281f82a3ebd9a704d481114f9cfcefea07c8
>> d71fd101125cd29a628cb5e66c7ee4f56e28329b M      sound
>>
>> When running audacity from the command line there was the following output:
>>
>> ALSA lib pcm_dsnoop.c:618:(snd_pcm_dsnoop_open) unable to open slave
>> ALSA lib pcm_dmix.c:1022:(snd_pcm_dmix_open) unable to open slave
>> ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
>> ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
>> ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
>> ALSA lib pcm_dmix.c:1022:(snd_pcm_dmix_open) unable to open slave
>> Expression 'stream->playback.pcm' failed in
>> 'src/hostapi/alsa/pa_linux_alsa.c', line: 4611
>> Expression 'stream->playback.pcm' failed in
>> 'src/hostapi/alsa/pa_linux_alsa.c', line: 4611
>> Expression 'stream->playback.pcm' failed in
>> 'src/hostapi/alsa/pa_linux_alsa.c', line: 4611
>>
>> I am happy to supply further information or run further tests to help in
>> isolating the problem and verifying a solution.
>
> Could you build the kernel with lockdep kconfig and see whether it
> reports errors?
>
> Reverting the commit doesn't work cleanly.  Instead, you can try to
> simply comment out all mutex_lock(&per_pin->lock) and
> mutex_unlock(&per_pin->lock) calls in patch_hdmi.c to see whether it's
> a mutex deadlock.
>
>
> thanks,
>
> Takashi
>

I rebuilt the kernel after commenting out all mutex_lock(&per_pin->lock) 
and mutex_unlock(&per_pin->lock) calls in patch_hdmi.c, and the 
resulting kernel shutdown without hanging.

Regards,

Arthur.

  parent reply	other threads:[~2014-01-21  1:20 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-19  7:02 ALSA: hda - Fix possible races in HDMI driver - lockup on shutdown when radeon.audio=1 after using audacity Arthur Marsh
2014-01-20  8:52 ` Takashi Iwai
2014-01-20 23:28   ` Arthur Marsh
2014-01-21  1:20   ` Arthur Marsh [this message]
2014-01-21 11:13     ` Takashi Iwai
2014-01-21 21:57       ` Arthur Marsh

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=52DDCB6B.7010602@internode.on.net \
    --to=arthur.marsh@internode.on.net \
    --cc=alsa-devel@alsa-project.org \
    --cc=anssi.hannula@iki.fi \
    --cc=linux-kernel@vger.kernel.org \
    --cc=tiwai@suse.de \
    --cc=xorg-driver-ati@lists.x.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox