|  | #include <parlib/parlib.h> | 
|  | #include <stdio.h> | 
|  | #include <stdlib.h> | 
|  |  | 
|  | /* This will keep a core from spinning forever, but will also allow it to still | 
|  | * schedule() and run _S processes.  arg1 is the number of loops (0 for | 
|  | * forever), and arg2 is how many usec to wait per loop. */ | 
|  | int main(int argc, char** argv) | 
|  | { | 
|  | unsigned long nr_loops = 1;			/* default, 1 loop */ | 
|  | unsigned long timeout = 5000000;	/* default, 5 sec */ | 
|  | int i = 0; | 
|  | if (argc > 1) | 
|  | nr_loops = strtol(argv[1], 0, 10); | 
|  | if (argc > 2) | 
|  | timeout = strtol(argv[2], 0, 10); | 
|  | printf("Idling for %d usec for %d loops\n", timeout, nr_loops); | 
|  | while (!nr_loops || i++ < nr_loops) { | 
|  | sys_halt_core(timeout); | 
|  | sys_yield(0); | 
|  | } | 
|  | return 0; | 
|  | } |