Avi Weiss created an issue:
https://gitlab.rtems.org/rtems/rtos/rtems/-/issues/5581
## Summary
`bsp_start_copy_sections_compact` copies `.fast_text` into RAM.
We do currently flush the D-cache (`rtems_cache_flush_multiple_data_lines`) but
don't invalidate the I-cache.
## Steps to reproduce
Code review. In `bspstarthooks.c`:
```c
...
bsp_start_copy_sections_compact();
bsp_start_clear_bss();
size =(size_t) bsp_section_fast_text_size;
RTEMS_OBFUSCATE_VARIABLE( size );
if ( size != 0 ) {
rtems_cache_flush_multiple_data_lines( bsp_section_fast_text_begin, size );
}
...
```
## Expected behaviour
Need to add `rtems_cache_invalidate_multiple_instruction_lines` like in
`bsps/arm/tms570/start/tms570-pom.c`, i.e.:
```c
rtems_cache_flush_multiple_data_lines(vec_overlay_start, 64);
rtems_cache_invalidate_multiple_instruction_lines(vec_overlay_start, 64);
```
or use the combined wrapper `rtems_cache_instruction_sync_after_code_change`
which already exists for this purpose.
--
View it on GitLab: https://gitlab.rtems.org/rtems/rtos/rtems/-/issues/5581
You're receiving this email because of your account on gitlab.rtems.org.
_______________________________________________
bugs mailing list
[email protected]
http://lists.rtems.org/mailman/listinfo/bugs