Minor simplification to the sparc64 tlb_flush_mmu: tlb_remove_page
set need_flush only after handling the tlb_fast_mode case, then
tlb_flush_mmu need not consider whether it's tlb_fast_mode.
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
 static inline void tlb_flush_mmu(struct mmu_gather *mp)
 {
        if (mp->need_flush) {
+               free_pages_and_swap_cache(mp->pages, mp->pages_nr);
+               mp->pages_nr = 0;
                mp->need_flush = 0;
-               if (!tlb_fast_mode(mp)) {
-                       free_pages_and_swap_cache(mp->pages, mp->pages_nr);
-                       mp->pages_nr = 0;
-               }
        }
 
 }
 
 static inline void tlb_remove_page(struct mmu_gather *mp, struct page *page)
 {
-       mp->need_flush = 1;
        if (tlb_fast_mode(mp)) {
                free_page_and_swap_cache(page);
                return;
        }
+       mp->need_flush = 1;
        mp->pages[mp->pages_nr++] = page;
        if (mp->pages_nr >= FREE_PTE_NR)
                tlb_flush_mmu(mp);