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.
next prev 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