On Mon, Jun 12, 2023 at 02:16:15PM +0100, Jon Hunter wrote:
On 12/06/2023 13:18, Jon Hunter wrote:
On 05/04/2023 21:12, Oswald Buddenhagen wrote:
... in wait_for_avail() and snd_pcm_drain().
Sorry for not catching this sooner, but I have just noticed that one of our audio tests for Tegra is failing on v6.4-rc and bisect is pointing to this commit. Reverting this on top of the current mainline fixes it.
If I enable the debug prints, I do see the following messages ...
tegra-audio-graph-card sound: capture read timeout (DMA or IRQ trouble?)
yes, this is the kind of fallout one would expect from this change, as it significantly shortened the effective timeout under most circumstances.
first check that there isn't a genuine underlying bug, that is, that the unusually slow timings match expectations.
if everything looks right, then properly codify the timeout in the driver by setting substream->wait_time as required. the lazy approach of more or less restoring the previous status quo would be setting it to 10000 in the `open` callback. fwiw, soc/sof sets it to 500, which may actually be a bad idea (it's short enough that a very long period time would exceed it, if such is permitted). and it's not obvious why it does that.
regards