Skip to content

audio: eq_iir: register IPC-time blob validator#10942

Draft
singalsu wants to merge 2 commits into
thesofproject:mainfrom
singalsu:model_handler_validator_eqiir
Draft

audio: eq_iir: register IPC-time blob validator#10942
singalsu wants to merge 2 commits into
thesofproject:mainfrom
singalsu:model_handler_validator_eqiir

Conversation

@singalsu

Copy link
Copy Markdown
Collaborator

No description provided.

singalsu added 2 commits June 18, 2026 14:14
Harden the EQ IIR setup path against malformed IPC configuration blobs.

The blob length returned by comp_get_data_blob() is now stored and
checked against the expected range every time a new blob is taken, and
the blob's self-declared size is cross-checked against it before use.
The per-response walk that previously trusted num_sections from the
blob now bounds the header and biquad data against the blob, so a bad
length can no longer push the lookup pointer past the allocation.

The df1 and df2t delay-size helpers also gained a range check on
num_sections_in_series, which strides the delay line and was
previously unchecked.

Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
Hook an eq_iir blob validator into the model handler so a corrupted
run-time configuration update is rejected before it can replace the
working blob. Playback or capture then continues with the previously
set coefficients instead of being interrupted by a bad IPC.

The validator parses the blob layout end to end: channel and response
counts, each response header and biquad section bounds, and the
assign_response[] entries reachable by the per-channel loop. The walk
is factored into a shared helper that eq_iir_init_coef() also reuses
at setup time, so IPC-time and prepare-time use exactly the same
checks.

Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
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.

1 participant