Rev 2898 | Rev 2900 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2898 | Rev 2899 | ||
---|---|---|---|
Line 202... | Line 202... | ||
202 | if (rc < 0) return EINVAL; |
202 | if (rc < 0) return EINVAL; |
203 | 203 | ||
204 | return 0; |
204 | return 0; |
205 | } |
205 | } |
206 | 206 | ||
- | 207 | int udebug_set_evmask(udebug_evmask_t mask) |
|
- | 208 | { |
|
- | 209 | ipl_t ipl; |
|
- | 210 | ||
- | 211 | klog_printf("udebug_set_mask()"); |
|
- | 212 | ||
- | 213 | ipl = interrupts_disable(); |
|
- | 214 | klog_printf("debugging task %llu", TASK->taskid); |
|
- | 215 | ||
- | 216 | spinlock_lock(&TASK->lock); |
|
- | 217 | ||
- | 218 | if (TASK->dt_state != UDEBUG_TS_ACTIVE) { |
|
- | 219 | spinlock_unlock(&TASK->lock); |
|
- | 220 | interrupts_restore(ipl); |
|
- | 221 | klog_printf("udebug_set_mask(): not active debuging session"); |
|
- | 222 | ||
- | 223 | return EINVAL; |
|
- | 224 | } |
|
- | 225 | ||
- | 226 | TASK->debug_evmask = mask; |
|
- | 227 | ||
- | 228 | spinlock_unlock(&TASK->lock); |
|
- | 229 | interrupts_restore(ipl); |
|
- | 230 | ||
- | 231 | return 0; |
|
- | 232 | } |
|
- | 233 | ||
- | 234 | ||
207 | int udebug_go(thread_t *t, call_t *call) |
235 | int udebug_go(thread_t *t, call_t *call) |
208 | { |
236 | { |
209 | ipl_t ipl; |
237 | ipl_t ipl; |
210 | int rc; |
238 | int rc; |
211 | 239 |