Changes in kernel/generic/include/mm/as.h [9d58539:83b6ba9f] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/include/mm/as.h
r9d58539 r83b6ba9f 61 61 #define USER_ADDRESS_SPACE_END USER_ADDRESS_SPACE_END_ARCH 62 62 63 #ifdef USTACK_ADDRESS_ARCH64 #define USTACK_ADDRESS USTACK_ADDRESS_ARCH65 #else66 #define USTACK_ADDRESS (USER_ADDRESS_SPACE_END - (STACK_SIZE - 1))67 #endif68 69 63 /** Kernel address space. */ 70 64 #define FLAG_AS_KERNEL (1 << 0) … … 74 68 #define AS_AREA_ATTR_PARTIAL 1 /**< Not fully initialized area. */ 75 69 70 /** The page fault was resolved by as_page_fault(). */ 71 #define AS_PF_OK 0 72 73 /** The page fault was caused by memcpy_from_uspace() or memcpy_to_uspace(). */ 74 #define AS_PF_DEFER 1 75 76 76 /** The page fault was not resolved by as_page_fault(). */ 77 #define AS_PF_FAULT 0 78 79 /** The page fault was resolved by as_page_fault(). */ 80 #define AS_PF_OK 1 81 82 /** The page fault was caused by memcpy_from_uspace() or memcpy_to_uspace(). */ 83 #define AS_PF_DEFER 2 77 #define AS_PF_FAULT 2 78 79 /** The page fault was not resolved by as_page_fault(). Non-verbose version. */ 80 #define AS_PF_SILENT 3 84 81 85 82 /** Address space structure. … … 143 140 /** This structure can be deallocated if refcount drops to 0. */ 144 141 size_t refcount; 145 142 /** True if the area has been ever shared. */ 143 bool shared; 144 146 145 /** 147 146 * B+tree containing complete map of anonymous pages of the shared area. 148 147 */ 149 148 btree_t pagemap; 149 150 /** Address space area backend. */ 151 struct mem_backend *backend; 152 /** Address space area shared data. */ 153 void *backend_shared_data; 150 154 } share_info_t; 151 155 … … 172 176 uintptr_t base; 173 177 size_t frames; 178 bool anonymous; 174 179 }; 175 180 } mem_backend_data_t; … … 224 229 void (* destroy)(as_area_t *); 225 230 231 bool (* is_resizable)(as_area_t *); 232 bool (* is_shareable)(as_area_t *); 233 226 234 int (* page_fault)(as_area_t *, uintptr_t, pf_access_t); 227 235 void (* frame_free)(as_area_t *, uintptr_t, uintptr_t); 236 237 bool (* create_shared_data)(as_area_t *); 238 void (* destroy_shared_data)(void *); 228 239 } mem_backend_t; 229 240
Note:
See TracChangeset
for help on using the changeset viewer.