/linux-master/arch/x86/include/asm/ |
H A D | resctrl.h | 12 * (closid, rmid) pair to an index and back. On x86 only the RMID is 24 * The upper 32 bits of MSR_IA32_PQR_ASSOC contain closid and the 99 u32 closid = state->default_closid; local 104 * If this task has a closid/rmid assigned, use it. 105 * Else use the closid/rmid assigned to this cpu. 108 tmp = READ_ONCE(tsk->closid); 110 closid = tmp; 119 if (closid != state->cur_closid || rmid != state->cur_rmid) { 120 state->cur_closid = closid; 122 wrmsr(MSR_IA32_PQR_ASSOC, rmid, closid); 135 resctrl_arch_set_closid_rmid(struct task_struct *tsk, u32 closid, u32 rmid) argument 142 resctrl_arch_match_closid(struct task_struct *tsk, u32 closid) argument 165 resctrl_arch_rmid_idx_decode(u32 idx, u32 *closid, u32 *rmid) argument [all...] |
/linux-master/include/linux/ |
H A D | resctrl.h | 77 * by closid 201 * @num_closid: The number of closid that can be used with this schema. When 213 /* The number of closid supported by this resource regardless of CDP */ 215 int resctrl_arch_update_domains(struct rdt_resource *r, u32 closid); 222 u32 closid, enum resctrl_conf_type t, u32 cfg_val); 225 u32 closid, enum resctrl_conf_type type); 236 * @closid: closid that matches the rmid. Depending on the architecture, the 237 * counter may match traffic of both @closid and @rmid, or @rmid 257 u32 closid, u3 [all...] |
H A D | sched.h | 1239 u32 closid; member in struct:task_struct
|
/linux-master/arch/x86/kernel/cpu/resctrl/ |
H A D | monitor.c | 30 * @closid: The CLOSID for this entry. 36 * both @closid and @rmid, or @rmid only. 41 u32 closid; member in struct:rmid_entry 176 u32 closid, rmid; local 179 resctrl_arch_rmid_idx_decode(idx, &closid, &rmid); 181 WARN_ON_ONCE(entry->closid != closid); 313 closid_num_dirty_rmid[entry->closid]--; 351 if (resctrl_arch_rmid_read(r, d, entry->closid, entry->rmid, 377 static struct rmid_entry *resctrl_find_free_rmid(u32 closid) argument 454 alloc_rmid(u32 closid) argument 499 free_rmid(u32 closid, u32 rmid) argument 523 get_mbm_state(struct rdt_domain *d, u32 closid, u32 rmid, enum resctrl_event_id evtid) argument 538 __mon_event_count(u32 closid, u32 rmid, struct rmid_read *rr) argument 573 mbm_bw_count(u32 closid, u32 rmid, struct rmid_read *rr) argument 661 u32 closid, rmid, cur_msr_val, new_msr_val; local 725 mbm_update(struct rdt_resource *r, struct rdt_domain *d, u32 closid, u32 rmid) argument [all...] |
H A D | ctrlmondata.c | 66 u32 closid = data->rdtgrp->closid; local 80 d->mbps_val[closid] = bw_val; 176 * The CBM may not overlap with the CBM of another closid if 179 if (rdtgroup_cbm_overlaps(s, d, cbm_val, rdtgrp->closid, true)) { 184 if (rdtgroup_cbm_overlaps(s, d, cbm_val, rdtgrp->closid, false)) { 262 static u32 get_config_index(u32 closid, enum resctrl_conf_type type) argument 267 return closid; 269 return closid * 2 + 1; 271 return closid * 291 resctrl_arch_update_one(struct rdt_resource *r, struct rdt_domain *d, u32 closid, enum resctrl_conf_type t, u32 cfg_val) argument 312 resctrl_arch_update_domains(struct rdt_resource *r, u32 closid) argument 457 resctrl_arch_get_config(struct rdt_resource *r, struct rdt_domain *d, u32 closid, enum resctrl_conf_type type) argument 466 show_doms(struct seq_file *s, struct resctrl_schema *schema, int closid) argument 500 u32 closid; local [all...] |
H A D | internal.h | 252 * @closid: closid for this rdtgroup 266 u32 closid; member in struct:rdtgroup 425 * @num_closid: Maximum number of closid this hardware can support, 567 unsigned long cbm, int closid, bool exclusive); 570 enum rdtgrp_mode rdtgroup_mode_by_closid(int closid); 582 void closid_free(int closid); 583 int alloc_rmid(u32 closid); 584 void free_rmid(u32 closid, u32 rmid); 608 bool closid_allocated(unsigned int closid); [all...] |
H A D | rdtgroup.c | 112 * + We can simply set current's closid to assign a task to a resource 148 u32 closid; local 156 closid = cleanest_closid; 158 closid = ffs(closid_free_map); 159 if (closid == 0) 161 closid--; 163 __clear_bit(closid, &closid_free_map); 165 return closid; 168 void closid_free(int closid) argument 172 __set_bit(closid, 182 closid_allocated(unsigned int closid) argument 198 rdtgroup_mode_by_closid(int closid) argument 586 u32 closid, rmid = rdtgrp->mon.rmid; local 1246 __rdtgroup_cbm_overlaps(struct rdt_resource *r, struct rdt_domain *d, unsigned long cbm, int closid, enum resctrl_conf_type type, bool exclusive) argument 1301 rdtgroup_cbm_overlaps(struct resctrl_schema *s, struct rdt_domain *d, unsigned long cbm, int closid, bool exclusive) argument 1331 int closid = rdtgrp->closid; local 1485 u32 closid; local 3209 __init_one_rdt_domain(struct rdt_domain *d, struct resctrl_schema *s, u32 closid) argument 3287 rdtgroup_init_cat(struct resctrl_schema *s, u32 closid) argument 3302 rdtgroup_init_mba(struct rdt_resource *r, u32 closid) argument 3525 u32 closid; local [all...] |
H A D | pseudo_lock.c | 489 * Critical section begin: start by writing the closid associated 494 __wrmsr(MSR_IA32_PQR_ASSOC, rmid_p, rdtgrp->closid); 497 * into cache region associated with just activated plr->closid. 527 * Critical section end: restore closid with capacity bitmask that 657 * lose the closid associated with it so we cannot allow it to have any 674 * default closid associated with it. 755 free_rmid(rdtgrp->closid, rdtgrp->mon.rmid); 780 ret = alloc_rmid(rdtgrp->closid); 790 free_rmid(rdtgrp->closid, rdtgrp->mon.rmid); 1395 closid_free(rdtgrp->closid); [all...] |