Changeset fc6a0ae in rtems


Ignore:
Timestamp:
Jan 14, 2014, 1:40:07 PM (6 years ago)
Author:
Aleksandr Platonov <pam@…>
Branches:
4.11, master
Children:
f6866007
Parents:
3a7f588
git-author:
Aleksandr Platonov <pam@…> (01/14/14 13:40:07)
git-committer:
Sebastian Huber <sebastian.huber@…> (01/14/14 13:40:07)
Message:

rtems_cache_invalidate_multiple_instruction_lines

According with comment in
rtems_cache_invalidate_multiple_instruction_lines(), final_address
indicates the last address which needs to be invalidated. But if in
while loop we got final_address == i_addr condition then loop breaks and
final_address will not be invalidated.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • c/src/lib/libcpu/shared/src/cache_manager.c

    r3a7f588 rfc6a0ae  
    236236  final_address = (void *)((size_t)i_addr + n_bytes - 1);
    237237  i_addr = (void *)((size_t)i_addr & ~(CPU_INSTRUCTION_CACHE_ALIGNMENT - 1));
    238   while( final_address > i_addr ) {
     238  while( final_address >= i_addr ) {
    239239    _CPU_cache_invalidate_1_instruction_line( i_addr );
    240240    i_addr = (void *)((size_t)i_addr + CPU_INSTRUCTION_CACHE_ALIGNMENT);
Note: See TracChangeset for help on using the changeset viewer.