Changes in uspace/lib/c/generic/libc.c [9d58539:153c7a29] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/generic/libc.c
r9d58539 r153c7a29 41 41 */ 42 42 43 #include <errno.h> 43 44 #include <libc.h> 44 45 #include <stdlib.h> … … 52 53 #include "private/io.h" 53 54 55 #ifdef FUTEX_UPGRADABLE 56 #include <rcu.h> 57 #endif 58 54 59 #ifdef CONFIG_RTLD 55 60 #include <rtld/rtld.h> 56 61 #endif 62 57 63 58 64 static bool env_setup = false; … … 62 68 /* Initialize user task run-time environment */ 63 69 __malloc_init(); 64 __async_init(); 70 71 /* Save the PCB pointer */ 72 __pcb = (pcb_t *) pcb_ptr; 73 74 #ifdef CONFIG_RTLD 75 if (__pcb != NULL && __pcb->rtld_runtime != NULL) { 76 runtime_env = (rtld_t *) __pcb->rtld_runtime; 77 } else { 78 if (rtld_init_static() != EOK) 79 abort(); 80 } 81 #endif 65 82 66 83 fibril_t *fibril = fibril_setup(); … … 70 87 __tcb_set(fibril->tcb); 71 88 72 /* Save the PCB pointer */ 73 __pcb = (pcb_t *) pcb_ptr; 89 90 #ifdef FUTEX_UPGRADABLE 91 rcu_register_fibril(); 92 #endif 93 94 __async_init(); 74 95 75 96 /* The basic run-time environment is setup */ … … 79 100 char **argv; 80 101 81 #ifdef __IN_SHARED_LIBC__82 if (__pcb != NULL && __pcb->rtld_runtime != NULL) {83 runtime_env = (runtime_env_t *) __pcb->rtld_runtime;84 }85 #endif86 102 /* 87 103 * Get command line arguments and initialize … … 112 128 __stdio_done(); 113 129 task_retval(status); 114 fibril_teardown(__tcb_get()->fibril_data );130 fibril_teardown(__tcb_get()->fibril_data, false); 115 131 } 116 132
Note:
See TracChangeset
for help on using the changeset viewer.