Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

Name:collect_percpu_times

Proto:static void collect_percpu_times(struct psi_group *group, enum psi_aggregators aggregator, unsigned int *pchanged_states)

Type:void

Parameter:

TypeParameterName
struct psi_group *group
enum psi_aggregatorsaggregator
unsigned int *pchanged_states
306  u64 deltas[NR_PSI_STATES - 1] = {0, }
307  nonidle_total = 0
308  changed_states = 0
320  for_each_possible_cpu(cpu)
325  get_recent_times(group, cpu, aggregator, times, & cpu_changed_states)
327  changed_states |= cpu_changed_states
329  nonidle = nsecs_to_jiffies(times[PSI_NONIDLE])
330  nonidle_total += nonidle
332  When s < PSI_NONIDLE cycle deltas[s] += times[s] * nonidle
349  When s < NR_PSI_STATES - 1 cycle total[aggregator][s] += div_u64 - unsigned 64bit divide with 32bit divisor*@dividend: unsigned 64bit dividend*@divisor: unsigned 32bit divisor* This is the most common 64bit divide and should be used if possible,* as many 32bit archs can optimize this variant better than a full
353  If pchanged_states Then pchanged_states = changed_states
Caller
NameDescribe
psi_avgs_work
psi_poll_work
psi_show