| /kernel/linux/linux-6.6/drivers/cpufreq/ |
| D | cpufreq.c | 82 static unsigned int __cpufreq_get(struct cpufreq_policy *policy); 83 static int cpufreq_init_governor(struct cpufreq_policy *policy); 84 static void cpufreq_exit_governor(struct cpufreq_policy *policy); 85 static void cpufreq_governor_limits(struct cpufreq_policy *policy); 86 static int cpufreq_set_policy(struct cpufreq_policy *policy, 92 * Two notifier lists: the "policy" list is involved in the 93 * validation process for a new CPU frequency policy; the 120 struct kobject *get_governor_parent_kobj(struct cpufreq_policy *policy) in get_governor_parent_kobj() argument 123 return &policy->kobj; in get_governor_parent_kobj() 172 * - policy->cpus with all possible CPUs [all …]
|
| D | cpufreq_userspace.c | 23 * @policy: pointer to policy struct where freq is being set 28 static int cpufreq_set(struct cpufreq_policy *policy, unsigned int freq) in cpufreq_set() argument 31 unsigned int *setspeed = policy->governor_data; in cpufreq_set() 33 pr_debug("cpufreq_set for cpu %u, freq %u kHz\n", policy->cpu, freq); in cpufreq_set() 36 if (!per_cpu(cpu_is_managed, policy->cpu)) in cpufreq_set() 41 ret = __cpufreq_driver_target(policy, freq, CPUFREQ_RELATION_L); in cpufreq_set() 47 static ssize_t show_speed(struct cpufreq_policy *policy, char *buf) in show_speed() argument 49 return sprintf(buf, "%u\n", policy->cur); in show_speed() 52 static int cpufreq_userspace_policy_init(struct cpufreq_policy *policy) in cpufreq_userspace_policy_init() argument 60 policy->governor_data = setspeed; in cpufreq_userspace_policy_init() [all …]
|
| D | freq_table.c | 17 bool policy_has_boost_freq(struct cpufreq_policy *policy) in policy_has_boost_freq() argument 19 struct cpufreq_frequency_table *pos, *table = policy->freq_table; in policy_has_boost_freq() 32 int cpufreq_frequency_table_cpuinfo(struct cpufreq_policy *policy, in cpufreq_frequency_table_cpuinfo() argument 43 if ((!cpufreq_boost_enabled() || !policy->boost_enabled) in cpufreq_frequency_table_cpuinfo() 54 policy->min = policy->cpuinfo.min_freq = min_freq; in cpufreq_frequency_table_cpuinfo() 55 policy->max = max_freq; in cpufreq_frequency_table_cpuinfo() 60 if (policy->cpuinfo.max_freq < max_freq) in cpufreq_frequency_table_cpuinfo() 61 policy->max = policy->cpuinfo.max_freq = max_freq; in cpufreq_frequency_table_cpuinfo() 63 if (policy->min == ~0) in cpufreq_frequency_table_cpuinfo() 69 int cpufreq_frequency_table_verify(struct cpufreq_policy_data *policy, in cpufreq_frequency_table_verify() argument [all …]
|
| D | cppc_cpufreq.c | 160 static void cppc_cpufreq_cpu_fie_init(struct cpufreq_policy *policy) in cppc_cpufreq_cpu_fie_init() argument 168 for_each_cpu(cpu, policy->cpus) { in cppc_cpufreq_cpu_fie_init() 171 cppc_fi->cpu_data = policy->driver_data; in cppc_cpufreq_cpu_fie_init() 190 topology_set_scale_freq_source(&cppc_sftd, policy->cpus); in cppc_cpufreq_cpu_fie_init() 194 * We free all the resources on policy's removal and not on CPU removal as the 199 * We just need to make sure to remove them all on policy->exit(). 201 static void cppc_cpufreq_cpu_fie_exit(struct cpufreq_policy *policy) in cppc_cpufreq_cpu_fie_exit() argument 209 /* policy->cpus will be empty here, use related_cpus instead */ in cppc_cpufreq_cpu_fie_exit() 210 topology_clear_scale_freq_source(SCALE_FREQ_SOURCE_CPPC, policy->related_cpus); in cppc_cpufreq_cpu_fie_exit() 212 for_each_cpu(cpu, policy->related_cpus) { in cppc_cpufreq_cpu_fie_exit() [all …]
|
| D | sh-cpufreq.c | 33 struct cpufreq_policy *policy; member 45 struct cpufreq_policy *policy = target->policy; in __sh_cpufreq_target() local 46 int cpu = policy->cpu; in __sh_cpufreq_target() 60 if (freq < (policy->min * 1000) || freq > (policy->max * 1000)) in __sh_cpufreq_target() 69 cpufreq_freq_transition_begin(target->policy, &freqs); in __sh_cpufreq_target() 71 cpufreq_freq_transition_end(target->policy, &freqs, 0); in __sh_cpufreq_target() 80 static int sh_cpufreq_target(struct cpufreq_policy *policy, in sh_cpufreq_target() argument 84 struct cpufreq_target data = { .policy = policy, .freq = target_freq }; in sh_cpufreq_target() 86 return work_on_cpu(policy->cpu, __sh_cpufreq_target, &data); in sh_cpufreq_target() 89 static int sh_cpufreq_verify(struct cpufreq_policy_data *policy) in sh_cpufreq_verify() argument [all …]
|
| D | amd-pstate.c | 247 if (epp > 0 && cpudata->policy == CPUFREQ_POLICY_PERFORMANCE) { in amd_pstate_set_energy_pref_index() 248 pr_debug("EPP cannot be set under performance policy\n"); in amd_pstate_set_energy_pref_index() 495 static int amd_pstate_verify(struct cpufreq_policy_data *policy) in amd_pstate_verify() argument 497 cpufreq_verify_within_cpu_limits(policy); in amd_pstate_verify() 502 static int amd_pstate_update_min_max_limit(struct cpufreq_policy *policy) in amd_pstate_update_min_max_limit() argument 505 struct amd_cpudata *cpudata = policy->driver_data; in amd_pstate_update_min_max_limit() 507 max_limit_perf = div_u64(policy->max * cpudata->highest_perf, cpudata->max_freq); in amd_pstate_update_min_max_limit() 508 min_limit_perf = div_u64(policy->min * cpudata->highest_perf, cpudata->max_freq); in amd_pstate_update_min_max_limit() 512 WRITE_ONCE(cpudata->max_limit_freq, policy->max); in amd_pstate_update_min_max_limit() 513 WRITE_ONCE(cpudata->min_limit_freq, policy->min); in amd_pstate_update_min_max_limit() [all …]
|
| /kernel/linux/linux-5.10/drivers/cpufreq/ |
| D | cpufreq.c | 79 static unsigned int __cpufreq_get(struct cpufreq_policy *policy); 80 static int cpufreq_init_governor(struct cpufreq_policy *policy); 81 static void cpufreq_exit_governor(struct cpufreq_policy *policy); 82 static void cpufreq_governor_limits(struct cpufreq_policy *policy); 83 static int cpufreq_set_policy(struct cpufreq_policy *policy, 88 * Two notifier lists: the "policy" list is involved in the 89 * validation process for a new CPU frequency policy; the 116 struct kobject *get_governor_parent_kobj(struct cpufreq_policy *policy) in get_governor_parent_kobj() argument 119 return &policy->kobj; in get_governor_parent_kobj() 168 * - policy->cpus with all possible CPUs [all …]
|
| D | cpufreq_userspace.c | 23 * @policy: pointer to policy struct where freq is being set 28 static int cpufreq_set(struct cpufreq_policy *policy, unsigned int freq) in cpufreq_set() argument 31 unsigned int *setspeed = policy->governor_data; in cpufreq_set() 33 pr_debug("cpufreq_set for cpu %u, freq %u kHz\n", policy->cpu, freq); in cpufreq_set() 36 if (!per_cpu(cpu_is_managed, policy->cpu)) in cpufreq_set() 41 ret = __cpufreq_driver_target(policy, freq, CPUFREQ_RELATION_L); in cpufreq_set() 47 static ssize_t show_speed(struct cpufreq_policy *policy, char *buf) in show_speed() argument 49 return sprintf(buf, "%u\n", policy->cur); in show_speed() 52 static int cpufreq_userspace_policy_init(struct cpufreq_policy *policy) in cpufreq_userspace_policy_init() argument 60 policy->governor_data = setspeed; in cpufreq_userspace_policy_init() [all …]
|
| D | freq_table.c | 17 bool policy_has_boost_freq(struct cpufreq_policy *policy) in policy_has_boost_freq() argument 19 struct cpufreq_frequency_table *pos, *table = policy->freq_table; in policy_has_boost_freq() 32 int cpufreq_frequency_table_cpuinfo(struct cpufreq_policy *policy, in cpufreq_frequency_table_cpuinfo() argument 54 policy->min = policy->cpuinfo.min_freq = min_freq; in cpufreq_frequency_table_cpuinfo() 55 policy->max = max_freq; in cpufreq_frequency_table_cpuinfo() 60 if (policy->cpuinfo.max_freq < max_freq) in cpufreq_frequency_table_cpuinfo() 61 policy->max = policy->cpuinfo.max_freq = max_freq; in cpufreq_frequency_table_cpuinfo() 63 if (policy->min == ~0) in cpufreq_frequency_table_cpuinfo() 69 int cpufreq_frequency_table_verify(struct cpufreq_policy_data *policy, in cpufreq_frequency_table_verify() argument 76 pr_debug("request for verification of policy (%u - %u kHz) for cpu %u\n", in cpufreq_frequency_table_verify() [all …]
|
| D | sh-cpufreq.c | 34 struct cpufreq_policy *policy; member 46 struct cpufreq_policy *policy = target->policy; in __sh_cpufreq_target() local 47 int cpu = policy->cpu; in __sh_cpufreq_target() 61 if (freq < (policy->min * 1000) || freq > (policy->max * 1000)) in __sh_cpufreq_target() 70 cpufreq_freq_transition_begin(target->policy, &freqs); in __sh_cpufreq_target() 72 cpufreq_freq_transition_end(target->policy, &freqs, 0); in __sh_cpufreq_target() 81 static int sh_cpufreq_target(struct cpufreq_policy *policy, in sh_cpufreq_target() argument 85 struct cpufreq_target data = { .policy = policy, .freq = target_freq }; in sh_cpufreq_target() 87 return work_on_cpu(policy->cpu, __sh_cpufreq_target, &data); in sh_cpufreq_target() 90 static int sh_cpufreq_verify(struct cpufreq_policy_data *policy) in sh_cpufreq_verify() argument [all …]
|
| D | longrun.c | 29 * longrun_get_policy - get the current LongRun policy 30 * @policy: struct cpufreq_policy where current policy is written into 32 * Reads the current LongRun policy by access to MSR_TMTA_LONGRUN_FLAGS 35 static void longrun_get_policy(struct cpufreq_policy *policy) in longrun_get_policy() argument 42 policy->policy = CPUFREQ_POLICY_PERFORMANCE; in longrun_get_policy() 44 policy->policy = CPUFREQ_POLICY_POWERSAVE; in longrun_get_policy() 53 policy->min = policy->max = longrun_high_freq; in longrun_get_policy() 55 policy->min = longrun_low_freq + msr_lo * in longrun_get_policy() 57 policy->max = longrun_low_freq + msr_hi * in longrun_get_policy() 60 policy->cpu = 0; in longrun_get_policy() [all …]
|
| /kernel/linux/linux-6.6/Documentation/admin-guide/mm/ |
| D | numa_memory_policy.rst | 2 NUMA Memory Policy 5 What is NUMA Memory Policy? 8 In the Linux kernel, "memory policy" determines from which node the kernel will 11 The current memory policy support was added to Linux 2.6 around May 2004. This 12 document attempts to describe the concepts and APIs of the 2.6 memory policy 24 Memory Policy Concepts 30 The Linux kernel supports _scopes_ of memory policy, described here from 33 System Default Policy 34 this policy is "hard coded" into the kernel. It is the policy 36 one of the more specific policy scopes discussed below. When [all …]
|
| /kernel/linux/linux-5.10/Documentation/admin-guide/mm/ |
| D | numa_memory_policy.rst | 4 NUMA Memory Policy 7 What is NUMA Memory Policy? 10 In the Linux kernel, "memory policy" determines from which node the kernel will 13 The current memory policy support was added to Linux 2.6 around May 2004. This 14 document attempts to describe the concepts and APIs of the 2.6 memory policy 26 Memory Policy Concepts 32 The Linux kernel supports _scopes_ of memory policy, described here from 35 System Default Policy 36 this policy is "hard coded" into the kernel. It is the policy 38 one of the more specific policy scopes discussed below. When [all …]
|
| /kernel/linux/linux-5.10/fs/crypto/ |
| D | policy.c | 3 * Encryption policy functions for per-file encryption support. 10 * Modified by Eric Biggers, 2019 for v2 policy support. 21 * @policy1: the first policy 22 * @policy2: the second policy 80 static bool supported_iv_ino_lblk_policy(const struct fscrypt_policy_v2 *policy, in supported_iv_ino_lblk_policy() argument 95 if (policy->contents_encryption_mode != FSCRYPT_MODE_AES_256_XTS) { in supported_iv_ino_lblk_policy() 97 "Can't use %s policy with contents mode other than AES-256-XTS", in supported_iv_ino_lblk_policy() 109 "Can't use %s policy on filesystem '%s' because it doesn't have stable inode numbers", in supported_iv_ino_lblk_policy() 117 "Can't use %s policy on filesystem '%s' because its inode numbers are too long", in supported_iv_ino_lblk_policy() 123 "Can't use %s policy on filesystem '%s' because its block numbers are too long", in supported_iv_ino_lblk_policy() [all …]
|
| /kernel/linux/linux-6.6/fs/crypto/ |
| D | policy.c | 3 * Encryption policy functions for per-file encryption support. 10 * Modified by Eric Biggers, 2019 for v2 policy support. 22 * @policy1: the first policy 23 * @policy2: the second policy 36 int fscrypt_policy_to_key_spec(const union fscrypt_policy *policy, in fscrypt_policy_to_key_spec() argument 39 switch (policy->version) { in fscrypt_policy_to_key_spec() 42 memcpy(key_spec->u.descriptor, policy->v1.master_key_descriptor, in fscrypt_policy_to_key_spec() 47 memcpy(key_spec->u.identifier, policy->v2.master_key_identifier, in fscrypt_policy_to_key_spec() 120 static bool supported_iv_ino_lblk_policy(const struct fscrypt_policy_v2 *policy, in supported_iv_ino_lblk_policy() argument 135 if (policy->contents_encryption_mode != FSCRYPT_MODE_AES_256_XTS) { in supported_iv_ino_lblk_policy() [all …]
|
| /kernel/linux/linux-5.10/include/linux/ |
| D | cpufreq.h | 59 unsigned int cpu; /* cpu managing this policy, must be online */ 68 unsigned int restore_freq; /* = policy->cur before transition */ 71 unsigned int policy; /* see above */ member 72 unsigned int last_policy; /* policy before unplug */ 93 * - Any routine that wants to read from the policy structure will 95 * - Any routine that will write to the policy structure and/or may take away 96 * the policy altogether (eg. CPU hotplug), will hold this lock in write 105 * policy and that the change will affect all of the policy CPUs then. 120 * the driver to set the frequency for this policy. To be set by the 158 * Used for passing new cpufreq policy data to the cpufreq driver's ->verify() [all …]
|
| /kernel/linux/linux-6.6/include/linux/ |
| D | cpufreq.h | 63 unsigned int cpu; /* cpu managing this policy, must be online */ 74 unsigned int policy; /* see above */ member 75 unsigned int last_policy; /* policy before unplug */ 96 * - Any routine that wants to read from the policy structure will 98 * - Any routine that will write to the policy structure and/or may take away 99 * the policy altogether (eg. CPU hotplug), will hold this lock in write 108 * policy and that the change will affect all of the policy CPUs then. 130 * the driver to set the frequency for this policy. To be set by the 144 /* Per policy boost enabled flag. */ 171 * Used for passing new cpufreq policy data to the cpufreq driver's ->verify() [all …]
|
| /kernel/linux/linux-5.10/net/netlink/ |
| D | policy.c | 3 * NETLINK Policy advertisement to userspace 22 const struct nla_policy *policy; member 28 const struct nla_policy *policy, in add_policy() argument 34 if (!policy || !maxtype) in add_policy() 38 if (state->policies[i].policy == policy && in add_policy() 42 if (!state->policies[i].policy) { in add_policy() 43 state->policies[i].policy = policy; in add_policy() 58 state->policies[state->n_alloc].policy = policy; in add_policy() 67 * netlink_policy_dump_get_policy_idx - retrieve policy index 68 * @state: the policy dump state [all …]
|
| /kernel/linux/linux-6.6/net/netlink/ |
| D | policy.c | 3 * NETLINK Policy advertisement to userspace 22 const struct nla_policy *policy; member 28 const struct nla_policy *policy, in add_policy() argument 34 if (!policy || !maxtype) in add_policy() 38 if (state->policies[i].policy == policy && in add_policy() 42 if (!state->policies[i].policy) { in add_policy() 43 state->policies[i].policy = policy; in add_policy() 58 state->policies[state->n_alloc].policy = policy; in add_policy() 67 * netlink_policy_dump_get_policy_idx - retrieve policy index 68 * @state: the policy dump state [all …]
|
| /kernel/linux/linux-5.10/tools/perf/Documentation/ |
| D | security.txt | 13 Targeted policy with perf_event_open() access control capabilities: 15 1. Download selinux-policy SRPM package (e.g. selinux-policy-3.14.4-48.fc31.src.rpm on FC31) 18 # rpm -Uhv selinux-policy-3.14.4-48.fc31.src.rpm 22 # rpmbuild -bp selinux-policy.spec 24 3. Place patch below at rpmbuild/BUILD/selinux-policy-b86eaaf4dbcf2d51dd4432df7185c0eaf3cbcc02 27 # patch -p1 < selinux-policy-perf-events-perfmon.patch 28 patching file policy/flask/access_vectors 29 patching file policy/flask/security_classes 30 # cat selinux-policy-perf-events-perfmon.patch 31 diff -Nura a/policy/flask/access_vectors b/policy/flask/access_vectors [all …]
|
| /kernel/linux/linux-6.6/tools/perf/Documentation/ |
| D | security.txt | 13 Targeted policy with perf_event_open() access control capabilities: 15 1. Download selinux-policy SRPM package (e.g. selinux-policy-3.14.4-48.fc31.src.rpm on FC31) 18 # rpm -Uhv selinux-policy-3.14.4-48.fc31.src.rpm 22 # rpmbuild -bp selinux-policy.spec 24 3. Place patch below at rpmbuild/BUILD/selinux-policy-b86eaaf4dbcf2d51dd4432df7185c0eaf3cbcc02 27 # patch -p1 < selinux-policy-perf-events-perfmon.patch 28 patching file policy/flask/access_vectors 29 patching file policy/flask/security_classes 30 # cat selinux-policy-perf-events-perfmon.patch 31 diff -Nura a/policy/flask/access_vectors b/policy/flask/access_vectors [all …]
|
| /kernel/linux/linux-6.6/drivers/hwtracing/stm/ |
| D | policy.c | 3 * System Trace Module (STM) master/channel allocation policy management 6 * A master/channel allocation policy allows mapping string identifiers to 21 * STP Master/Channel allocation policy configfs layout. 31 struct stp_policy *policy; member 110 stm = policy_node->policy->stm; in stp_policy_node_masters_store() 157 stm = policy_node->policy->stm; in stp_policy_node_channels_store() 228 struct stp_policy *policy; in stp_policy_node_make() local 231 policy = container_of(group, struct stp_policy, group); in stp_policy_node_make() 235 policy = parent_node->policy; in stp_policy_node_make() 238 if (!policy->stm) in stp_policy_node_make() [all …]
|
| /kernel/linux/linux-5.10/drivers/hwtracing/stm/ |
| D | policy.c | 3 * System Trace Module (STM) master/channel allocation policy management 6 * A master/channel allocation policy allows mapping string identifiers to 21 * STP Master/Channel allocation policy configfs layout. 31 struct stp_policy *policy; member 115 stm = policy_node->policy->stm; in stp_policy_node_masters_store() 162 stm = policy_node->policy->stm; in stp_policy_node_channels_store() 233 struct stp_policy *policy; in stp_policy_node_make() local 236 policy = container_of(group, struct stp_policy, group); in stp_policy_node_make() 240 policy = parent_node->policy; in stp_policy_node_make() 243 if (!policy->stm) in stp_policy_node_make() [all …]
|
| /kernel/linux/linux-5.10/Documentation/cpu-freq/ |
| D | cpu-drivers.rst | 48 .init - A pointer to the per-policy initialization function. 71 .exit - A pointer to a per-policy cleanup function called during 74 .stop_cpu - A pointer to a per-policy stop function called during 77 .suspend - A pointer to a per-policy suspend function which is called 79 policy. 81 .resume - A pointer to a per-policy resume function which is called 84 .ready - A pointer to a per-policy ready function which is called after 85 the policy is fully initialized. 92 .set_boost - A pointer to a per-policy function to enable/disable boost 100 cpufreq driver registers itself, the per-policy initialization function [all …]
|
| /kernel/linux/linux-6.6/Documentation/cpu-freq/ |
| D | cpu-drivers.rst | 48 .init - A pointer to the per-policy initialization function. 68 .exit - A pointer to a per-policy cleanup function called during 71 .suspend - A pointer to a per-policy suspend function which is called 73 policy. 75 .resume - A pointer to a per-policy resume function which is called 78 .ready - A pointer to a per-policy ready function which is called after 79 the policy is fully initialized. 86 .set_boost - A pointer to a per-policy function to enable/disable boost 94 cpufreq driver registers itself, the per-policy initialization function 95 cpufreq_driver.init is called if no cpufreq policy existed for the CPU. [all …]
|