On Fri, Aug 19, 2016 at 02:24:58PM +0200, Jan Viktorin wrote: > On Fri, 19 Aug 2016 17:16:12 +0530 > Jerin Jacob <jerin.jacob at caviumnetworks.com> wrote: > > > I've got a private kernel driver enabling and disabling (hopefully) properly > this for ARMv7. If we'd like to merge it, I'd like to have a single module > or at least single module with 2 implementations... > > I can post it if it would be helpful.
I don't think we can use this in production as this may alter PMU state used by 'perf' etc.I think let it be a debug interface for armv7 and armv8 and disable it by default. > > Regards > Jan > > > > > > > > > > + * > > > > + */ > > > > +static inline uint64_t > > > > +rte_rdtsc(void) > > > > +{ > > > > + uint64_t tsc; > > > > + > > > > + asm volatile("mrs %0, pmccntr_el0" : "=r"(tsc)); > > > > + return tsc; > > > > +} > > > > +#endif > > > > > > > > static inline uint64_t > > > > rte_rdtsc_precise(void) > > > > -- > > > > 2.5.5 > > > > > > Do you also plan to support performance monitor event counters? > > > > No. This patch was inspired by armv7 PMU scheme and its part of DPDK. > > The sole reason to add this support to catch any performance regression > > through app/test application.Other than that, I think cntvct_el0 based > > existing scheme is good enough for all the use cases. > > > > > > > > Regards, > > > Nipun > > > > > > > -- > Jan Viktorin E-mail: Viktorin at RehiveTech.com > System Architect Web: www.RehiveTech.com > RehiveTech > Brno, Czech Republic