The ipc driver device data (struct intel_adsp_ipc_data) contains a semaphore. Upon device init, the device data is zeroed out. This is safe for other fields, but the semaphore should be properly initialized before use. This lack of initialization leads to a system crash when CONFIG_POLL is enabled (e.g. to enable CONFIG_SHELL), IPC driver handles an interrupt and executes k_sem_give() on a uninitialized semaphore object. This will eventually lead to null dereference in z_handle_obj_poll_events(). Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com> |
||
|---|---|---|
| .. | ||
| ace | ||
| cavs | ||
| common | ||
| tools | ||
| CMakeLists.txt | ||
| Kconfig | ||
| Kconfig.defconfig | ||
| Kconfig.soc | ||
| soc.yml | ||