Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6
* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6: [IA64] Clean away some code inside some non-existent CONFIG ifdefs [IA64] ar.itc access must really be after xtime_lock.sequence has been read [IA64] correctly count CPU objects in the ia64/sn hwperf interface [IA64] arbitary speed tty ioctl support [IA64] use machvec=dig on hpzx1 platforms
This commit is contained in:
@@ -247,6 +247,9 @@ ENTRY(fsys_gettimeofday)
|
||||
.time_redo:
|
||||
.pred.rel.mutex p8,p9,p10
|
||||
ld4.acq r28 = [r29] // xtime_lock.sequence. Must come first for locking purposes
|
||||
;;
|
||||
and r28 = ~1,r28 // Make sequence even to force retry if odd
|
||||
;;
|
||||
(p8) mov r2 = ar.itc // CPU_TIMER. 36 clocks latency!!!
|
||||
add r22 = IA64_TIME_INTERPOLATOR_LAST_COUNTER_OFFSET,r20
|
||||
(p9) ld8 r2 = [r30] // readq(ti->address). Could also have latency issues..
|
||||
@@ -284,7 +287,6 @@ EX(.fail_efault, probe.w.fault r31, 3) // This takes 5 cycles and we have spare
|
||||
(p15) ld8 r17 = [r19],-IA64_TIMESPEC_TV_NSEC_OFFSET
|
||||
(p7) cmp.ne p7,p0 = r25,r3 // if cmpxchg not successful redo
|
||||
// simulate tbit.nz.or p7,p0 = r28,0
|
||||
and r28 = ~1,r28 // Make sequence even to force retry if odd
|
||||
getf.sig r2 = f8
|
||||
mf
|
||||
add r8 = r8,r18 // Add time interpolator offset
|
||||
|
Reference in New Issue
Block a user