Lines Matching full:housekeeping

3  *  Housekeeping management. Manage the targets for routine code that can run on
20 struct housekeeping { struct
25 static struct housekeeping housekeeping; argument
29 return !!(housekeeping.flags & BIT(type)); in housekeeping_enabled()
38 if (housekeeping.flags & BIT(type)) { in housekeeping_any_cpu()
39 cpu = sched_numa_find_closest(housekeeping.cpumasks[type], smp_processor_id()); in housekeeping_any_cpu()
43 cpu = cpumask_any_and(housekeeping.cpumasks[type], cpu_online_mask); in housekeeping_any_cpu()
49 * housekeeping CPU up. in housekeeping_any_cpu()
62 if (housekeeping.flags & BIT(type)) in housekeeping_cpumask()
63 return housekeeping.cpumasks[type]; in housekeeping_cpumask()
71 if (housekeeping.flags & BIT(type)) in housekeeping_affine()
72 set_cpus_allowed_ptr(t, housekeeping.cpumasks[type]); in housekeeping_affine()
79 if (housekeeping.flags & BIT(type)) in housekeeping_test_cpu()
80 return cpumask_test_cpu(cpu, housekeeping.cpumasks[type]); in housekeeping_test_cpu()
89 if (!housekeeping.flags) in housekeeping_init()
94 if (housekeeping.flags & HK_FLAG_KERNEL_NOISE) in housekeeping_init()
97 for_each_set_bit(type, &housekeeping.flags, HK_TYPE_MAX) { in housekeeping_init()
98 /* We need at least one CPU to handle housekeeping work */ in housekeeping_init()
99 WARN_ON_ONCE(cpumask_empty(housekeeping.cpumasks[type])); in housekeeping_init()
107 alloc_bootmem_cpumask_var(&housekeeping.cpumasks[type]); in housekeeping_setup_type()
108 cpumask_copy(housekeeping.cpumasks[type], in housekeeping_setup_type()
118 if ((flags & HK_FLAG_KERNEL_NOISE) && !(housekeeping.flags & HK_FLAG_KERNEL_NOISE)) { in housekeeping_setup()
120 pr_warn("Housekeeping: nohz unsupported." in housekeeping_setup()
128 pr_warn("Housekeeping: nohz_full= or isolcpus= incorrect CPU range\n"); in housekeeping_setup()
140 if (!housekeeping.flags) { in housekeeping_setup()
141 pr_warn("Housekeeping: must include one present CPU, " in housekeeping_setup()
149 if (!housekeeping.flags) { in housekeeping_setup()
158 unsigned long iter_flags = flags & housekeeping.flags; in housekeeping_setup()
162 housekeeping.cpumasks[type])) { in housekeeping_setup()
163 pr_warn("Housekeeping: nohz_full= must match isolcpus=\n"); in housekeeping_setup()
168 iter_flags = flags & ~housekeeping.flags; in housekeeping_setup()
174 if ((flags & HK_FLAG_KERNEL_NOISE) && !(housekeeping.flags & HK_FLAG_KERNEL_NOISE)) in housekeeping_setup()
177 housekeeping.flags |= flags; in housekeeping_setup()