Changes in kernel/generic/include/mm/as.h [fc47885:c15b374] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/include/mm/as.h
rfc47885 rc15b374 115 115 116 116 /** 117 * Number of processors on which this 118 * address space is active. Protected by 119 * asidlock. 117 * Number of processors on wich is this address space active. 118 * Protected by asidlock. 120 119 */ 121 120 size_t cpu_refcount; 122 121 123 /** Address space identifier. 124 * 125 * Constant on architectures that do not 126 * support ASIDs. Protected by asidlock. 127 * 122 /** 123 * Address space identifier. 124 * Constant on architectures that do not support ASIDs. 125 * Protected by asidlock. 128 126 */ 129 127 asid_t asid; 130 128 131 /** Number of references (i.e .tasks that reference this as). */129 /** Number of references (i.e tasks that reference this as). */ 132 130 atomic_t refcount; 133 131 … … 201 199 typedef struct { 202 200 mutex_t lock; 203 204 201 /** Containing address space. */ 205 202 as_t *as; 206 203 207 /** Memory flags. */ 204 /** 205 * Flags related to the memory represented by the address space area. 206 */ 208 207 unsigned int flags; 209 208 210 /** A ddress space area attributes. */209 /** Attributes related to the address space area itself. */ 211 210 unsigned int attributes; 212 213 /** Number of pages in the area. */ 211 /** Size of this area in multiples of PAGE_SIZE. */ 214 212 size_t pages; 215 216 /** Number of resident pages in the area. */217 size_t resident;218 219 213 /** Base address of this area. */ 220 214 uintptr_t base; 221 222 215 /** Map of used space. */ 223 216 btree_t used_space; 224 217 225 218 /** 226 * If the address space area is shared. this is227 * a reference tothe share info structure.219 * If the address space area has been shared, this pointer will 220 * reference the share info structure. 228 221 */ 229 222 share_info_t *sh_info; … … 268 261 extern bool as_area_check_access(as_area_t *, pf_access_t); 269 262 extern size_t as_area_get_size(uintptr_t); 270 extern bool used_space_insert(as_area_t *, uintptr_t, size_t); 271 extern bool used_space_remove(as_area_t *, uintptr_t, size_t); 263 extern int used_space_insert(as_area_t *, uintptr_t, size_t); 264 extern int used_space_remove(as_area_t *, uintptr_t, size_t); 265 272 266 273 267 /* Interface to be implemented by architectures. */ … … 309 303 310 304 /* Address space area related syscalls. */ 311 extern sysarg_t sys_as_area_create(uintptr_t, size_t, unsigned int);312 extern sysarg_t sys_as_area_resize(uintptr_t, size_t, unsigned int);313 extern sysarg_t sys_as_area_change_flags(uintptr_t, unsigned int);314 extern sysarg_t sys_as_area_destroy(uintptr_t);305 extern unative_t sys_as_area_create(uintptr_t, size_t, unsigned int); 306 extern unative_t sys_as_area_resize(uintptr_t, size_t, unsigned int); 307 extern unative_t sys_as_area_change_flags(uintptr_t, unsigned int); 308 extern unative_t sys_as_area_destroy(uintptr_t); 315 309 316 310 /* Introspection functions. */
Note:
See TracChangeset
for help on using the changeset viewer.