Skip to content

[BUG] xrun on multiple NOCODEC platforms when multiple pause release #4996

@XiaoyunWu6666

Description

@XiaoyunWu6666

Describe the bug
When running multiple pause release ,dai_report_xrun(): underrun due to no data available happened with xrun recovery failed and pipeline stopped.
This happened on multiple nocodec platforms including CML_RVP_NOCODEC , JSL_RVP_NOCODEC , TGLU_RVP_NOCODEC ,APL_UP2_NOCODEC , ADLP_RVP_NOCODEC ,etc , since 2021-11-13 (inner daily result 8155)

To Reproduce
TPLG=/lib/firmware/intel/sof-tplg/sof-cnl-nocodec.tplg MODEL=CML_RVP_NOCODEC ~/sof-test/test-case/multiple-pause-resume.sh -r 25

Reproduction Rate
Not 100% but can be seen on more than 2 platforms in every daily result after Nov 13
BTW , increase the parameter -r from 25 to 100 may increase the reproduction rate

Environment
Start Time: 2021-11-12 21:26:21 UTC
End Time: 2021-11-13 00:01:58 UTC
Kernel Branch: topic/sof-dev
Kernel Commit: 66bd4e2a
SOF Branch: main
SOF Commit: 9451716
Zephyr Branch: main
Zephyr Commit: 6aa783ed6ac2

Screenshots or console output
Take CML_RVP_NOCODEC as an example
[console]

(22/25) pcm'Port0' cmd'aplay' id'2': Wait for 41 ms before resume                                                                           
                                                                          
 aplay: pcm_write:2061: aplay: pcm_write:2061: write error: Input/output error
write error: Input/output error

2021-11-12 22:32:24 UTC [REMOTE_INFO] pipeline: Port0 with aplay
2021-11-12 22:32:24 UTC [REMOTE_INFO] pipeline: Port0 Deep Buffer with aplay
2021-11-12 22:32:24 UTC [REMOTE_INFO] Check expect exit status

[etrace]

[   374022631.908509] (     3783752.750000) c0 dma-trace                    src/lib/wait.c:51   ERROR poll timeout reg 487496 mask 63 val 0 us 937
[   377827749.413557] (     3805117.500000) c0 dma-trace                    src/lib/wait.c:51   ERROR poll timeout reg 487496 mask 63 val 0 us 937
[   377866378.734939] (       38629.320312) c0 dma-trace                    src/lib/wait.c:51   ERROR poll timeout reg 488520 mask 63 val 0 us 937
[   381656506.969750] (     3790128.250000) c0 dma-trace                    src/lib/wait.c:51   ERROR poll timeout reg 487496 mask 63 val 0 us 937
[   385007707.722002] (     3351200.750000) c0 dma-trace              src/drivers/dw/dma.c:1114 ERROR dw_dma_get_data_size(): xrun detected
[   385007726.367834] (          18.645832) c0 dma-trace                   src/audio/dai.c:879  ERROR dai_report_xrun(): underrun due to no data available
[   385007739.180334] (          12.812499) c0 dma-trace                   src/audio/dai.c:727  ERROR comp_underrun(): dev->comp.id = 2, source->avail = 768, copy_bytes = 0
[   385007785.482415] (          46.302082) c0 dma-trace          ....../pipeline-stream.c:134  ERROR pipeline_copy(): ret = -61, start->comp.id = 2, dir = 1
[   385007798.659498] (          13.177083) c0 dma-trace          ..../pipeline-schedule.c:160  ERROR pipeline_task(): xrun recovery failed! pipeline is stopped.
[   385770207.327119] (      762408.687500) c0 dma-trace              src/drivers/dw/dma.c:1114 ERROR dw_dma_get_data_size(): xrun detected
[   385770226.233368] (          18.906250) c0 dma-trace                   src/audio/dai.c:879  ERROR dai_report_xrun(): underrun due to no data available
[   385770239.150035] (          12.916666) c0 dma-trace                   src/audio/dai.c:727  ERROR comp_underrun(): dev->comp.id = 2, source->avail = 768, copy_bytes = 0
[   385770273.629200] (          34.479164) c0 dma-trace          ....../pipeline-stream.c:134  ERROR pipeline_copy(): ret = -61, start->comp.id = 2, dir = 1
[   385770286.962533] (          13.333333) c0 dma-trace          ..../pipeline-schedule.c:160  ERROR pipeline_task(): xrun recovery failed! pipeline is stopped.

Metadata

Metadata

Assignees

Labels

APLApplies to Apollolake platformCMLApplies to Comet Lake platformIntel Linux Daily testsThis issue can be found in internal Linux daily testsJSLApplies to Jasper Lake platformP2Critical bugs or normal featuresTGLApplies to Tiger LakebugSomething isn't working as expectedxrunXRUN is observed and firmware may not recover

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions