Linux Kernel
3.7.1
|
#include <linux/mm.h>
Go to the source code of this file.
Macros | |
#define | PG_dcache_clean PG_arch_1 |
#define | copy_from_user_page(vma, page, vaddr, dst, src, len) |
#define | flush_cache_dup_mm(mm) flush_cache_mm(mm) |
#define | ARCH_IMPLEMENTS_FLUSH_DCACHE_PAGE 1 |
#define | flush_dcache_mmap_lock(mapping) spin_lock_irq(&(mapping)->tree_lock) |
#define | flush_dcache_mmap_unlock(mapping) spin_unlock_irq(&(mapping)->tree_lock) |
#define | flush_icache_user_range(vma, page, addr, len) flush_dcache_page(page) |
#define | flush_icache_page(vma, page) do { } while (0) |
Functions | |
void | flush_cache_all (void) |
void | flush_cache_mm (struct mm_struct *mm) |
void | flush_cache_range (struct vm_area_struct *vma, unsigned long start, unsigned long end) |
void | flush_cache_page (struct vm_area_struct *vma, unsigned long user_addr, unsigned long pfn) |
void | flush_icache_range (unsigned long start, unsigned long end) |
void | __flush_dcache_area (void *addr, size_t len) |
void | __flush_cache_user_range (unsigned long start, unsigned long end) |
void | copy_to_user_page (struct vm_area_struct *, struct page *, unsigned long, void *, const void *, unsigned long) |
void | flush_dcache_page (struct page *) |
#define ARCH_IMPLEMENTS_FLUSH_DCACHE_PAGE 1 |
Definition at line 106 of file cacheflush.h.
Definition at line 87 of file cacheflush.h.
#define flush_cache_dup_mm | ( | mm | ) | flush_cache_mm(mm) |
Definition at line 92 of file cacheflush.h.
Definition at line 114 of file cacheflush.h.
Definition at line 116 of file cacheflush.h.
#define flush_icache_page | ( | vma, | |
page | |||
) | do { } while (0) |
Definition at line 126 of file cacheflush.h.
#define flush_icache_user_range | ( | vma, | |
page, | |||
addr, | |||
len | |||
) | flush_dcache_page(page) |
Definition at line 119 of file cacheflush.h.
#define PG_dcache_clean PG_arch_1 |
Definition at line 28 of file cacheflush.h.
void flush_cache_page | ( | struct vm_area_struct * | vma, |
unsigned long | user_addr, | ||
unsigned long | pfn | ||
) |
void flush_cache_range | ( | struct vm_area_struct * | vma, |
unsigned long | start, | ||
unsigned long | end | ||
) |
flush_icache_range - Globally flush dcache and invalidate icache for region : The starting virtual address of the region. : The ending virtual address of the region.
This is used by the kernel to globally flush some code it has just written from the dcache back to RAM and then to globally invalidate the icache over that region so that that code can be run on all CPUs in the system.