Bug #466
closedticks macro not serializing
Description
http://en.wikipedia.org/wiki/Time_Stamp_Counter
"Starting with the Pentium Pro, Intel processors have supported
out-of-order execution, where instructions are not necessarily
performed in the order they appear in the executable. This can
cause RDTSC to be executed later than expected, producing a
misleading cycle count.[3] This problem can be solved by executing
a serializing instruction, such as CPUID, to force every preceding
instruction to complete before allowing the program to continue, or
by using the RDTSCP instruction, which is a serializing variant of
the RDTSC instruction (starting from Core i74 and starting from
AMD Athlon 64 X2 CPUs with AM2 Socket (Windsor & Brisbane))."
Noticed that suri doesn't serialize.. example code is included in
the entry.
Files
Updated by Victor Julien over 12 years ago
- Status changed from New to Assigned
- Assignee set to Anoop Saldanha
- Priority changed from Normal to Low
- Target version changed from TBD to 1.4beta1
- Estimated time set to 2.00 h
Updated by Anoop Saldanha over 12 years ago
- File 0001-bug-466-Updated-getticks-to-serialize-execution-of-r.patch 0001-bug-466-Updated-getticks-to-serialize-execution-of-r.patch added
patch attached.
Updated by Victor Julien about 12 years ago
- Status changed from Assigned to Closed
- Target version changed from 1.4beta1 to 1.3.1
Applied, thanks Anoop.