Commit e3daabe
committed
schedule: zephyr_ll: user ll: keep ll lock while running tasks
In user-space LL builds (CONFIG_SOF_USERSPACE_LL), the IPC user thread
cannot block interrupts while making modifications to the audio graph.
To workaround this limitation, one could either protect each pipeline
object with locks, or keep the LL level lock held while executing
LL tasks.
This patch implements support for the latter approach. If building
SOF for user LL, do not release the lock when running a task. This
reduces number of syscalls during a LL iteration, and allows to
safely implement IPC handlers that need to modify the audio graph.
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>1 parent 904bf2f commit e3daabe
1 file changed
Lines changed: 10 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
231 | 231 | | |
232 | 232 | | |
233 | 233 | | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
234 | 241 | | |
| 242 | + | |
235 | 243 | | |
236 | 244 | | |
237 | 245 | | |
| |||
246 | 254 | | |
247 | 255 | | |
248 | 256 | | |
| 257 | + | |
249 | 258 | | |
| 259 | + | |
250 | 260 | | |
251 | 261 | | |
252 | 262 | | |
| |||
0 commit comments