diff options
-rw-r--r-- | arch/x86_64/kernel/vsyscall.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/arch/x86_64/kernel/vsyscall.c b/arch/x86_64/kernel/vsyscall.c index 902783bc4d53..ac48c3857ddb 100644 --- a/arch/x86_64/kernel/vsyscall.c +++ b/arch/x86_64/kernel/vsyscall.c | |||
@@ -77,7 +77,8 @@ static __always_inline void do_vgettimeofday(struct timeval * tv) | |||
77 | __vxtime.tsc_quot) >> 32; | 77 | __vxtime.tsc_quot) >> 32; |
78 | /* See comment in x86_64 do_gettimeofday. */ | 78 | /* See comment in x86_64 do_gettimeofday. */ |
79 | } else { | 79 | } else { |
80 | usec += ((readl((void *)fix_to_virt(VSYSCALL_HPET) + 0xf0) - | 80 | usec += ((readl((void __iomem *) |
81 | fix_to_virt(VSYSCALL_HPET) + 0xf0) - | ||
81 | __vxtime.last) * __vxtime.quot) >> 32; | 82 | __vxtime.last) * __vxtime.quot) >> 32; |
82 | } | 83 | } |
83 | } while (read_seqretry(&__xtime_lock, sequence)); | 84 | } while (read_seqretry(&__xtime_lock, sequence)); |
@@ -191,7 +192,8 @@ static int vsyscall_sysctl_change(ctl_table *ctl, int write, struct file * filp, | |||
191 | void __user *buffer, size_t *lenp, loff_t *ppos) | 192 | void __user *buffer, size_t *lenp, loff_t *ppos) |
192 | { | 193 | { |
193 | extern u16 vsysc1, vsysc2; | 194 | extern u16 vsysc1, vsysc2; |
194 | u16 *map1, *map2; | 195 | u16 __iomem *map1; |
196 | u16 __iomem *map2; | ||
195 | int ret = proc_dointvec(ctl, write, filp, buffer, lenp, ppos); | 197 | int ret = proc_dointvec(ctl, write, filp, buffer, lenp, ppos); |
196 | if (!write) | 198 | if (!write) |
197 | return ret; | 199 | return ret; |
@@ -206,11 +208,11 @@ static int vsyscall_sysctl_change(ctl_table *ctl, int write, struct file * filp, | |||
206 | goto out; | 208 | goto out; |
207 | } | 209 | } |
208 | if (!sysctl_vsyscall) { | 210 | if (!sysctl_vsyscall) { |
209 | *map1 = SYSCALL; | 211 | writew(SYSCALL, map1); |
210 | *map2 = SYSCALL; | 212 | writew(SYSCALL, map2); |
211 | } else { | 213 | } else { |
212 | *map1 = NOP2; | 214 | writew(NOP2, map1); |
213 | *map2 = NOP2; | 215 | writew(NOP2, map2); |
214 | } | 216 | } |
215 | iounmap(map2); | 217 | iounmap(map2); |
216 | out: | 218 | out: |