Changeset 371bd7d in mainline for kernel/generic/src/proc/thread.c
- Timestamp:
- 2010-03-27T09:22:17Z (16 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 36a75a2
- Parents:
- cd82bb1 (diff), eaf22d4 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)links above to see all the changes relative to each parent. - File:
-
- 1 edited
-
kernel/generic/src/proc/thread.c (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/src/proc/thread.c
rcd82bb1 r371bd7d 76 76 77 77 /** Thread states */ 78 c har *thread_states[] = {78 const char *thread_states[] = { 79 79 "Invalid", 80 80 "Running", … … 264 264 265 265 atomic_inc(&nrdy); 266 // FIXME: Why is the avg value never read? 266 267 avg = atomic_get(&nrdy) / config.cpu_active; 267 268 atomic_inc(&cpu->nrdy); … … 288 289 */ 289 290 thread_t *thread_create(void (* func)(void *), void *arg, task_t *task, 290 int flags, c har *name, bool uncounted)291 int flags, const char *name, bool uncounted) 291 292 { 292 293 thread_t *t; … … 501 502 void thread_sleep(uint32_t sec) 502 503 { 503 thread_usleep(sec * 1000000); 504 /* Sleep in 1000 second steps to support 505 full argument range */ 506 while (sec > 0) { 507 uint32_t period = (sec > 1000) ? 1000 : sec; 508 509 thread_usleep(period * 1000000); 510 sec -= period; 511 } 504 512 } 505 513 … … 575 583 { 576 584 waitq_t wq; 577 585 578 586 waitq_initialize(&wq); 579 587 580 588 (void) waitq_sleep_timeout(&wq, usec, SYNCH_FLAGS_NON_BLOCKING); 581 589 } … … 812 820 } 813 821 822 /** Syscall wrapper for sleeping. */ 823 unative_t sys_thread_usleep(uint32_t usec) 824 { 825 thread_usleep(usec); 826 return 0; 827 } 828 814 829 /** @} 815 830 */
Note:
See TracChangeset
for help on using the changeset viewer.
