X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=include%2Fasm-generic%2Ftlb.h;h=c9948d46febcf6be68111ecf31d4be2ab23d0f9d;hb=8e8ece46a861c84343256819eaec77e608ff9217;hp=aa7d3c09301d877215114ac2f56b0f34d850209e;hpb=a8e794ca871505c8ea96cc102f4ad555c5231d7f;p=linux-2.6.git diff --git a/include/asm-generic/tlb.h b/include/asm-generic/tlb.h index aa7d3c093..c9948d46f 100644 --- a/include/asm-generic/tlb.h +++ b/include/asm-generic/tlb.h @@ -15,7 +15,8 @@ #include #include -#include +#include +#include #include /* @@ -92,7 +93,6 @@ tlb_finish_mmu(struct mmu_gather *tlb, unsigned long start, unsigned long end) if (rss < freed) freed = rss; - // mm->rss = rss - freed; vx_rsspages_sub(mm, freed); tlb_flush_mmu(tlb, start, end); @@ -142,10 +142,20 @@ static inline void tlb_remove_page(struct mmu_gather *tlb, struct page *page) __pte_free_tlb(tlb, ptep); \ } while (0) +#ifndef __ARCH_HAS_4LEVEL_HACK +#define pud_free_tlb(tlb, pudp) \ + do { \ + tlb->need_flush = 1; \ + __pud_free_tlb(tlb, pudp); \ + } while (0) +#endif + #define pmd_free_tlb(tlb, pmdp) \ do { \ tlb->need_flush = 1; \ __pmd_free_tlb(tlb, pmdp); \ } while (0) +#define tlb_migrate_finish(mm) do {} while (0) + #endif /* _ASM_GENERIC__TLB_H */