Lines Matching refs:stopper

76 static void __cpu_stop_queue_work(struct cpu_stopper *stopper,  in __cpu_stop_queue_work()  argument
79 list_add_tail(&work->list, &stopper->works); in __cpu_stop_queue_work()
80 wake_up_process(stopper->thread); in __cpu_stop_queue_work()
86 struct cpu_stopper *stopper = &per_cpu(cpu_stopper, cpu); in cpu_stop_queue_work() local
89 spin_lock_irqsave(&stopper->lock, flags); in cpu_stop_queue_work()
90 if (stopper->enabled) in cpu_stop_queue_work()
91 __cpu_stop_queue_work(stopper, work); in cpu_stop_queue_work()
94 spin_unlock_irqrestore(&stopper->lock, flags); in cpu_stop_queue_work()
421 struct cpu_stopper *stopper = &per_cpu(cpu_stopper, cpu); in cpu_stop_should_run() local
425 spin_lock_irqsave(&stopper->lock, flags); in cpu_stop_should_run()
426 run = !list_empty(&stopper->works); in cpu_stop_should_run()
427 spin_unlock_irqrestore(&stopper->lock, flags); in cpu_stop_should_run()
433 struct cpu_stopper *stopper = &per_cpu(cpu_stopper, cpu); in cpu_stopper_thread() local
439 spin_lock_irq(&stopper->lock); in cpu_stopper_thread()
440 if (!list_empty(&stopper->works)) { in cpu_stopper_thread()
441 work = list_first_entry(&stopper->works, in cpu_stopper_thread()
445 spin_unlock_irq(&stopper->lock); in cpu_stopper_thread()
474 struct cpu_stopper *stopper = &per_cpu(cpu_stopper, cpu); in stop_machine_park() local
480 stopper->enabled = false; in stop_machine_park()
481 kthread_park(stopper->thread); in stop_machine_park()
493 struct cpu_stopper *stopper = &per_cpu(cpu_stopper, cpu); in cpu_stop_park() local
495 WARN_ON(!list_empty(&stopper->works)); in cpu_stop_park()
500 struct cpu_stopper *stopper = &per_cpu(cpu_stopper, cpu); in stop_machine_unpark() local
502 stopper->enabled = true; in stop_machine_unpark()
503 kthread_unpark(stopper->thread); in stop_machine_unpark()
521 struct cpu_stopper *stopper = &per_cpu(cpu_stopper, cpu); in cpu_stop_init() local
523 spin_lock_init(&stopper->lock); in cpu_stop_init()
524 INIT_LIST_HEAD(&stopper->works); in cpu_stop_init()