This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 6/6] aarch64: Add hp-timing.h


On 07/21/2014 08:31 AM, Marcus Shawcroft wrote:
> On 21 July 2014 13:01, Andreas Schwab <schwab@suse.de> wrote:
>> pinskia@gmail.com writes:
>>
>>>> On Jul 21, 2014, at 4:41 AM, Andreas Schwab <schwab@suse.de> wrote:
>>>>
>>>> Richard Henderson <rth@twiddle.net> writes:
>>>>
>>>>> +/* Sync the instruction stream, and read from the virtual cycle counter.  */
>>>>> +#define HP_TIMING_NOW(Var) \
>>>>> +  __asm__ __volatile__ ("isb; mrs %0, cntvct_el0" : "=r" (Var))
>>>>
>>>> According to https://bugs.launchpad.net/bugs/1344320 the generic timers
>>>> are not part of the kernel-to-userspace contract.
>>>
>>>
>>> I think this is bogus for the kernel folks not allow a high precision timer in user space. Timers like this are needed for micro-benchmarking compiler changes along with other libc changes.
>>
>> According to the qemu bug the timers are optional.
>>
> 
> The generic timers are indeed optional, therefore we should not assume
> they are always present.  I don't want this to ship in 2.20 as is, so
> will back out the patch in the morning pending a better solution.

Do you know of any real hardware that doesn't have the timers?  I really can't
imagine them being elided.

It should be trivial to enable this for qemu linux-user mode; we certainly
support the i386 rdtsc instruction.


r~


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]