]>
Commit | Line | Data |
---|---|---|
b2bba72c TG |
1 | #ifndef _ASM_X86_CACHEFLUSH_H |
2 | #define _ASM_X86_CACHEFLUSH_H | |
3 | ||
4 | /* Keep includes the same across arches. */ | |
5 | #include <linux/mm.h> | |
6 | ||
7 | /* Caches aren't brain-dead on the intel. */ | |
8 | #define flush_cache_all() do { } while (0) | |
9 | #define flush_cache_mm(mm) do { } while (0) | |
10 | #define flush_cache_dup_mm(mm) do { } while (0) | |
11 | #define flush_cache_range(vma, start, end) do { } while (0) | |
12 | #define flush_cache_page(vma, vmaddr, pfn) do { } while (0) | |
13 | #define flush_dcache_page(page) do { } while (0) | |
14 | #define flush_dcache_mmap_lock(mapping) do { } while (0) | |
15 | #define flush_dcache_mmap_unlock(mapping) do { } while (0) | |
16 | #define flush_icache_range(start, end) do { } while (0) | |
3f61b19a JP |
17 | #define flush_icache_page(vma, pg) do { } while (0) |
18 | #define flush_icache_user_range(vma, pg, adr, len) do { } while (0) | |
b2bba72c TG |
19 | #define flush_cache_vmap(start, end) do { } while (0) |
20 | #define flush_cache_vunmap(start, end) do { } while (0) | |
21 | ||
3f61b19a JP |
22 | #define copy_to_user_page(vma, page, vaddr, dst, src, len) \ |
23 | memcpy((dst), (src), (len)) | |
24 | #define copy_from_user_page(vma, page, vaddr, dst, src, len) \ | |
25 | memcpy((dst), (src), (len)) | |
b2bba72c | 26 | |
e1271f68 | 27 | int __deprecated_for_modules change_page_attr(struct page *page, int numpages, |
3f61b19a | 28 | pgprot_t prot); |
75cbade8 AV |
29 | |
30 | int set_pages_uc(struct page *page, int numpages); | |
31 | int set_pages_wb(struct page *page, int numpages); | |
32 | int set_pages_x(struct page *page, int numpages); | |
33 | int set_pages_nx(struct page *page, int numpages); | |
34 | int set_pages_ro(struct page *page, int numpages); | |
35 | int set_pages_rw(struct page *page, int numpages); | |
36 | ||
1219333d | 37 | int _set_memory_uc(unsigned long addr, int numpages); |
ef354af4 | 38 | int _set_memory_wc(unsigned long addr, int numpages); |
1219333d | 39 | int _set_memory_wb(unsigned long addr, int numpages); |
75cbade8 | 40 | int set_memory_uc(unsigned long addr, int numpages); |
ef354af4 | 41 | int set_memory_wc(unsigned long addr, int numpages); |
75cbade8 AV |
42 | int set_memory_wb(unsigned long addr, int numpages); |
43 | int set_memory_x(unsigned long addr, int numpages); | |
44 | int set_memory_nx(unsigned long addr, int numpages); | |
45 | int set_memory_ro(unsigned long addr, int numpages); | |
46 | int set_memory_rw(unsigned long addr, int numpages); | |
f62d0f00 | 47 | int set_memory_np(unsigned long addr, int numpages); |
c9caa02c | 48 | int set_memory_4k(unsigned long addr, int numpages); |
75cbade8 | 49 | |
4c61afcd | 50 | void clflush_cache_range(void *addr, unsigned int size); |
b2bba72c | 51 | |
76ebd054 TG |
52 | void cpa_init(void); |
53 | ||
b2bba72c TG |
54 | #ifdef CONFIG_DEBUG_RODATA |
55 | void mark_rodata_ro(void); | |
7bfeab9a | 56 | extern const int rodata_test_data; |
b2bba72c | 57 | #endif |
7bfeab9a | 58 | |
edeed305 | 59 | #ifdef CONFIG_DEBUG_RODATA_TEST |
7bfeab9a | 60 | int rodata_test(void); |
edeed305 | 61 | #else |
7bfeab9a | 62 | static inline int rodata_test(void) |
edeed305 | 63 | { |
7bfeab9a | 64 | return 0; |
edeed305 AV |
65 | } |
66 | #endif | |
b2bba72c | 67 | |
96a388de | 68 | #endif |