Rev 3604 | Rev 3617 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 3604 | Rev 3613 | ||
|---|---|---|---|
| Line 67... | Line 67... | ||
| 67 | { |
67 | { |
| 68 | mutex_initialize(&ut->lock, MUTEX_PASSIVE); |
68 | mutex_initialize(&ut->lock, MUTEX_PASSIVE); |
| 69 | waitq_initialize(&ut->go_wq); |
69 | waitq_initialize(&ut->go_wq); |
| 70 | 70 | ||
| 71 | ut->go_call = NULL; |
71 | ut->go_call = NULL; |
| - | 72 | ut->uspace_state = NULL; |
|
| 72 | ut->go = false; |
73 | ut->go = false; |
| 73 | ut->stoppable = true; |
74 | ut->stoppable = true; |
| 74 | ut->debug_active = false; |
75 | ut->debug_active = false; |
| 75 | ut->cur_event = 0; /* none */ |
76 | ut->cur_event = 0; /* none */ |
| 76 | } |
77 | } |
| Line 229... | Line 230... | ||
| 229 | } |
230 | } |
| 230 | } |
231 | } |
| 231 | 232 | ||
| 232 | /** Upon being scheduled to run, check if the current thread should stop. |
233 | /** Upon being scheduled to run, check if the current thread should stop. |
| 233 | * |
234 | * |
| 234 | * This function is called from clock(). Preemption is enabled. |
235 | * This function is called from clock(). |
| 235 | * interrupts are disabled, but since this is called after |
- | |
| 236 | * being scheduled-in, we can enable them, if we're careful enough |
- | |
| 237 | * not to allow arbitrary recursion or deadlock with the thread context. |
- | |
| 238 | */ |
236 | */ |
| 239 | void udebug_before_thread_runs(void) |
237 | void udebug_before_thread_runs(void) |
| 240 | { |
238 | { |
| 241 | ipl_t ipl; |
- | |
| 242 | - | ||
| 243 | return; |
- | |
| 244 | - | ||
| 245 | ipl = interrupts_enable(); |
- | |
| 246 | - | ||
| 247 | /* Now we're free to do whatever we need (lock mutexes, sleep, etc.) */ |
- | |
| 248 | - | ||
| 249 | /* Check if we're supposed to stop */ |
239 | /* Check if we're supposed to stop */ |
| 250 | udebug_stoppable_begin(); |
240 | udebug_stoppable_begin(); |
| 251 | udebug_stoppable_end(); |
241 | udebug_stoppable_end(); |
| 252 | - | ||
| 253 | interrupts_restore(ipl); |
- | |
| 254 | } |
242 | } |
| 255 | 243 | ||
| 256 | /** Syscall event hook. |
244 | /** Syscall event hook. |
| 257 | * |
245 | * |
| 258 | * Must be called before and after servicing a system call. This generates |
246 | * Must be called before and after servicing a system call. This generates |