Skip to content

fast-get: minor fixes#10653

Draft
lyakh wants to merge 3 commits intothesofproject:mainfrom
lyakh:fastget
Draft

fast-get: minor fixes#10653
lyakh wants to merge 3 commits intothesofproject:mainfrom
lyakh:fastget

Conversation

@lyakh
Copy link
Copy Markdown
Collaborator

@lyakh lyakh commented Mar 25, 2026

fix a wrong heap pointer and follow-up on recent changes to remove superfluous code

lyakh added 3 commits March 26, 2026 08:06
Checking number of memory domain partitions in thread's domain to
determine whether it's a userspace thread isn't reliable and is a
layering violation. Instead check the K_USER flag which indicates
exactly that. Also add a missing check when adding a partition for
the newly allocated entry.

Suggested-by: Adrian Warecki <adrian.warecki@intel.com>
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Use the same heap to free the buffer as the one, used to allocate it.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
The mdom member of struct sof_fast_get_entry is redundant, remove it.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
@lgirdwood
Copy link
Copy Markdown
Member

@lyakh #10639 merged, can be non draft now ?

k_spinlock_key_t key;
void *ret;

key = k_spin_lock(&data->lock);
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Would it make sense to switch this from a spinlock to a mutex? Right now the spinlock covers a relatively large scope, including array iteration and memory allocation.

Copy link
Copy Markdown
Collaborator

@softwarecki softwarecki left a comment

Choose a reason for hiding this comment

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

Memory domain retrieval for the proxy variant needs fixing. The proxy already stores a pointer to the memory domain in its context structure. The struct k_mem_domain *mdom; in the struct processing_module structure is only needed for APPLICATION variant.

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.

3 participants