Changes in uspace/lib/libc/generic/fibril_sync.c [8619f25:c51a7cd] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/libc/generic/fibril_sync.c
r8619f25 rc51a7cd 40 40 #include <assert.h> 41 41 42 static void optimize_execution_power(void)43 {44 /*45 * When waking up a worker fibril previously blocked in fibril46 * synchronization, chances are that there is an idle manager fibril47 * waiting for IPC, that could start executing the awakened worker48 * fibril right away. We try to detect this and bring the manager49 * fibril back to fruitful work.50 */51 if (atomic_get(&threads_in_ipc_wait) > 0)52 ipc_poke();53 }54 55 42 void fibril_mutex_initialize(fibril_mutex_t *fm) 56 43 { … … 97 84 list_remove(&f->link); 98 85 fibril_add_ready((fid_t) f); 99 optimize_execution_power();100 86 } 101 87 } … … 166 152 fibril_add_ready((fid_t) f); 167 153 frw->writers++; 168 optimize_execution_power();169 154 break; 170 155 } else { … … 172 157 fibril_add_ready((fid_t) f); 173 158 frw->readers++; 174 optimize_execution_power();175 159 } 176 160 } … … 216 200 list_remove(&f->link); 217 201 fibril_add_ready((fid_t) f); 218 optimize_execution_power();219 202 if (once) 220 203 break;
Note:
See TracChangeset
for help on using the changeset viewer.