Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

helper: add a condition before updating the component direction #8197

Merged

Conversation

fkwasowi
Copy link
Contributor

At the pipeline reset stage, the direction of the components is not always known (example for the pipeline below), resulting in a call to a field that is null (src_buf->source->direction_set/src_buf->source->direction) and consequently a crash/timeout.

image

At the pipeline reset stage, the direction of the components
is not always known, resulting in a call to a field that is null
and consequently a crash/timeout.

Signed-off-by: Kwasowiec, Fabiola <[email protected]>
@lyakh
Copy link
Collaborator

lyakh commented Sep 14, 2023

Is this addressing a crash, that's caught by CI? Or only in your testing? Should this go to any stable branches too?

@@ -274,7 +274,7 @@ int ipc4_pipeline_prepare(struct ipc_comp_dev *ppl_icd, uint32_t cmd)
switch (status) {
case COMP_STATE_INIT:
tr_dbg(&ipc_tr, "pipeline %d: reset from init", ppl_icd->id);
ret = ipc4_pipeline_complete(ipc, ppl_icd->id);
ret = ipc4_pipeline_complete(ipc, ppl_icd->id, cmd);
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@fkwasowi may I ask why we even need to invoke ipc4_pipeline_complete() during pipeline reset?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is still unanswered, but I assume this is a more complex. git blame shows this code has been here for a long, long time...

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is the answer to the question: 8541d68

@fkwasowi
Copy link
Contributor Author

Is this addressing a crash, that's caught by CI? Or only in your testing? Should this go to any stable branches too?

Due to this problem, the 09_oed_dmic_mute_unmute test is blocked. The issue is reported in the following HSD: https://hsdes.intel.com/appstore/article/#/18031254461

Copy link
Collaborator

@kv2019i kv2019i left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some unanswered questions, but given this fixes a DSP crash, seems we can proceed with merge.

@@ -274,7 +274,7 @@ int ipc4_pipeline_prepare(struct ipc_comp_dev *ppl_icd, uint32_t cmd)
switch (status) {
case COMP_STATE_INIT:
tr_dbg(&ipc_tr, "pipeline %d: reset from init", ppl_icd->id);
ret = ipc4_pipeline_complete(ipc, ppl_icd->id);
ret = ipc4_pipeline_complete(ipc, ppl_icd->id, cmd);
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is still unanswered, but I assume this is a more complex. git blame shows this code has been here for a long, long time...

@kv2019i
Copy link
Collaborator

kv2019i commented Sep 18, 2023

SOFCI TEST

@kv2019i
Copy link
Collaborator

kv2019i commented Sep 18, 2023

Uh, sorry @fkwasowi I didn't notice you had pinged the CI already. But let's see that if this now completes...

@fkwasowi
Copy link
Contributor Author

SOFCI TEST

@kv2019i
Copy link
Collaborator

kv2019i commented Sep 18, 2023

The one error in https://sof-ci.01.org/sofpr/PR8197/build13064/devicetest is a DUT issue. error in log:

2023-09-18 10:40:04 UTC [REMOTE_ERROR] ktime=115 sof-test PID=3493: unexpected value in /tmp/sof-test-card0.lock! Concurrent testing?

Proceeding with merge.

@kv2019i kv2019i merged commit 3b31adc into thesofproject:main Sep 18, 2023
37 of 41 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants