Skip to content
Snippets Groups Projects
  • Andy Fleming's avatar
    21fae8b2
    Invalidate INIT_RAM TLB mappings · 21fae8b2
    Andy Fleming authored
    
    Commit 0db37dc2...  (and some others) changed the INIT_RAM TLB
    mappings to be unguarded.  This collided with an existing "bug"
    where the mappings for the INIT_RAM were being kept around.
    This meant that speculative loads to those addresses were
    succeeding in the TLB, and going out to the bus, where they
    were causing an exception (there's nothing at that address). The
    Flash code was coincidentally causing such a speculative load.
    Rather than go back to mapping the INIT RAM as guarded, we fix
    it so that the entries for the INIT_RAM are invalidated.  Thus
    the speculative loads will fail in the TLB, and have no effect.
    
    Signed-off-by: default avatarAndy Fleming <afleming@freescale.com>
    21fae8b2
    History
    Invalidate INIT_RAM TLB mappings
    Andy Fleming authored
    
    Commit 0db37dc2...  (and some others) changed the INIT_RAM TLB
    mappings to be unguarded.  This collided with an existing "bug"
    where the mappings for the INIT_RAM were being kept around.
    This meant that speculative loads to those addresses were
    succeeding in the TLB, and going out to the bus, where they
    were causing an exception (there's nothing at that address). The
    Flash code was coincidentally causing such a speculative load.
    Rather than go back to mapping the INIT RAM as guarded, we fix
    it so that the entries for the INIT_RAM are invalidated.  Thus
    the speculative loads will fail in the TLB, and have no effect.
    
    Signed-off-by: default avatarAndy Fleming <afleming@freescale.com>
start.S 21.71 KiB