projects
/
linux-drm-fsl-dcu.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wirel...
[linux-drm-fsl-dcu.git]
/
arch
/
s390
/
kernel
/
vdso32
/
clock_gettime.S
diff --git
a/arch/s390/kernel/vdso32/clock_gettime.S
b/arch/s390/kernel/vdso32/clock_gettime.S
index b2224e0b974ce5beff26c4d1e7838d48e0232ae9..5be8e472f57d1d0debe31c849b4177492380d957 100644
(file)
--- a/
arch/s390/kernel/vdso32/clock_gettime.S
+++ b/
arch/s390/kernel/vdso32/clock_gettime.S
@@
-38,25
+38,26
@@
__kernel_clock_gettime:
sl %r1,__VDSO_XTIME_STAMP+4(%r5)
brc 3,2f
ahi %r0,-1
sl %r1,__VDSO_XTIME_STAMP+4(%r5)
brc 3,2f
ahi %r0,-1
-2: ms %r0,__VDSO_
NTP_MULT(%r5) /* cyc2ns(clock,cycle_delta)
*/
+2: ms %r0,__VDSO_
TK_MULT(%r5) /* * tk->mult
*/
lr %r2,%r0
lr %r2,%r0
- l %r0,__VDSO_
NTP
_MULT(%r5)
+ l %r0,__VDSO_
TK
_MULT(%r5)
ltr %r1,%r1
mr %r0,%r0
jnm 3f
ltr %r1,%r1
mr %r0,%r0
jnm 3f
- a %r0,__VDSO_
NTP
_MULT(%r5)
+ a %r0,__VDSO_
TK
_MULT(%r5)
3: alr %r0,%r2
3: alr %r0,%r2
- srdl %r0,12
- al %r0,__VDSO_XTIME_NSEC(%r5) /* + xtime */
+ al %r0,__VDSO_XTIME_NSEC(%r5) /* + tk->xtime_nsec */
al %r1,__VDSO_XTIME_NSEC+4(%r5)
brc 12,4f
ahi %r0,1
al %r1,__VDSO_XTIME_NSEC+4(%r5)
brc 12,4f
ahi %r0,1
-4: l %r2,__VDSO_XTIME_SEC+4(%r5)
- al %r0,__VDSO_WTOM_NSEC(%r5) /* + wall_to_monotonic */
+4: al %r0,__VDSO_WTOM_NSEC(%r5) /* + wall_to_monotonic.nsec */
al %r1,__VDSO_WTOM_NSEC+4(%r5)
brc 12,5f
ahi %r0,1
al %r1,__VDSO_WTOM_NSEC+4(%r5)
brc 12,5f
ahi %r0,1
-5: al %r2,__VDSO_WTOM_SEC+4(%r5)
+5: l %r2,__VDSO_TK_SHIFT(%r5) /* Timekeeper shift */
+ srdl %r0,0(%r2) /* >> tk->shift */
+ l %r2,__VDSO_XTIME_SEC+4(%r5)
+ al %r2,__VDSO_WTOM_SEC+4(%r5)
cl %r4,__VDSO_UPD_COUNT+4(%r5) /* check update counter */
jne 1b
basr %r5,0
cl %r4,__VDSO_UPD_COUNT+4(%r5) /* check update counter */
jne 1b
basr %r5,0
@@
-86,20
+87,21
@@
__kernel_clock_gettime:
sl %r1,__VDSO_XTIME_STAMP+4(%r5)
brc 3,12f
ahi %r0,-1
sl %r1,__VDSO_XTIME_STAMP+4(%r5)
brc 3,12f
ahi %r0,-1
-12: ms %r0,__VDSO_
NTP_MULT(%r5) /* cyc2ns(clock,cycle_delta)
*/
+12: ms %r0,__VDSO_
TK_MULT(%r5) /* * tk->mult
*/
lr %r2,%r0
lr %r2,%r0
- l %r0,__VDSO_
NTP
_MULT(%r5)
+ l %r0,__VDSO_
TK
_MULT(%r5)
ltr %r1,%r1
mr %r0,%r0
jnm 13f
ltr %r1,%r1
mr %r0,%r0
jnm 13f
- a %r0,__VDSO_
NTP
_MULT(%r5)
+ a %r0,__VDSO_
TK
_MULT(%r5)
13: alr %r0,%r2
13: alr %r0,%r2
- srdl %r0,12
- al %r0,__VDSO_XTIME_NSEC(%r5) /* + xtime */
+ al %r0,__VDSO_XTIME_NSEC(%r5) /* + tk->xtime_nsec */
al %r1,__VDSO_XTIME_NSEC+4(%r5)
brc 12,14f
ahi %r0,1
al %r1,__VDSO_XTIME_NSEC+4(%r5)
brc 12,14f
ahi %r0,1
-14: l %r2,__VDSO_XTIME_SEC+4(%r5)
+14: l %r2,__VDSO_TK_SHIFT(%r5) /* Timekeeper shift */
+ srdl %r0,0(%r2) /* >> tk->shift */
+ l %r2,__VDSO_XTIME_SEC+4(%r5)
cl %r4,__VDSO_UPD_COUNT+4(%r5) /* check update counter */
jne 11b
basr %r5,0
cl %r4,__VDSO_UPD_COUNT+4(%r5) /* check update counter */
jne 11b
basr %r5,0