Rev 1062 | Rev 1248 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1062 | Rev 1174 | ||
---|---|---|---|
Line 43... | Line 43... | ||
43 | #include <print.h> |
43 | #include <print.h> |
44 | #include <memstr.h> |
44 | #include <memstr.h> |
45 | #include <console/console.h> |
45 | #include <console/console.h> |
46 | #include <interrupt.h> |
46 | #include <interrupt.h> |
47 | #include <console/kconsole.h> |
47 | #include <console/kconsole.h> |
- | 48 | #include <security/cap.h> |
|
48 | 49 | ||
49 | #ifdef CONFIG_SMP |
50 | #ifdef CONFIG_SMP |
50 | #include <arch/smp/mps.h> |
51 | #include <arch/smp/mps.h> |
51 | #endif /* CONFIG_SMP */ |
52 | #endif /* CONFIG_SMP */ |
52 | 53 | ||
Line 142... | Line 143... | ||
142 | if (init.tasks[i].addr % FRAME_SIZE) |
143 | if (init.tasks[i].addr % FRAME_SIZE) |
143 | panic("init[%d].addr is not frame aligned", i); |
144 | panic("init[%d].addr is not frame aligned", i); |
144 | 145 | ||
145 | utask = task_run_program((void *) init.tasks[i].addr, "USPACE"); |
146 | utask = task_run_program((void *) init.tasks[i].addr, "USPACE"); |
146 | if (utask) { |
147 | if (utask) { |
- | 148 | /* |
|
- | 149 | * Set capabilities to init userspace tasks. |
|
- | 150 | */ |
|
- | 151 | cap_set(utask, CAP_CAP | CAP_MEM_MANAGER | CAP_IO_MANAGER); |
|
- | 152 | ||
147 | if (!ipc_phone_0) |
153 | if (!ipc_phone_0) |
148 | ipc_phone_0 = &utask->answerbox; |
154 | ipc_phone_0 = &utask->answerbox; |
149 | } else |
155 | } else |
150 | printf("Init task %d not started.\n", i); |
156 | printf("Init task %d not started.\n", i); |
151 | } |
157 | } |