コード例 #1
0
	struct cpu_cf_events *cpuhw = this_cpu_ptr(&cpu_cf_events);

	debug_sprintf_event(cf_diag_dbg, 5,
			    "%s event %p cpu %d flags %#x\n",
			   __func__, event, event->cpu, flags);

	cf_diag_stop(event, PERF_EF_UPDATE);
	ctr_set_multiple_stop(&cpuhw->state, event->hw.config_base);
	ctr_set_multiple_disable(&cpuhw->state, event->hw.config_base);
	cpuhw->flags &= ~PMU_F_IN_USE;
}

CPUMF_EVENT_ATTR(CF_DIAG, CF_DIAG, PERF_EVENT_CPUM_CF_DIAG);

static struct attribute *cf_diag_events_attr[] = {
	CPUMF_EVENT_PTR(CF_DIAG, CF_DIAG),
	NULL,
};

PMU_FORMAT_ATTR(event, "config:0-63");

static struct attribute *cf_diag_format_attr[] = {
	&format_attr_event.attr,
	NULL,
};

static struct attribute_group cf_diag_events_group = {
	.name = "events",
	.attrs = cf_diag_events_attr,
};
static struct attribute_group cf_diag_format_group = {
コード例 #2
0
ファイル: perf_cpum_cf_events.c プロジェクト: 0-T-0/ps4-linux
CPUMF_EVENT_ATTR(cf_zec12, L1D_OFFBOOK_L3_SOURCED_WRITES_IV, 0x0098);
CPUMF_EVENT_ATTR(cf_zec12, L1I_ONCHIP_L3_SOURCED_WRITES, 0x0099);
CPUMF_EVENT_ATTR(cf_zec12, L1I_OFFCHIP_L3_SOURCED_WRITES, 0x009a);
CPUMF_EVENT_ATTR(cf_zec12, L1I_OFFBOOK_L3_SOURCED_WRITES, 0x009b);
CPUMF_EVENT_ATTR(cf_zec12, L1I_ONBOOK_L4_SOURCED_WRITES, 0x009c);
CPUMF_EVENT_ATTR(cf_zec12, L1I_OFFBOOK_L4_SOURCED_WRITES, 0x009d);
CPUMF_EVENT_ATTR(cf_zec12, TX_C_TEND, 0x009e);
CPUMF_EVENT_ATTR(cf_zec12, L1I_ONCHIP_L3_SOURCED_WRITES_IV, 0x009f);
CPUMF_EVENT_ATTR(cf_zec12, L1I_OFFCHIP_L3_SOURCED_WRITES_IV, 0x00a0);
CPUMF_EVENT_ATTR(cf_zec12, L1I_OFFBOOK_L3_SOURCED_WRITES_IV, 0x00a1);
CPUMF_EVENT_ATTR(cf_zec12, TX_NC_TABORT, 0x00b1);
CPUMF_EVENT_ATTR(cf_zec12, TX_C_TABORT_NO_SPECIAL, 0x00b2);
CPUMF_EVENT_ATTR(cf_zec12, TX_C_TABORT_SPECIAL, 0x00b3);

static struct attribute *cpumcf_pmu_event_attr[] = {
	CPUMF_EVENT_PTR(cf, CPU_CYCLES),
	CPUMF_EVENT_PTR(cf, INSTRUCTIONS),
	CPUMF_EVENT_PTR(cf, L1I_DIR_WRITES),
	CPUMF_EVENT_PTR(cf, L1I_PENALTY_CYCLES),
	CPUMF_EVENT_PTR(cf, PROBLEM_STATE_CPU_CYCLES),
	CPUMF_EVENT_PTR(cf, PROBLEM_STATE_INSTRUCTIONS),
	CPUMF_EVENT_PTR(cf, PROBLEM_STATE_L1I_DIR_WRITES),
	CPUMF_EVENT_PTR(cf, PROBLEM_STATE_L1I_PENALTY_CYCLES),
	CPUMF_EVENT_PTR(cf, PROBLEM_STATE_L1D_DIR_WRITES),
	CPUMF_EVENT_PTR(cf, PROBLEM_STATE_L1D_PENALTY_CYCLES),
	CPUMF_EVENT_PTR(cf, L1D_DIR_WRITES),
	CPUMF_EVENT_PTR(cf, L1D_PENALTY_CYCLES),
	CPUMF_EVENT_PTR(cf, PRNG_FUNCTIONS),
	CPUMF_EVENT_PTR(cf, PRNG_CYCLES),
	CPUMF_EVENT_PTR(cf, PRNG_BLOCKED_FUNCTIONS),
	CPUMF_EVENT_PTR(cf, PRNG_BLOCKED_CYCLES),