• John David Anglin's avatar
    parisc: Remove unnecessary TLB purges from flush_dcache_page_asm and flush_icache_page_asm · febe4296
    John David Anglin authored
    We have four routines in pacache.S that use temporary alias pages:
    copy_user_page_asm(), clear_user_page_asm(), flush_dcache_page_asm() and
    flush_icache_page_asm().  copy_user_page_asm() and clear_user_page_asm()
    don't purge the TLB entry used for the operation.
    flush_dcache_page_asm() and flush_icache_page_asm do purge the entry.
    
    Presumably, this was thought to optimize TLB use.  However, the
    operation is quite heavy weight on PA 1.X processors as we need to take
    the TLB lock and a TLB broadcast is sent to all processors.
    
    This patch removes the purges from flush_dcache_page_asm() and
    flush_icache_page_asm.
    Signed-off-by: default avatarJohn David Anglin  <dave.anglin@bell.net>
    Cc: <stable@vger.kernel.org> # v3.16+
    Signed-off-by: default avatarHelge Deller <deller@gmx.de>
    febe4296
pacache.S 29.6 KB