Messages in this thread | | | Subject | Re: [PATCH V5 00/12] perf: Add Icelake support (kernel only, except Topdown) | From | "Liang, Kan" <> | Date | Mon, 8 Apr 2019 12:25:17 -0400 |
| |
>> @@ -963,40 +963,42 @@ static u64 pebs_update_adaptive_cfg(stru >> u64 pebs_data_cfg = 0; >> bool gprs, tsx_weight; >> - if ((sample_type & ~(PERF_SAMPLE_IP|PERF_SAMPLE_TIME)) || >> - attr->precise_ip < 2) { >> + if (!(sample_type & ~(PERF_SAMPLE_IP|PERF_SAMPLE_TIME)) && >> + attr->precise_ip > 1) >> + return pebs_data_cfs;
Sorry, there are two typos. I didn't find in the previous email. Should be pebs_data_cfg.
>> - if (sample_type & PERF_PEBS_MEMINFO_TYPE) >> - pebs_data_cfg |= PEBS_DATACFG_MEMINFO; >> + if (sample_type & PERF_PEBS_MEMINFO_TYPE) >> + pebs_data_cfg |= PEBS_DATACFG_MEMINFO; >> + /* >> + * We need GPRs when: >> + * + user requested them >> + * + precise_ip < 2 for the non event IP >> + * + For RTM TSX weight we need GPRs for the abort code. >> + */ >> + gprs = (sample_type & PERF_SAMPLE_REGS_INTR) && >> + (attr->sample_regs_intr & PEBS_GPRS_REGS); >> + >> + tsx_weight = (sample_type & PERF_SAMPLE_WEIGHT) && >> + ((attr->config & INTEL_ARCH_EVENT_MASK) == >> + x86_pmu.rtm_abort_event); >> + >> + if (gprs || (attr->precise_ip < 2) || tsx_weight) >> + pebs_data_cfg |= PEBS_DATACFG_GPRS; >> + >> + if ((sample_type & PERF_SAMPLE_REGS_INTR) && >> + (attr->sample_regs_intr & PERF_XMM_REGS))
Should be PEBS_XMM_REGS.
Thanks, Kan
| |