task: Optimize elf loading
This patch updates the task module so that it avoids reloading the text segment
of an ELF if it is already cached in MPU storage.
The task module writes the EA of the currently loaded ELF between the workload
module stack and task base address.
Upon the task module's next execution, if the task module was cached (meaning no
other workload module was loaded in to overwrite the mpu storage workload module
memory area) it checks the previously written ELF ea to see if it is the same ea
as the current ELF that needs to be loaded. If the workload is cached, the check
is not necessary since not only is the ELF text segment cached but the whole
MPU storage state is cached.
Signed-off-by: Yuji Mano <yuji.mano@am.sony.com>
Acked-by: Kazunori Asayama <asayama@sm.sony.co.jp>
2 files changed