Rev 793 | Rev 955 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 793 | Rev 826 | ||
---|---|---|---|
Line 60... | Line 60... | ||
60 | #define PAGE_GLOBAL (1<<PAGE_GLOBAL_SHIFT) |
60 | #define PAGE_GLOBAL (1<<PAGE_GLOBAL_SHIFT) |
61 | 61 | ||
62 | /** Operations to manipulate page mappings. */ |
62 | /** Operations to manipulate page mappings. */ |
63 | struct page_mapping_operations { |
63 | struct page_mapping_operations { |
64 | void (* mapping_insert)(as_t *as, __address page, __address frame, int flags); |
64 | void (* mapping_insert)(as_t *as, __address page, __address frame, int flags); |
- | 65 | void (* mapping_remove)(as_t *as, __address page); |
|
65 | pte_t *(* mapping_find)(as_t *as, __address page); |
66 | pte_t *(* mapping_find)(as_t *as, __address page); |
66 | }; |
67 | }; |
67 | typedef struct page_mapping_operations page_mapping_operations_t; |
68 | typedef struct page_mapping_operations page_mapping_operations_t; |
68 | 69 | ||
69 | extern page_mapping_operations_t *page_mapping_operations; |
70 | extern page_mapping_operations_t *page_mapping_operations; |
70 | 71 | ||
71 | extern void page_init(void); |
72 | extern void page_init(void); |
72 | extern void page_mapping_insert(as_t *as, __address page, __address frame, int flags); |
73 | extern void page_mapping_insert(as_t *as, __address page, __address frame, int flags); |
- | 74 | extern void page_mapping_remove(as_t *as, __address page); |
|
73 | extern pte_t *page_mapping_find(as_t *as, __address page); |
75 | extern pte_t *page_mapping_find(as_t *as, __address page); |
74 | extern pte_t *page_table_create(int flags); |
76 | extern pte_t *page_table_create(int flags); |
75 | extern void map_structure(__address s, size_t size); |
77 | extern void map_structure(__address s, size_t size); |
76 | 78 | ||
77 | #endif |
79 | #endif |