* Start per-CPU event timers on APs. */
| 678 | * Start per-CPU event timers on APs. |
| 679 | */ |
| 680 | void |
| 681 | cpu_initclocks_ap(void) |
| 682 | { |
| 683 | sbintime_t now; |
| 684 | struct pcpu_state *state; |
| 685 | struct thread *td; |
| 686 | |
| 687 | state = DPCPU_PTR(timerstate); |
| 688 | now = sbinuptime(); |
| 689 | ET_HW_LOCK(state); |
| 690 | state->now = now; |
| 691 | hardclock_sync(curcpu); |
| 692 | spinlock_enter(); |
| 693 | ET_HW_UNLOCK(state); |
| 694 | td = curthread; |
| 695 | td->td_intr_nesting_level++; |
| 696 | handleevents(state->now, 2); |
| 697 | td->td_intr_nesting_level--; |
| 698 | spinlock_exit(); |
| 699 | } |
| 700 | |
| 701 | void |
| 702 | suspendclock(void) |
no test coverage detected