#include <linux/swap.h>
#include <asm/pgalloc.h>
#include <asm/tlbflush.h>
Go to the source code of this file.
|
#define | MMU_GATHER_BUNDLE 8 |
|
#define | MAX_GATHER_BATCH ((PAGE_SIZE - sizeof(struct mmu_gather_batch)) / sizeof(void *)) |
|
#define | HAVE_GENERIC_MMU_GATHER |
|
#define | tlb_remove_tlb_entry(tlb, ptep, address) |
|
#define | __tlb_remove_pmd_tlb_entry(tlb, pmdp, address) do {} while (0) |
|
#define | tlb_remove_pmd_tlb_entry(tlb, pmdp, address) |
|
#define | pte_free_tlb(tlb, ptep, address) |
|
#define | pud_free_tlb(tlb, pudp, address) |
|
#define | pmd_free_tlb(tlb, pmdp, address) |
|
#define | tlb_migrate_finish(mm) do {} while (0) |
|
#define __tlb_remove_pmd_tlb_entry |
( |
|
tlb, |
|
|
|
pmdp, |
|
|
|
address |
|
) |
| do {} while (0) |
tlb_remove_pmd_tlb_entry - remember a pmd mapping for later tlb invalidation This is a nop so far, because only x86 needs it.
Definition at line 150 of file tlb.h.
#define HAVE_GENERIC_MMU_GATHER |
Definition at line 78 of file tlb.h.
#define MMU_GATHER_BUNDLE 8 |
Definition at line 69 of file tlb.h.
#define pmd_free_tlb |
( |
|
tlb, |
|
|
|
pmdp, |
|
|
|
address |
|
) |
| |
Value:do { \
tlb->need_flush = 1; \
__pmd_free_tlb(tlb, pmdp,
address); \
} while (0)
Definition at line 173 of file tlb.h.
#define pte_free_tlb |
( |
|
tlb, |
|
|
|
ptep, |
|
|
|
address |
|
) |
| |
Value:do { \
tlb->need_flush = 1; \
__pte_free_tlb(tlb, ptep,
address); \
} while (0)
Definition at line 159 of file tlb.h.
#define pud_free_tlb |
( |
|
tlb, |
|
|
|
pudp, |
|
|
|
address |
|
) |
| |
Value:do { \
tlb->need_flush = 1; \
__pud_free_tlb(tlb, pudp,
address); \
} while (0)
Definition at line 166 of file tlb.h.
#define tlb_migrate_finish |
( |
|
mm | ) |
do {} while (0) |
#define tlb_remove_pmd_tlb_entry |
( |
|
tlb, |
|
|
|
pmdp, |
|
|
|
address |
|
) |
| |
Value:do { \
tlb->need_flush = 1; \
__tlb_remove_pmd_tlb_entry(tlb, pmdp,
address); \
} while (0)
Definition at line 153 of file tlb.h.
#define tlb_remove_tlb_entry |
( |
|
tlb, |
|
|
|
ptep, |
|
|
|
address |
|
) |
| |
Value:do { \
tlb->need_flush = 1; \
__tlb_remove_tlb_entry(tlb, ptep,
address); \
} while (0)
tlb_remove_tlb_entry - remember a pte unmapping for later tlb invalidation.
Record the fact that pte's were really umapped in ->need_flush, so we can later optimise away the tlb invalidate. This helps when userspace is unmapping already-unmapped pages, which happens quite a lot.
Definition at line 139 of file tlb.h.