Changes in uspace/lib/c/generic/fibril.c [6aeca0d:2654afb] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/generic/fibril.c
r6aeca0d r2654afb 49 49 #include <assert.h> 50 50 #include <async.h> 51 #include <futex.h> 51 52 52 53 #ifdef FUTEX_UPGRADABLE … … 114 115 fibril->waits_for = NULL; 115 116 116 fibril->switches = 0; 117 118 /* 119 * We are called before __tcb_set(), so we need to use 120 * futex_down/up() instead of futex_lock/unlock() that 121 * may attempt to access TLS. 122 */ 123 futex_down(&fibril_futex); 117 futex_lock(&fibril_futex); 124 118 list_append(&fibril->all_link, &fibril_list); 125 futex_u p(&fibril_futex);119 futex_unlock(&fibril_futex); 126 120 127 121 return fibril; … … 218 212 assert(stype == FIBRIL_TO_MANAGER); 219 213 220 srcf->switches++;221 222 214 /* 223 215 * Don't put the current fibril into any list, it should … … 279 271 size_t stack_size = (stksz == FIBRIL_DFLT_STK_SIZE) ? 280 272 stack_size_get() : stksz; 281 fibril->stack = as_area_create( AS_AREA_ANY, stack_size,273 fibril->stack = as_area_create((void *) -1, stack_size, 282 274 AS_AREA_READ | AS_AREA_WRITE | AS_AREA_CACHEABLE | AS_AREA_GUARD | 283 AS_AREA_LATE_RESERVE , AS_AREA_UNPAGED);275 AS_AREA_LATE_RESERVE); 284 276 if (fibril->stack == (void *) -1) { 285 277 fibril_teardown(fibril, false);
Note:
See TracChangeset
for help on using the changeset viewer.