Re: [alsa-devel] hda-intel: azx_get_response timeout, switching to polling mode: last cmd=0x01db0000
Hi!
On Thu, Dec 29, 2011 at 12:21:05AM -0600, Jonathan Nieder wrote:
Petr Baudis wrote[1]:
Version: 3.1.5-1
[...]
this bug is twofold - I'm not sure which of the two problems is the real culprit of the issue I'm seeing, and if it's worth fixing both or just either one. It boils down to sometimes choppy playback and mainly applications getting stuck on some audio operations.
[...]
This did not use to happen at least back around 2.6.32.
[...]
I'd be willing to do some bisecting if people believe it would make sense.
I don't see any relevant newer fixes, but could you test the for-next branch from [2] anyway? Output from the alsa-info.sh script[3] would also be useful.
I'm really sorry for taking so long - this is still an issue for me, but contrary to my expectations, I was not able to reboot this machine yet and it might take some more time (weeks...) before that's convenient. I will try the then-current kernel and for-next branch then.
The output from the alsa-info.sh script is at:
http://www.alsa-project.org/db/?f=184928832b33b23c68d17460604b9a37af0fac4b
At Sat, 21 Jan 2012 10:16:02 +0100, Petr Baudis wrote:
Hi!
On Thu, Dec 29, 2011 at 12:21:05AM -0600, Jonathan Nieder wrote:
Petr Baudis wrote[1]:
Version: 3.1.5-1
[...]
this bug is twofold - I'm not sure which of the two problems is the real culprit of the issue I'm seeing, and if it's worth fixing both or just either one. It boils down to sometimes choppy playback and mainly applications getting stuck on some audio operations.
[...]
This did not use to happen at least back around 2.6.32.
[...]
I'd be willing to do some bisecting if people believe it would make sense.
I don't see any relevant newer fixes, but could you test the for-next branch from [2] anyway? Output from the alsa-info.sh script[3] would also be useful.
I'm really sorry for taking so long - this is still an issue for me, but contrary to my expectations, I was not able to reboot this machine yet and it might take some more time (weeks...) before that's convenient. I will try the then-current kernel and for-next branch then.
The output from the alsa-info.sh script is at:
http://www.alsa-project.org/db/?f=184928832b33b23c68d17460604b9a37af0fac4b
Thanks. Switching to the polling mode is really harmless. So, basically you can ignore these messages. I can change it only as a debug message.
OTOH, if the switching to single_cmd mode happens, this is a serious problem. But, as far as I see in alsa-info.sh output, it didn't happen.
Takashi
On Mon, Jan 23, 2012 at 10:18:24AM +0100, Takashi Iwai wrote:
Thanks. Switching to the polling mode is really harmless. So, basically you can ignore these messages. I can change it only as a debug message.
OTOH, if the switching to single_cmd mode happens, this is a serious problem. But, as far as I see in alsa-info.sh output, it didn't happen.
Ok, then the bug is in handling of polling mode in this particular chip. After such switch to polling mode, applications will get stuck on releasing the soundcard. Another symptom I forgot to describe is that the last ~100ms of output will keep repeating when I pause/stop playback, one has to mute the volume to get rid of this. Again, this starts happenning only sometimes after the switch to polling mode, but then keeps happenning fairly consistently.
At Mon, 23 Jan 2012 10:46:30 +0100, Petr Baudis wrote:
On Mon, Jan 23, 2012 at 10:18:24AM +0100, Takashi Iwai wrote:
Thanks. Switching to the polling mode is really harmless. So, basically you can ignore these messages. I can change it only as a debug message.
OTOH, if the switching to single_cmd mode happens, this is a serious problem. But, as far as I see in alsa-info.sh output, it didn't happen.
Ok, then the bug is in handling of polling mode in this particular chip. After such switch to polling mode, applications will get stuck on releasing the soundcard.
What do you mean "releasing the soundcard"? Closing the PCM stream, or unloading the module, or at shutdown?
Another symptom I forgot to describe is that the last ~100ms of output will keep repeating when I pause/stop playback, one has to mute the volume to get rid of this. Again, this starts happenning only sometimes after the switch to polling mode, but then keeps happenning fairly consistently.
Hm, this sounds like some interrupt issue, then. After all, switching to the polling-mode happens because the expected interrupt didn't arrive in time. If a similar problem happens in the PCM stream, too, it might be some other generic interrupt problem.
thanks,
Takashi
On Mon, Jan 23, 2012 at 10:51:43AM +0100, Takashi Iwai wrote:
At Mon, 23 Jan 2012 10:46:30 +0100, Petr Baudis wrote:
On Mon, Jan 23, 2012 at 10:18:24AM +0100, Takashi Iwai wrote:
Thanks. Switching to the polling mode is really harmless. So, basically you can ignore these messages. I can change it only as a debug message.
OTOH, if the switching to single_cmd mode happens, this is a serious problem. But, as far as I see in alsa-info.sh output, it didn't happen.
Ok, then the bug is in handling of polling mode in this particular chip. After such switch to polling mode, applications will get stuck on releasing the soundcard.
What do you mean "releasing the soundcard"? Closing the PCM stream, or unloading the module, or at shutdown?
Closing the PCM stream - see strace snippet in the original post.
Another symptom I forgot to describe is that the last ~100ms of output will keep repeating when I pause/stop playback, one has to mute the volume to get rid of this. Again, this starts happenning only sometimes after the switch to polling mode, but then keeps happenning fairly consistently.
Hm, this sounds like some interrupt issue, then. After all, switching to the polling-mode happens because the expected interrupt didn't arrive in time. If a similar problem happens in the PCM stream, too, it might be some other generic interrupt problem.
The soundcard used to work on much older kernel versions. The only issue I had with this chipset were general (sound, network, ...) DMA problems from 4GiB+ memory areas after I upgraded my memory, but that got fixed in newer kernel version. The soundcard uses unique IRQs:
CPU0 CPU1 43: 24 7290 PCI-MSI-edge snd_hda_intel 44: 1 60 PCI-MSI-edge snd_hda_intel
Any clues on how I can debug this?
Hi!
At Sat, 21 Jan 2012 10:16:02 +0100, Petr Baudis wrote:
I will try the then-current kernel and for-next branch then.
FYI, this issue has most likely reached a happy end. While 3.2.x did not work properly, tonight I finally could reboot the machine with tiwai's for-next branch and cannot reproduce the issue so far!
I'm not sure if this is thanks to an unrelated change in interrupt handling that got pulled around or something that's actually brewing in the for-next branch but hopefully it will eventually find its way to the distribution kernels. :-)
Thanks,
Petr "Pasky" Baudis
participants (2)
-
Petr Baudis
-
Takashi Iwai