On Thu, Mar 07, 2019 at 08:51:23AM -0800, Andi Kleen wrote: > On Thu, Mar 07, 2019 at 04:35:00PM +0100, Jiri Olsa wrote: > > On Tue, Mar 05, 2019 at 08:40:17AM -0800, Andi Kleen wrote: > > > On Tue, Mar 05, 2019 at 05:28:54PM +0100, Jiri Olsa wrote: > > > > On Tue, Mar 05, 2019 at 08:13:19AM -0800, Andi Kleen wrote: > > > > > On Tue, Mar 05, 2019 at 04:25:33PM +0100, Jiri Olsa wrote: > > > > > > Getting precise_ip field from the perf_pmu::max_precise > > > > > > config read from sysfs. If it's not available falling > > > > > > back to current detection function. > > > > > > > > > > max_precise depends on the event. This won't work for all > > > > > events. For example only instructions and cycles support > > > > > ppp > > > > > > > > I'm getting precise_ip=3 on mem-* events as well, that's why I > > > > was fixing this.. now it's not working for any event > > > > > > I don't think it means anything for mem-* > > > > > > There's some support for it on Goldmont plus for other events, > > > but it doesn't support mem-*. On big core it's only > > > for instructions and cycles, all implemented with the same > > > event. All other PEBS events only have two levels > > > switching between the two IPs. > > > > ok, so how about this, it's the change I posted merged with the patch > > Still seems like a hack. Even though I don't know of a case that > would break now. But it would be better to have the precise probing > in the open retry loop, instead of trying to reinvent it here.
right, I guess we could just set precise_ip hard to 3 for :P and add fallback part for the precise_ip in perf_evsel__open jirka