/* PMU Format attribute macros */ #define IMC_EVENT_OFFSET_MASK 0xffffffffULL
/* * Macro to mask bits 0:21 of first double word(which is the timebase) to * compare with 8th double word (timebase) of trace imc record data.
*/ #define IMC_TRACE_RECORD_TB1_MASK 0x3ffffffffffULL
/* * Bit 0:1 in third DW of IMC trace record * specifies the MSR[HV PR] values.
*/ #define IMC_TRACE_RECORD_VAL_HVPR(x) ((x) >> 62)
/* * Device tree parser code detects IMC pmu support and * registers new IMC pmus. This structure will hold the * pmu functions, events, counter memory information * and attrs for each imc pmu and will be referenced at * the time of pmu registration.
*/ struct imc_pmu { struct pmu pmu; struct imc_mem_info *mem_info; struct imc_events *events; /* * Attribute groups for the PMU. Slot 0 used for * format attribute, slot 1 used for cpusmask attribute, * slot 2 used for event attribute. Slot 3 keep as * NULL.
*/ conststruct attribute_group *attr_groups[4];
u32 counter_mem_size; int domain; /* * flag to notify whether the memory is mmaped * or allocated by kernel.
*/ bool imc_counter_mmaped;
};
/* * Structure to hold id, lock and reference count for the imc events which * are inited.
*/ struct imc_pmu_ref {
spinlock_t lock; unsignedint id; int refc;
};
/* * In-Memory Collection Counters type. * Data comes from Device tree. * Three device type are supported.
*/
/* * Domains for IMC PMUs
*/ #define IMC_DOMAIN_NEST 1 #define IMC_DOMAIN_CORE 2 #define IMC_DOMAIN_THREAD 3 /* For trace-imc the domain is still thread but it operates in trace-mode */ #define IMC_DOMAIN_TRACE 4
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.