Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\stop_machine.c Create Date:2022-07-28 11:21:09
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:cpu_stopper_thread

Proto:static void cpu_stopper_thread(unsigned int cpu)

Type:void

Parameter:

TypeParameterName
unsigned intcpu
500  stopper = per_cpu(cpu_stopper, cpu)
503  repeat :
504  work = NULL
505  raw_spin_lock_irq( & lock)
506  If Not list_empty - tests whether a list is empty*@head: the list to test. Then
507  work = list_first_entry - get the first element from a list*@ptr: the list head to take the element from.*@type: the type of the struct this is embedded in.*@member: the name of the list_head within the struct.* Note, that list is expected to be not empty.( & list of pending works , structcpu_stop_work, list)
509  list_del_init - deletes entry from list and reinitialize it.*@entry: the element to delete from the list.
511  raw_spin_unlock_irq( & lock)
513  If work Then
514  fn = fn
515  arg = arg
516  done = done
520  preempt_count_inc()
521  ret = fn(arg)
522  If done Then
527  preempt_count_dec()
528  WARN_ONCE(We mask the PREEMPT_NEED_RESCHED bit so as not to confuse all current users* that think a non-zero value indicates we cannot preempt., "cpu_stop: %ps(%p) leaked preempt count\n", fn, arg)
530  Go to repeat