Skip to content

audio: base_fw: validate host core_id in KCPS allocation request#10898

Open
abonislawski wants to merge 1 commit into
thesofproject:mainfrom
abonislawski:fix/basefw-kcps
Open

audio: base_fw: validate host core_id in KCPS allocation request#10898
abonislawski wants to merge 1 commit into
thesofproject:mainfrom
abonislawski:fix/basefw-kcps

Conversation

@abonislawski

Copy link
Copy Markdown
Member

basefw_kcps_allocation_request() passed request->core_id from the host IPC payload straight into core_kcps_adjust(), which uses it to index kcps_consumption[CONFIG_CORE_COUNT]. An out-of-range core_id turns the add-assign into an arbitrary relative write into DSP .bss.

Reject core_id >= CONFIG_CORE_COUNT at the IPC boundary, mirroring the existing check in schedulers_info_get().

basefw_kcps_allocation_request() passed request->core_id from the host
IPC payload straight into core_kcps_adjust(), which uses it to index
kcps_consumption[CONFIG_CORE_COUNT]. An out-of-range core_id turns the
add-assign into an arbitrary relative write into DSP .bss.

Reject core_id >= CONFIG_CORE_COUNT at the IPC boundary, mirroring the
existing check in schedulers_info_get().

Signed-off-by: Adrian Bonislawski <adrian.bonislawski@intel.com>
Copilot AI review requested due to automatic review settings June 12, 2026 12:15

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

Adds IPC-boundary validation for core_id in KCPS allocation requests to prevent out-of-bounds indexing into kcps_consumption[CONFIG_CORE_COUNT] and potential arbitrary relative writes into .bss.

Changes:

  • Rejects request->core_id >= CONFIG_CORE_COUNT in basefw_kcps_allocation_request().
  • Logs an error and returns IPC4_ERROR_INVALID_PARAM on invalid core_id.

Comment thread src/audio/base_fw.c
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.

4 participants