aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/s390/appldata/appldata_mem.c2
-rw-r--r--arch/s390/appldata/appldata_net_sum.c2
-rw-r--r--arch/s390/appldata/appldata_os.c2
-rw-r--r--arch/s390/hypfs/hypfs_vm.c2
-rw-r--r--arch/s390/include/asm/timex.h18
-rw-r--r--arch/s390/kernel/debug.c2
-rw-r--r--arch/s390/kernel/early.c6
-rw-r--r--arch/s390/kernel/nmi.c2
-rw-r--r--arch/s390/kernel/smp.c10
-rw-r--r--arch/s390/kernel/time.c26
-rw-r--r--arch/s390/kernel/vtime.c2
-rw-r--r--arch/s390/kvm/interrupt.c6
-rw-r--r--arch/s390/lib/delay.c16
-rw-r--r--drivers/s390/block/dasd.c18
-rw-r--r--drivers/s390/block/dasd_3990_erp.c8
-rw-r--r--drivers/s390/block/dasd_alias.c4
-rw-r--r--drivers/s390/block/dasd_diag.c10
-rw-r--r--drivers/s390/block/dasd_eckd.c30
-rw-r--r--drivers/s390/block/dasd_eer.c2
-rw-r--r--drivers/s390/block/dasd_erp.c4
-rw-r--r--drivers/s390/block/dasd_fba.c2
-rw-r--r--drivers/s390/char/sclp.c4
-rw-r--r--drivers/s390/char/zcore.c2
-rw-r--r--drivers/s390/cio/cio.c4
-rw-r--r--drivers/s390/cio/cmf.c6
-rw-r--r--drivers/s390/cio/css.c2
-rw-r--r--drivers/s390/cio/device_fsm.c2
-rw-r--r--drivers/s390/cio/qdio_main.c12
-rw-r--r--drivers/s390/net/qeth_core.h2
-rw-r--r--drivers/s390/scsi/zfcp_fsf.c2
-rw-r--r--drivers/s390/scsi/zfcp_qdio.c2
31 files changed, 106 insertions, 106 deletions
diff --git a/arch/s390/appldata/appldata_mem.c b/arch/s390/appldata/appldata_mem.c
index 02d9a1cf5057..7ef60b52d6e0 100644
--- a/arch/s390/appldata/appldata_mem.c
+++ b/arch/s390/appldata/appldata_mem.c
@@ -108,7 +108,7 @@ static void appldata_get_mem_data(void *data)
108 mem_data->totalswap = P2K(val.totalswap); 108 mem_data->totalswap = P2K(val.totalswap);
109 mem_data->freeswap = P2K(val.freeswap); 109 mem_data->freeswap = P2K(val.freeswap);
110 110
111 mem_data->timestamp = get_clock(); 111 mem_data->timestamp = get_tod_clock();
112 mem_data->sync_count_2++; 112 mem_data->sync_count_2++;
113} 113}
114 114
diff --git a/arch/s390/appldata/appldata_net_sum.c b/arch/s390/appldata/appldata_net_sum.c
index 1370e358d49a..2d224b945355 100644
--- a/arch/s390/appldata/appldata_net_sum.c
+++ b/arch/s390/appldata/appldata_net_sum.c
@@ -111,7 +111,7 @@ static void appldata_get_net_sum_data(void *data)
111 net_data->tx_dropped = tx_dropped; 111 net_data->tx_dropped = tx_dropped;
112 net_data->collisions = collisions; 112 net_data->collisions = collisions;
113 113
114 net_data->timestamp = get_clock(); 114 net_data->timestamp = get_tod_clock();
115 net_data->sync_count_2++; 115 net_data->sync_count_2++;
116} 116}
117 117
diff --git a/arch/s390/appldata/appldata_os.c b/arch/s390/appldata/appldata_os.c
index 87521ba682e5..de8e2b3b0180 100644
--- a/arch/s390/appldata/appldata_os.c
+++ b/arch/s390/appldata/appldata_os.c
@@ -156,7 +156,7 @@ static void appldata_get_os_data(void *data)
156 } 156 }
157 ops.size = new_size; 157 ops.size = new_size;
158 } 158 }
159 os_data->timestamp = get_clock(); 159 os_data->timestamp = get_tod_clock();
160 os_data->sync_count_2++; 160 os_data->sync_count_2++;
161} 161}
162 162
diff --git a/arch/s390/hypfs/hypfs_vm.c b/arch/s390/hypfs/hypfs_vm.c
index 4f6afaa8bd8f..f364dcf77e8e 100644
--- a/arch/s390/hypfs/hypfs_vm.c
+++ b/arch/s390/hypfs/hypfs_vm.c
@@ -245,7 +245,7 @@ static int dbfs_diag2fc_create(void **data, void **data_free_ptr, size_t *size)
245 d2fc = diag2fc_store(guest_query, &count, sizeof(d2fc->hdr)); 245 d2fc = diag2fc_store(guest_query, &count, sizeof(d2fc->hdr));
246 if (IS_ERR(d2fc)) 246 if (IS_ERR(d2fc))
247 return PTR_ERR(d2fc); 247 return PTR_ERR(d2fc);
248 get_clock_ext(d2fc->hdr.tod_ext); 248 get_tod_clock_ext(d2fc->hdr.tod_ext);
249 d2fc->hdr.len = count * sizeof(struct diag2fc_data); 249 d2fc->hdr.len = count * sizeof(struct diag2fc_data);
250 d2fc->hdr.version = DBFS_D2FC_HDR_VERSION; 250 d2fc->hdr.version = DBFS_D2FC_HDR_VERSION;
251 d2fc->hdr.count = count; 251 d2fc->hdr.count = count;
diff --git a/arch/s390/include/asm/timex.h b/arch/s390/include/asm/timex.h
index 4c060bb5b8ea..8ad8af915032 100644
--- a/arch/s390/include/asm/timex.h
+++ b/arch/s390/include/asm/timex.h
@@ -15,7 +15,7 @@
15#define TOD_UNIX_EPOCH 0x7d91048bca000000ULL 15#define TOD_UNIX_EPOCH 0x7d91048bca000000ULL
16 16
17/* Inline functions for clock register access. */ 17/* Inline functions for clock register access. */
18static inline int set_clock(__u64 time) 18static inline int set_tod_clock(__u64 time)
19{ 19{
20 int cc; 20 int cc;
21 21
@@ -27,7 +27,7 @@ static inline int set_clock(__u64 time)
27 return cc; 27 return cc;
28} 28}
29 29
30static inline int store_clock(__u64 *time) 30static inline int store_tod_clock(__u64 *time)
31{ 31{
32 int cc; 32 int cc;
33 33
@@ -71,7 +71,7 @@ static inline void local_tick_enable(unsigned long long comp)
71 71
72typedef unsigned long long cycles_t; 72typedef unsigned long long cycles_t;
73 73
74static inline unsigned long long get_clock(void) 74static inline unsigned long long get_tod_clock(void)
75{ 75{
76 unsigned long long clk; 76 unsigned long long clk;
77 77
@@ -83,21 +83,21 @@ static inline unsigned long long get_clock(void)
83 return clk; 83 return clk;
84} 84}
85 85
86static inline void get_clock_ext(char *clk) 86static inline void get_tod_clock_ext(char *clk)
87{ 87{
88 asm volatile("stcke %0" : "=Q" (*clk) : : "cc"); 88 asm volatile("stcke %0" : "=Q" (*clk) : : "cc");
89} 89}
90 90
91static inline unsigned long long get_clock_xt(void) 91static inline unsigned long long get_tod_clock_xt(void)
92{ 92{
93 unsigned char clk[16]; 93 unsigned char clk[16];
94 get_clock_ext(clk); 94 get_tod_clock_ext(clk);
95 return *((unsigned long long *)&clk[1]); 95 return *((unsigned long long *)&clk[1]);
96} 96}
97 97
98static inline cycles_t get_cycles(void) 98static inline cycles_t get_cycles(void)
99{ 99{
100 return (cycles_t) get_clock() >> 2; 100 return (cycles_t) get_tod_clock() >> 2;
101} 101}
102 102
103int get_sync_clock(unsigned long long *clock); 103int get_sync_clock(unsigned long long *clock);
@@ -123,9 +123,9 @@ extern u64 sched_clock_base_cc;
123 * function, otherwise the returned value is not guaranteed to 123 * function, otherwise the returned value is not guaranteed to
124 * be monotonic. 124 * be monotonic.
125 */ 125 */
126static inline unsigned long long get_clock_monotonic(void) 126static inline unsigned long long get_tod_clock_monotonic(void)
127{ 127{
128 return get_clock_xt() - sched_clock_base_cc; 128 return get_tod_clock_xt() - sched_clock_base_cc;
129} 129}
130 130
131/** 131/**
diff --git a/arch/s390/kernel/debug.c b/arch/s390/kernel/debug.c
index 4e8215e0d4b6..09a94cd9debc 100644
--- a/arch/s390/kernel/debug.c
+++ b/arch/s390/kernel/debug.c
@@ -867,7 +867,7 @@ static inline void
867debug_finish_entry(debug_info_t * id, debug_entry_t* active, int level, 867debug_finish_entry(debug_info_t * id, debug_entry_t* active, int level,
868 int exception) 868 int exception)
869{ 869{
870 active->id.stck = get_clock(); 870 active->id.stck = get_tod_clock();
871 active->id.fields.cpuid = smp_processor_id(); 871 active->id.fields.cpuid = smp_processor_id();
872 active->caller = __builtin_return_address(0); 872 active->caller = __builtin_return_address(0);
873 active->id.fields.exception = exception; 873 active->id.fields.exception = exception;
diff --git a/arch/s390/kernel/early.c b/arch/s390/kernel/early.c
index 1f0eee9e7daa..1ee98e56fc6a 100644
--- a/arch/s390/kernel/early.c
+++ b/arch/s390/kernel/early.c
@@ -47,10 +47,10 @@ static void __init reset_tod_clock(void)
47{ 47{
48 u64 time; 48 u64 time;
49 49
50 if (store_clock(&time) == 0) 50 if (store_tod_clock(&time) == 0)
51 return; 51 return;
52 /* TOD clock not running. Set the clock to Unix Epoch. */ 52 /* TOD clock not running. Set the clock to Unix Epoch. */
53 if (set_clock(TOD_UNIX_EPOCH) != 0 || store_clock(&time) != 0) 53 if (set_tod_clock(TOD_UNIX_EPOCH) != 0 || store_tod_clock(&time) != 0)
54 disabled_wait(0); 54 disabled_wait(0);
55 55
56 sched_clock_base_cc = TOD_UNIX_EPOCH; 56 sched_clock_base_cc = TOD_UNIX_EPOCH;
@@ -173,7 +173,7 @@ static noinline __init void create_kernel_nss(void)
173 } 173 }
174 174
175 /* re-initialize cputime accounting. */ 175 /* re-initialize cputime accounting. */
176 sched_clock_base_cc = get_clock(); 176 sched_clock_base_cc = get_tod_clock();
177 S390_lowcore.last_update_clock = sched_clock_base_cc; 177 S390_lowcore.last_update_clock = sched_clock_base_cc;
178 S390_lowcore.last_update_timer = 0x7fffffffffffffffULL; 178 S390_lowcore.last_update_timer = 0x7fffffffffffffffULL;
179 S390_lowcore.user_timer = 0; 179 S390_lowcore.user_timer = 0;
diff --git a/arch/s390/kernel/nmi.c b/arch/s390/kernel/nmi.c
index 7918fbea36bb..504175ebf8b0 100644
--- a/arch/s390/kernel/nmi.c
+++ b/arch/s390/kernel/nmi.c
@@ -293,7 +293,7 @@ void notrace s390_do_machine_check(struct pt_regs *regs)
293 * retry this instruction. 293 * retry this instruction.
294 */ 294 */
295 spin_lock(&ipd_lock); 295 spin_lock(&ipd_lock);
296 tmp = get_clock(); 296 tmp = get_tod_clock();
297 if (((tmp - last_ipd) >> 12) < MAX_IPD_TIME) 297 if (((tmp - last_ipd) >> 12) < MAX_IPD_TIME)
298 ipd_count++; 298 ipd_count++;
299 else 299 else
diff --git a/arch/s390/kernel/smp.c b/arch/s390/kernel/smp.c
index 7433a2f9e5cc..549c9d173c0f 100644
--- a/arch/s390/kernel/smp.c
+++ b/arch/s390/kernel/smp.c
@@ -365,16 +365,16 @@ void smp_emergency_stop(cpumask_t *cpumask)
365 u64 end; 365 u64 end;
366 int cpu; 366 int cpu;
367 367
368 end = get_clock() + (1000000UL << 12); 368 end = get_tod_clock() + (1000000UL << 12);
369 for_each_cpu(cpu, cpumask) { 369 for_each_cpu(cpu, cpumask) {
370 struct pcpu *pcpu = pcpu_devices + cpu; 370 struct pcpu *pcpu = pcpu_devices + cpu;
371 set_bit(ec_stop_cpu, &pcpu->ec_mask); 371 set_bit(ec_stop_cpu, &pcpu->ec_mask);
372 while (__pcpu_sigp(pcpu->address, SIGP_EMERGENCY_SIGNAL, 372 while (__pcpu_sigp(pcpu->address, SIGP_EMERGENCY_SIGNAL,
373 0, NULL) == SIGP_CC_BUSY && 373 0, NULL) == SIGP_CC_BUSY &&
374 get_clock() < end) 374 get_tod_clock() < end)
375 cpu_relax(); 375 cpu_relax();
376 } 376 }
377 while (get_clock() < end) { 377 while (get_tod_clock() < end) {
378 for_each_cpu(cpu, cpumask) 378 for_each_cpu(cpu, cpumask)
379 if (pcpu_stopped(pcpu_devices + cpu)) 379 if (pcpu_stopped(pcpu_devices + cpu))
380 cpumask_clear_cpu(cpu, cpumask); 380 cpumask_clear_cpu(cpu, cpumask);
@@ -694,7 +694,7 @@ static void __init smp_detect_cpus(void)
694 */ 694 */
695static void __cpuinit smp_start_secondary(void *cpuvoid) 695static void __cpuinit smp_start_secondary(void *cpuvoid)
696{ 696{
697 S390_lowcore.last_update_clock = get_clock(); 697 S390_lowcore.last_update_clock = get_tod_clock();
698 S390_lowcore.restart_stack = (unsigned long) restart_stack; 698 S390_lowcore.restart_stack = (unsigned long) restart_stack;
699 S390_lowcore.restart_fn = (unsigned long) do_restart; 699 S390_lowcore.restart_fn = (unsigned long) do_restart;
700 S390_lowcore.restart_data = 0; 700 S390_lowcore.restart_data = 0;
@@ -947,7 +947,7 @@ static ssize_t show_idle_time(struct device *dev,
947 unsigned int sequence; 947 unsigned int sequence;
948 948
949 do { 949 do {
950 now = get_clock(); 950 now = get_tod_clock();
951 sequence = ACCESS_ONCE(idle->sequence); 951 sequence = ACCESS_ONCE(idle->sequence);
952 idle_time = ACCESS_ONCE(idle->idle_time); 952 idle_time = ACCESS_ONCE(idle->idle_time);
953 idle_enter = ACCESS_ONCE(idle->clock_idle_enter); 953 idle_enter = ACCESS_ONCE(idle->clock_idle_enter);
diff --git a/arch/s390/kernel/time.c b/arch/s390/kernel/time.c
index 0aa98db8a80d..876546b9cfa1 100644
--- a/arch/s390/kernel/time.c
+++ b/arch/s390/kernel/time.c
@@ -63,7 +63,7 @@ static DEFINE_PER_CPU(struct clock_event_device, comparators);
63 */ 63 */
64unsigned long long notrace __kprobes sched_clock(void) 64unsigned long long notrace __kprobes sched_clock(void)
65{ 65{
66 return tod_to_ns(get_clock_monotonic()); 66 return tod_to_ns(get_tod_clock_monotonic());
67} 67}
68 68
69/* 69/*
@@ -194,7 +194,7 @@ static void stp_reset(void);
194 194
195void read_persistent_clock(struct timespec *ts) 195void read_persistent_clock(struct timespec *ts)
196{ 196{
197 tod_to_timeval(get_clock() - TOD_UNIX_EPOCH, ts); 197 tod_to_timeval(get_tod_clock() - TOD_UNIX_EPOCH, ts);
198} 198}
199 199
200void read_boot_clock(struct timespec *ts) 200void read_boot_clock(struct timespec *ts)
@@ -204,7 +204,7 @@ void read_boot_clock(struct timespec *ts)
204 204
205static cycle_t read_tod_clock(struct clocksource *cs) 205static cycle_t read_tod_clock(struct clocksource *cs)
206{ 206{
207 return get_clock(); 207 return get_tod_clock();
208} 208}
209 209
210static struct clocksource clocksource_tod = { 210static struct clocksource clocksource_tod = {
@@ -342,7 +342,7 @@ int get_sync_clock(unsigned long long *clock)
342 342
343 sw_ptr = &get_cpu_var(clock_sync_word); 343 sw_ptr = &get_cpu_var(clock_sync_word);
344 sw0 = atomic_read(sw_ptr); 344 sw0 = atomic_read(sw_ptr);
345 *clock = get_clock(); 345 *clock = get_tod_clock();
346 sw1 = atomic_read(sw_ptr); 346 sw1 = atomic_read(sw_ptr);
347 put_cpu_var(clock_sync_word); 347 put_cpu_var(clock_sync_word);
348 if (sw0 == sw1 && (sw0 & 0x80000000U)) 348 if (sw0 == sw1 && (sw0 & 0x80000000U))
@@ -486,7 +486,7 @@ static void etr_reset(void)
486 .p0 = 0, .p1 = 0, ._pad1 = 0, .ea = 0, 486 .p0 = 0, .p1 = 0, ._pad1 = 0, .ea = 0,
487 .es = 0, .sl = 0 }; 487 .es = 0, .sl = 0 };
488 if (etr_setr(&etr_eacr) == 0) { 488 if (etr_setr(&etr_eacr) == 0) {
489 etr_tolec = get_clock(); 489 etr_tolec = get_tod_clock();
490 set_bit(CLOCK_SYNC_HAS_ETR, &clock_sync_flags); 490 set_bit(CLOCK_SYNC_HAS_ETR, &clock_sync_flags);
491 if (etr_port0_online && etr_port1_online) 491 if (etr_port0_online && etr_port1_online)
492 set_bit(CLOCK_SYNC_ETR, &clock_sync_flags); 492 set_bit(CLOCK_SYNC_ETR, &clock_sync_flags);
@@ -768,8 +768,8 @@ static int etr_sync_clock(void *data)
768 __ctl_set_bit(14, 21); 768 __ctl_set_bit(14, 21);
769 __ctl_set_bit(0, 29); 769 __ctl_set_bit(0, 29);
770 clock = ((unsigned long long) (aib->edf2.etv + 1)) << 32; 770 clock = ((unsigned long long) (aib->edf2.etv + 1)) << 32;
771 old_clock = get_clock(); 771 old_clock = get_tod_clock();
772 if (set_clock(clock) == 0) { 772 if (set_tod_clock(clock) == 0) {
773 __udelay(1); /* Wait for the clock to start. */ 773 __udelay(1); /* Wait for the clock to start. */
774 __ctl_clear_bit(0, 29); 774 __ctl_clear_bit(0, 29);
775 __ctl_clear_bit(14, 21); 775 __ctl_clear_bit(14, 21);
@@ -845,7 +845,7 @@ static struct etr_eacr etr_handle_events(struct etr_eacr eacr)
845 * assume that this can have caused an stepping 845 * assume that this can have caused an stepping
846 * port switch. 846 * port switch.
847 */ 847 */
848 etr_tolec = get_clock(); 848 etr_tolec = get_tod_clock();
849 eacr.p0 = etr_port0_online; 849 eacr.p0 = etr_port0_online;
850 if (!eacr.p0) 850 if (!eacr.p0)
851 eacr.e0 = 0; 851 eacr.e0 = 0;
@@ -858,7 +858,7 @@ static struct etr_eacr etr_handle_events(struct etr_eacr eacr)
858 * assume that this can have caused an stepping 858 * assume that this can have caused an stepping
859 * port switch. 859 * port switch.
860 */ 860 */
861 etr_tolec = get_clock(); 861 etr_tolec = get_tod_clock();
862 eacr.p1 = etr_port1_online; 862 eacr.p1 = etr_port1_online;
863 if (!eacr.p1) 863 if (!eacr.p1)
864 eacr.e1 = 0; 864 eacr.e1 = 0;
@@ -974,7 +974,7 @@ static void etr_update_eacr(struct etr_eacr eacr)
974 etr_eacr = eacr; 974 etr_eacr = eacr;
975 etr_setr(&etr_eacr); 975 etr_setr(&etr_eacr);
976 if (dp_changed) 976 if (dp_changed)
977 etr_tolec = get_clock(); 977 etr_tolec = get_tod_clock();
978} 978}
979 979
980/* 980/*
@@ -1012,7 +1012,7 @@ static void etr_work_fn(struct work_struct *work)
1012 /* Store aib to get the current ETR status word. */ 1012 /* Store aib to get the current ETR status word. */
1013 BUG_ON(etr_stetr(&aib) != 0); 1013 BUG_ON(etr_stetr(&aib) != 0);
1014 etr_port0.esw = etr_port1.esw = aib.esw; /* Copy status word. */ 1014 etr_port0.esw = etr_port1.esw = aib.esw; /* Copy status word. */
1015 now = get_clock(); 1015 now = get_tod_clock();
1016 1016
1017 /* 1017 /*
1018 * Update the port information if the last stepping port change 1018 * Update the port information if the last stepping port change
@@ -1537,10 +1537,10 @@ static int stp_sync_clock(void *data)
1537 if (stp_info.todoff[0] || stp_info.todoff[1] || 1537 if (stp_info.todoff[0] || stp_info.todoff[1] ||
1538 stp_info.todoff[2] || stp_info.todoff[3] || 1538 stp_info.todoff[2] || stp_info.todoff[3] ||
1539 stp_info.tmd != 2) { 1539 stp_info.tmd != 2) {
1540 old_clock = get_clock(); 1540 old_clock = get_tod_clock();
1541 rc = chsc_sstpc(stp_page, STP_OP_SYNC, 0); 1541 rc = chsc_sstpc(stp_page, STP_OP_SYNC, 0);
1542 if (rc == 0) { 1542 if (rc == 0) {
1543 delta = adjust_time(old_clock, get_clock(), 0); 1543 delta = adjust_time(old_clock, get_tod_clock(), 0);
1544 fixup_clock_comparator(delta); 1544 fixup_clock_comparator(delta);
1545 rc = chsc_sstpi(stp_page, &stp_info, 1545 rc = chsc_sstpi(stp_page, &stp_info,
1546 sizeof(struct stp_sstpi)); 1546 sizeof(struct stp_sstpi));
diff --git a/arch/s390/kernel/vtime.c b/arch/s390/kernel/vtime.c
index e84b8b68444a..8911a169af44 100644
--- a/arch/s390/kernel/vtime.c
+++ b/arch/s390/kernel/vtime.c
@@ -191,7 +191,7 @@ cputime64_t s390_get_idle_time(int cpu)
191 unsigned int sequence; 191 unsigned int sequence;
192 192
193 do { 193 do {
194 now = get_clock(); 194 now = get_tod_clock();
195 sequence = ACCESS_ONCE(idle->sequence); 195 sequence = ACCESS_ONCE(idle->sequence);
196 idle_enter = ACCESS_ONCE(idle->clock_idle_enter); 196 idle_enter = ACCESS_ONCE(idle->clock_idle_enter);
197 idle_exit = ACCESS_ONCE(idle->clock_idle_exit); 197 idle_exit = ACCESS_ONCE(idle->clock_idle_exit);
diff --git a/arch/s390/kvm/interrupt.c b/arch/s390/kvm/interrupt.c
index 82c481ddef76..87418b50f21c 100644
--- a/arch/s390/kvm/interrupt.c
+++ b/arch/s390/kvm/interrupt.c
@@ -362,7 +362,7 @@ static int kvm_cpu_has_interrupt(struct kvm_vcpu *vcpu)
362 } 362 }
363 363
364 if ((!rc) && (vcpu->arch.sie_block->ckc < 364 if ((!rc) && (vcpu->arch.sie_block->ckc <
365 get_clock() + vcpu->arch.sie_block->epoch)) { 365 get_tod_clock() + vcpu->arch.sie_block->epoch)) {
366 if ((!psw_extint_disabled(vcpu)) && 366 if ((!psw_extint_disabled(vcpu)) &&
367 (vcpu->arch.sie_block->gcr[0] & 0x800ul)) 367 (vcpu->arch.sie_block->gcr[0] & 0x800ul))
368 rc = 1; 368 rc = 1;
@@ -402,7 +402,7 @@ int kvm_s390_handle_wait(struct kvm_vcpu *vcpu)
402 goto no_timer; 402 goto no_timer;
403 } 403 }
404 404
405 now = get_clock() + vcpu->arch.sie_block->epoch; 405 now = get_tod_clock() + vcpu->arch.sie_block->epoch;
406 if (vcpu->arch.sie_block->ckc < now) { 406 if (vcpu->arch.sie_block->ckc < now) {
407 __unset_cpu_idle(vcpu); 407 __unset_cpu_idle(vcpu);
408 return 0; 408 return 0;
@@ -492,7 +492,7 @@ void kvm_s390_deliver_pending_interrupts(struct kvm_vcpu *vcpu)
492 } 492 }
493 493
494 if ((vcpu->arch.sie_block->ckc < 494 if ((vcpu->arch.sie_block->ckc <
495 get_clock() + vcpu->arch.sie_block->epoch)) 495 get_tod_clock() + vcpu->arch.sie_block->epoch))
496 __try_deliver_ckc_interrupt(vcpu); 496 __try_deliver_ckc_interrupt(vcpu);
497 497
498 if (atomic_read(&fi->active)) { 498 if (atomic_read(&fi->active)) {
diff --git a/arch/s390/lib/delay.c b/arch/s390/lib/delay.c
index 42d0cf89121d..c61b9fad43cc 100644
--- a/arch/s390/lib/delay.c
+++ b/arch/s390/lib/delay.c
@@ -32,7 +32,7 @@ static void __udelay_disabled(unsigned long long usecs)
32 unsigned long cr0, cr6, new; 32 unsigned long cr0, cr6, new;
33 u64 clock_saved, end; 33 u64 clock_saved, end;
34 34
35 end = get_clock() + (usecs << 12); 35 end = get_tod_clock() + (usecs << 12);
36 clock_saved = local_tick_disable(); 36 clock_saved = local_tick_disable();
37 __ctl_store(cr0, 0, 0); 37 __ctl_store(cr0, 0, 0);
38 __ctl_store(cr6, 6, 6); 38 __ctl_store(cr6, 6, 6);
@@ -45,7 +45,7 @@ static void __udelay_disabled(unsigned long long usecs)
45 set_clock_comparator(end); 45 set_clock_comparator(end);
46 vtime_stop_cpu(); 46 vtime_stop_cpu();
47 local_irq_disable(); 47 local_irq_disable();
48 } while (get_clock() < end); 48 } while (get_tod_clock() < end);
49 lockdep_on(); 49 lockdep_on();
50 __ctl_load(cr0, 0, 0); 50 __ctl_load(cr0, 0, 0);
51 __ctl_load(cr6, 6, 6); 51 __ctl_load(cr6, 6, 6);
@@ -56,7 +56,7 @@ static void __udelay_enabled(unsigned long long usecs)
56{ 56{
57 u64 clock_saved, end; 57 u64 clock_saved, end;
58 58
59 end = get_clock() + (usecs << 12); 59 end = get_tod_clock() + (usecs << 12);
60 do { 60 do {
61 clock_saved = 0; 61 clock_saved = 0;
62 if (end < S390_lowcore.clock_comparator) { 62 if (end < S390_lowcore.clock_comparator) {
@@ -67,7 +67,7 @@ static void __udelay_enabled(unsigned long long usecs)
67 local_irq_disable(); 67 local_irq_disable();
68 if (clock_saved) 68 if (clock_saved)
69 local_tick_enable(clock_saved); 69 local_tick_enable(clock_saved);
70 } while (get_clock() < end); 70 } while (get_tod_clock() < end);
71} 71}
72 72
73/* 73/*
@@ -111,8 +111,8 @@ void udelay_simple(unsigned long long usecs)
111{ 111{
112 u64 end; 112 u64 end;
113 113
114 end = get_clock() + (usecs << 12); 114 end = get_tod_clock() + (usecs << 12);
115 while (get_clock() < end) 115 while (get_tod_clock() < end)
116 cpu_relax(); 116 cpu_relax();
117} 117}
118 118
@@ -122,10 +122,10 @@ void __ndelay(unsigned long long nsecs)
122 122
123 nsecs <<= 9; 123 nsecs <<= 9;
124 do_div(nsecs, 125); 124 do_div(nsecs, 125);
125 end = get_clock() + nsecs; 125 end = get_tod_clock() + nsecs;
126 if (nsecs & ~0xfffUL) 126 if (nsecs & ~0xfffUL)
127 __udelay(nsecs >> 12); 127 __udelay(nsecs >> 12);
128 while (get_clock() < end) 128 while (get_tod_clock() < end)
129 barrier(); 129 barrier();
130} 130}
131EXPORT_SYMBOL(__ndelay); 131EXPORT_SYMBOL(__ndelay);
diff --git a/drivers/s390/block/dasd.c b/drivers/s390/block/dasd.c
index 29225e1c159c..e1d96344d733 100644
--- a/drivers/s390/block/dasd.c
+++ b/drivers/s390/block/dasd.c
@@ -1352,7 +1352,7 @@ int dasd_term_IO(struct dasd_ccw_req *cqr)
1352 switch (rc) { 1352 switch (rc) {
1353 case 0: /* termination successful */ 1353 case 0: /* termination successful */
1354 cqr->status = DASD_CQR_CLEAR_PENDING; 1354 cqr->status = DASD_CQR_CLEAR_PENDING;
1355 cqr->stopclk = get_clock(); 1355 cqr->stopclk = get_tod_clock();
1356 cqr->starttime = 0; 1356 cqr->starttime = 0;
1357 DBF_DEV_EVENT(DBF_DEBUG, device, 1357 DBF_DEV_EVENT(DBF_DEBUG, device,
1358 "terminate cqr %p successful", 1358 "terminate cqr %p successful",
@@ -1420,7 +1420,7 @@ int dasd_start_IO(struct dasd_ccw_req *cqr)
1420 cqr->status = DASD_CQR_ERROR; 1420 cqr->status = DASD_CQR_ERROR;
1421 return -EIO; 1421 return -EIO;
1422 } 1422 }
1423 cqr->startclk = get_clock(); 1423 cqr->startclk = get_tod_clock();
1424 cqr->starttime = jiffies; 1424 cqr->starttime = jiffies;
1425 cqr->retries--; 1425 cqr->retries--;
1426 if (!test_bit(DASD_CQR_VERIFY_PATH, &cqr->flags)) { 1426 if (!test_bit(DASD_CQR_VERIFY_PATH, &cqr->flags)) {
@@ -1623,7 +1623,7 @@ void dasd_int_handler(struct ccw_device *cdev, unsigned long intparm,
1623 return; 1623 return;
1624 } 1624 }
1625 1625
1626 now = get_clock(); 1626 now = get_tod_clock();
1627 cqr = (struct dasd_ccw_req *) intparm; 1627 cqr = (struct dasd_ccw_req *) intparm;
1628 /* check for conditions that should be handled immediately */ 1628 /* check for conditions that should be handled immediately */
1629 if (!cqr || 1629 if (!cqr ||
@@ -1963,7 +1963,7 @@ int dasd_flush_device_queue(struct dasd_device *device)
1963 } 1963 }
1964 break; 1964 break;
1965 case DASD_CQR_QUEUED: 1965 case DASD_CQR_QUEUED:
1966 cqr->stopclk = get_clock(); 1966 cqr->stopclk = get_tod_clock();
1967 cqr->status = DASD_CQR_CLEARED; 1967 cqr->status = DASD_CQR_CLEARED;
1968 break; 1968 break;
1969 default: /* no need to modify the others */ 1969 default: /* no need to modify the others */
@@ -2210,7 +2210,7 @@ static int _dasd_sleep_on(struct dasd_ccw_req *maincqr, int interruptible)
2210 wait_event(generic_waitq, _wait_for_wakeup(cqr)); 2210 wait_event(generic_waitq, _wait_for_wakeup(cqr));
2211 } 2211 }
2212 2212
2213 maincqr->endclk = get_clock(); 2213 maincqr->endclk = get_tod_clock();
2214 if ((maincqr->status != DASD_CQR_DONE) && 2214 if ((maincqr->status != DASD_CQR_DONE) &&
2215 (maincqr->intrc != -ERESTARTSYS)) 2215 (maincqr->intrc != -ERESTARTSYS))
2216 dasd_log_sense(maincqr, &maincqr->irb); 2216 dasd_log_sense(maincqr, &maincqr->irb);
@@ -2340,7 +2340,7 @@ int dasd_cancel_req(struct dasd_ccw_req *cqr)
2340 "Cancelling request %p failed with rc=%d\n", 2340 "Cancelling request %p failed with rc=%d\n",
2341 cqr, rc); 2341 cqr, rc);
2342 } else { 2342 } else {
2343 cqr->stopclk = get_clock(); 2343 cqr->stopclk = get_tod_clock();
2344 } 2344 }
2345 break; 2345 break;
2346 default: /* already finished or clear pending - do nothing */ 2346 default: /* already finished or clear pending - do nothing */
@@ -2568,7 +2568,7 @@ restart:
2568 } 2568 }
2569 2569
2570 /* Rechain finished requests to final queue */ 2570 /* Rechain finished requests to final queue */
2571 cqr->endclk = get_clock(); 2571 cqr->endclk = get_tod_clock();
2572 list_move_tail(&cqr->blocklist, final_queue); 2572 list_move_tail(&cqr->blocklist, final_queue);
2573 } 2573 }
2574} 2574}
@@ -2711,7 +2711,7 @@ restart_cb:
2711 } 2711 }
2712 /* call the callback function */ 2712 /* call the callback function */
2713 spin_lock_irq(&block->request_queue_lock); 2713 spin_lock_irq(&block->request_queue_lock);
2714 cqr->endclk = get_clock(); 2714 cqr->endclk = get_tod_clock();
2715 list_del_init(&cqr->blocklist); 2715 list_del_init(&cqr->blocklist);
2716 __dasd_cleanup_cqr(cqr); 2716 __dasd_cleanup_cqr(cqr);
2717 spin_unlock_irq(&block->request_queue_lock); 2717 spin_unlock_irq(&block->request_queue_lock);
@@ -3504,7 +3504,7 @@ static struct dasd_ccw_req *dasd_generic_build_rdc(struct dasd_device *device,
3504 cqr->memdev = device; 3504 cqr->memdev = device;
3505 cqr->expires = 10*HZ; 3505 cqr->expires = 10*HZ;
3506 cqr->retries = 256; 3506 cqr->retries = 256;
3507 cqr->buildclk = get_clock(); 3507 cqr->buildclk = get_tod_clock();
3508 cqr->status = DASD_CQR_FILLED; 3508 cqr->status = DASD_CQR_FILLED;
3509 return cqr; 3509 return cqr;
3510} 3510}
diff --git a/drivers/s390/block/dasd_3990_erp.c b/drivers/s390/block/dasd_3990_erp.c
index f8212d54013a..d26134713682 100644
--- a/drivers/s390/block/dasd_3990_erp.c
+++ b/drivers/s390/block/dasd_3990_erp.c
@@ -229,7 +229,7 @@ dasd_3990_erp_DCTL(struct dasd_ccw_req * erp, char modifier)
229 dctl_cqr->expires = 5 * 60 * HZ; 229 dctl_cqr->expires = 5 * 60 * HZ;
230 dctl_cqr->retries = 2; 230 dctl_cqr->retries = 2;
231 231
232 dctl_cqr->buildclk = get_clock(); 232 dctl_cqr->buildclk = get_tod_clock();
233 233
234 dctl_cqr->status = DASD_CQR_FILLED; 234 dctl_cqr->status = DASD_CQR_FILLED;
235 235
@@ -1719,7 +1719,7 @@ dasd_3990_erp_action_1B_32(struct dasd_ccw_req * default_erp, char *sense)
1719 erp->magic = default_erp->magic; 1719 erp->magic = default_erp->magic;
1720 erp->expires = default_erp->expires; 1720 erp->expires = default_erp->expires;
1721 erp->retries = 256; 1721 erp->retries = 256;
1722 erp->buildclk = get_clock(); 1722 erp->buildclk = get_tod_clock();
1723 erp->status = DASD_CQR_FILLED; 1723 erp->status = DASD_CQR_FILLED;
1724 1724
1725 /* remove the default erp */ 1725 /* remove the default erp */
@@ -2322,7 +2322,7 @@ static struct dasd_ccw_req *dasd_3990_erp_add_erp(struct dasd_ccw_req *cqr)
2322 DBF_DEV_EVENT(DBF_ERR, device, "%s", 2322 DBF_DEV_EVENT(DBF_ERR, device, "%s",
2323 "Unable to allocate ERP request"); 2323 "Unable to allocate ERP request");
2324 cqr->status = DASD_CQR_FAILED; 2324 cqr->status = DASD_CQR_FAILED;
2325 cqr->stopclk = get_clock (); 2325 cqr->stopclk = get_tod_clock();
2326 } else { 2326 } else {
2327 DBF_DEV_EVENT(DBF_ERR, device, 2327 DBF_DEV_EVENT(DBF_ERR, device,
2328 "Unable to allocate ERP request " 2328 "Unable to allocate ERP request "
@@ -2364,7 +2364,7 @@ static struct dasd_ccw_req *dasd_3990_erp_add_erp(struct dasd_ccw_req *cqr)
2364 erp->magic = cqr->magic; 2364 erp->magic = cqr->magic;
2365 erp->expires = cqr->expires; 2365 erp->expires = cqr->expires;
2366 erp->retries = 256; 2366 erp->retries = 256;
2367 erp->buildclk = get_clock(); 2367 erp->buildclk = get_tod_clock();
2368 erp->status = DASD_CQR_FILLED; 2368 erp->status = DASD_CQR_FILLED;
2369 2369
2370 return erp; 2370 return erp;
diff --git a/drivers/s390/block/dasd_alias.c b/drivers/s390/block/dasd_alias.c
index 6b556995bb33..a2597e683e79 100644
--- a/drivers/s390/block/dasd_alias.c
+++ b/drivers/s390/block/dasd_alias.c
@@ -448,7 +448,7 @@ static int read_unit_address_configuration(struct dasd_device *device,
448 ccw->count = sizeof(*(lcu->uac)); 448 ccw->count = sizeof(*(lcu->uac));
449 ccw->cda = (__u32)(addr_t) lcu->uac; 449 ccw->cda = (__u32)(addr_t) lcu->uac;
450 450
451 cqr->buildclk = get_clock(); 451 cqr->buildclk = get_tod_clock();
452 cqr->status = DASD_CQR_FILLED; 452 cqr->status = DASD_CQR_FILLED;
453 453
454 /* need to unset flag here to detect race with summary unit check */ 454 /* need to unset flag here to detect race with summary unit check */
@@ -733,7 +733,7 @@ static int reset_summary_unit_check(struct alias_lcu *lcu,
733 cqr->memdev = device; 733 cqr->memdev = device;
734 cqr->block = NULL; 734 cqr->block = NULL;
735 cqr->expires = 5 * HZ; 735 cqr->expires = 5 * HZ;
736 cqr->buildclk = get_clock(); 736 cqr->buildclk = get_tod_clock();
737 cqr->status = DASD_CQR_FILLED; 737 cqr->status = DASD_CQR_FILLED;
738 738
739 rc = dasd_sleep_on_immediatly(cqr); 739 rc = dasd_sleep_on_immediatly(cqr);
diff --git a/drivers/s390/block/dasd_diag.c b/drivers/s390/block/dasd_diag.c
index 704488d0f819..cc0603358522 100644
--- a/drivers/s390/block/dasd_diag.c
+++ b/drivers/s390/block/dasd_diag.c
@@ -184,14 +184,14 @@ dasd_start_diag(struct dasd_ccw_req * cqr)
184 private->iob.bio_list = dreq->bio; 184 private->iob.bio_list = dreq->bio;
185 private->iob.flaga = DASD_DIAG_FLAGA_DEFAULT; 185 private->iob.flaga = DASD_DIAG_FLAGA_DEFAULT;
186 186
187 cqr->startclk = get_clock(); 187 cqr->startclk = get_tod_clock();
188 cqr->starttime = jiffies; 188 cqr->starttime = jiffies;
189 cqr->retries--; 189 cqr->retries--;
190 190
191 rc = dia250(&private->iob, RW_BIO); 191 rc = dia250(&private->iob, RW_BIO);
192 switch (rc) { 192 switch (rc) {
193 case 0: /* Synchronous I/O finished successfully */ 193 case 0: /* Synchronous I/O finished successfully */
194 cqr->stopclk = get_clock(); 194 cqr->stopclk = get_tod_clock();
195 cqr->status = DASD_CQR_SUCCESS; 195 cqr->status = DASD_CQR_SUCCESS;
196 /* Indicate to calling function that only a dasd_schedule_bh() 196 /* Indicate to calling function that only a dasd_schedule_bh()
197 and no timer is needed */ 197 and no timer is needed */
@@ -222,7 +222,7 @@ dasd_diag_term_IO(struct dasd_ccw_req * cqr)
222 mdsk_term_io(device); 222 mdsk_term_io(device);
223 mdsk_init_io(device, device->block->bp_block, 0, NULL); 223 mdsk_init_io(device, device->block->bp_block, 0, NULL);
224 cqr->status = DASD_CQR_CLEAR_PENDING; 224 cqr->status = DASD_CQR_CLEAR_PENDING;
225 cqr->stopclk = get_clock(); 225 cqr->stopclk = get_tod_clock();
226 dasd_schedule_device_bh(device); 226 dasd_schedule_device_bh(device);
227 return 0; 227 return 0;
228} 228}
@@ -276,7 +276,7 @@ static void dasd_ext_handler(struct ext_code ext_code,
276 return; 276 return;
277 } 277 }
278 278
279 cqr->stopclk = get_clock(); 279 cqr->stopclk = get_tod_clock();
280 280
281 expires = 0; 281 expires = 0;
282 if ((ext_code.subcode & 0xff) == 0) { 282 if ((ext_code.subcode & 0xff) == 0) {
@@ -556,7 +556,7 @@ static struct dasd_ccw_req *dasd_diag_build_cp(struct dasd_device *memdev,
556 } 556 }
557 } 557 }
558 cqr->retries = DIAG_MAX_RETRIES; 558 cqr->retries = DIAG_MAX_RETRIES;
559 cqr->buildclk = get_clock(); 559 cqr->buildclk = get_tod_clock();
560 if (blk_noretry_request(req) || 560 if (blk_noretry_request(req) ||
561 block->base->features & DASD_FEATURE_FAILFAST) 561 block->base->features & DASD_FEATURE_FAILFAST)
562 set_bit(DASD_CQR_FLAGS_FAILFAST, &cqr->flags); 562 set_bit(DASD_CQR_FLAGS_FAILFAST, &cqr->flags);
diff --git a/drivers/s390/block/dasd_eckd.c b/drivers/s390/block/dasd_eckd.c
index e37bc1620d14..33f26bfa62f2 100644
--- a/drivers/s390/block/dasd_eckd.c
+++ b/drivers/s390/block/dasd_eckd.c
@@ -862,7 +862,7 @@ static void dasd_eckd_fill_rcd_cqr(struct dasd_device *device,
862 cqr->expires = 10*HZ; 862 cqr->expires = 10*HZ;
863 cqr->lpm = lpm; 863 cqr->lpm = lpm;
864 cqr->retries = 256; 864 cqr->retries = 256;
865 cqr->buildclk = get_clock(); 865 cqr->buildclk = get_tod_clock();
866 cqr->status = DASD_CQR_FILLED; 866 cqr->status = DASD_CQR_FILLED;
867 set_bit(DASD_CQR_VERIFY_PATH, &cqr->flags); 867 set_bit(DASD_CQR_VERIFY_PATH, &cqr->flags);
868} 868}
@@ -1449,7 +1449,7 @@ static int dasd_eckd_read_features(struct dasd_device *device)
1449 ccw->count = sizeof(struct dasd_rssd_features); 1449 ccw->count = sizeof(struct dasd_rssd_features);
1450 ccw->cda = (__u32)(addr_t) features; 1450 ccw->cda = (__u32)(addr_t) features;
1451 1451
1452 cqr->buildclk = get_clock(); 1452 cqr->buildclk = get_tod_clock();
1453 cqr->status = DASD_CQR_FILLED; 1453 cqr->status = DASD_CQR_FILLED;
1454 rc = dasd_sleep_on(cqr); 1454 rc = dasd_sleep_on(cqr);
1455 if (rc == 0) { 1455 if (rc == 0) {
@@ -1501,7 +1501,7 @@ static struct dasd_ccw_req *dasd_eckd_build_psf_ssc(struct dasd_device *device,
1501 cqr->block = NULL; 1501 cqr->block = NULL;
1502 cqr->retries = 256; 1502 cqr->retries = 256;
1503 cqr->expires = 10*HZ; 1503 cqr->expires = 10*HZ;
1504 cqr->buildclk = get_clock(); 1504 cqr->buildclk = get_tod_clock();
1505 cqr->status = DASD_CQR_FILLED; 1505 cqr->status = DASD_CQR_FILLED;
1506 return cqr; 1506 return cqr;
1507} 1507}
@@ -1841,7 +1841,7 @@ dasd_eckd_analysis_ccw(struct dasd_device *device)
1841 cqr->startdev = device; 1841 cqr->startdev = device;
1842 cqr->memdev = device; 1842 cqr->memdev = device;
1843 cqr->retries = 255; 1843 cqr->retries = 255;
1844 cqr->buildclk = get_clock(); 1844 cqr->buildclk = get_tod_clock();
1845 cqr->status = DASD_CQR_FILLED; 1845 cqr->status = DASD_CQR_FILLED;
1846 return cqr; 1846 return cqr;
1847} 1847}
@@ -2241,7 +2241,7 @@ dasd_eckd_format_device(struct dasd_device * device,
2241 fcp->startdev = device; 2241 fcp->startdev = device;
2242 fcp->memdev = device; 2242 fcp->memdev = device;
2243 fcp->retries = 256; 2243 fcp->retries = 256;
2244 fcp->buildclk = get_clock(); 2244 fcp->buildclk = get_tod_clock();
2245 fcp->status = DASD_CQR_FILLED; 2245 fcp->status = DASD_CQR_FILLED;
2246 return fcp; 2246 return fcp;
2247} 2247}
@@ -2530,7 +2530,7 @@ static struct dasd_ccw_req *dasd_eckd_build_cp_cmd_single(
2530 cqr->expires = startdev->default_expires * HZ; /* default 5 minutes */ 2530 cqr->expires = startdev->default_expires * HZ; /* default 5 minutes */
2531 cqr->lpm = startdev->path_data.ppm; 2531 cqr->lpm = startdev->path_data.ppm;
2532 cqr->retries = 256; 2532 cqr->retries = 256;
2533 cqr->buildclk = get_clock(); 2533 cqr->buildclk = get_tod_clock();
2534 cqr->status = DASD_CQR_FILLED; 2534 cqr->status = DASD_CQR_FILLED;
2535 return cqr; 2535 return cqr;
2536} 2536}
@@ -2705,7 +2705,7 @@ static struct dasd_ccw_req *dasd_eckd_build_cp_cmd_track(
2705 cqr->expires = startdev->default_expires * HZ; /* default 5 minutes */ 2705 cqr->expires = startdev->default_expires * HZ; /* default 5 minutes */
2706 cqr->lpm = startdev->path_data.ppm; 2706 cqr->lpm = startdev->path_data.ppm;
2707 cqr->retries = 256; 2707 cqr->retries = 256;
2708 cqr->buildclk = get_clock(); 2708 cqr->buildclk = get_tod_clock();
2709 cqr->status = DASD_CQR_FILLED; 2709 cqr->status = DASD_CQR_FILLED;
2710 return cqr; 2710 return cqr;
2711} 2711}
@@ -2998,7 +2998,7 @@ static struct dasd_ccw_req *dasd_eckd_build_cp_tpm_track(
2998 cqr->expires = startdev->default_expires * HZ; /* default 5 minutes */ 2998 cqr->expires = startdev->default_expires * HZ; /* default 5 minutes */
2999 cqr->lpm = startdev->path_data.ppm; 2999 cqr->lpm = startdev->path_data.ppm;
3000 cqr->retries = 256; 3000 cqr->retries = 256;
3001 cqr->buildclk = get_clock(); 3001 cqr->buildclk = get_tod_clock();
3002 cqr->status = DASD_CQR_FILLED; 3002 cqr->status = DASD_CQR_FILLED;
3003 return cqr; 3003 return cqr;
3004out_error: 3004out_error:
@@ -3201,7 +3201,7 @@ static struct dasd_ccw_req *dasd_raw_build_cp(struct dasd_device *startdev,
3201 cqr->expires = startdev->default_expires * HZ; 3201 cqr->expires = startdev->default_expires * HZ;
3202 cqr->lpm = startdev->path_data.ppm; 3202 cqr->lpm = startdev->path_data.ppm;
3203 cqr->retries = 256; 3203 cqr->retries = 256;
3204 cqr->buildclk = get_clock(); 3204 cqr->buildclk = get_tod_clock();
3205 cqr->status = DASD_CQR_FILLED; 3205 cqr->status = DASD_CQR_FILLED;
3206 3206
3207 if (IS_ERR(cqr) && PTR_ERR(cqr) != -EAGAIN) 3207 if (IS_ERR(cqr) && PTR_ERR(cqr) != -EAGAIN)
@@ -3402,7 +3402,7 @@ dasd_eckd_release(struct dasd_device *device)
3402 set_bit(DASD_CQR_FLAGS_FAILFAST, &cqr->flags); 3402 set_bit(DASD_CQR_FLAGS_FAILFAST, &cqr->flags);
3403 cqr->retries = 2; /* set retry counter to enable basic ERP */ 3403 cqr->retries = 2; /* set retry counter to enable basic ERP */
3404 cqr->expires = 2 * HZ; 3404 cqr->expires = 2 * HZ;
3405 cqr->buildclk = get_clock(); 3405 cqr->buildclk = get_tod_clock();
3406 cqr->status = DASD_CQR_FILLED; 3406 cqr->status = DASD_CQR_FILLED;
3407 3407
3408 rc = dasd_sleep_on_immediatly(cqr); 3408 rc = dasd_sleep_on_immediatly(cqr);
@@ -3457,7 +3457,7 @@ dasd_eckd_reserve(struct dasd_device *device)
3457 set_bit(DASD_CQR_FLAGS_FAILFAST, &cqr->flags); 3457 set_bit(DASD_CQR_FLAGS_FAILFAST, &cqr->flags);
3458 cqr->retries = 2; /* set retry counter to enable basic ERP */ 3458 cqr->retries = 2; /* set retry counter to enable basic ERP */
3459 cqr->expires = 2 * HZ; 3459 cqr->expires = 2 * HZ;
3460 cqr->buildclk = get_clock(); 3460 cqr->buildclk = get_tod_clock();
3461 cqr->status = DASD_CQR_FILLED; 3461 cqr->status = DASD_CQR_FILLED;
3462 3462
3463 rc = dasd_sleep_on_immediatly(cqr); 3463 rc = dasd_sleep_on_immediatly(cqr);
@@ -3511,7 +3511,7 @@ dasd_eckd_steal_lock(struct dasd_device *device)
3511 set_bit(DASD_CQR_FLAGS_FAILFAST, &cqr->flags); 3511 set_bit(DASD_CQR_FLAGS_FAILFAST, &cqr->flags);
3512 cqr->retries = 2; /* set retry counter to enable basic ERP */ 3512 cqr->retries = 2; /* set retry counter to enable basic ERP */
3513 cqr->expires = 2 * HZ; 3513 cqr->expires = 2 * HZ;
3514 cqr->buildclk = get_clock(); 3514 cqr->buildclk = get_tod_clock();
3515 cqr->status = DASD_CQR_FILLED; 3515 cqr->status = DASD_CQR_FILLED;
3516 3516
3517 rc = dasd_sleep_on_immediatly(cqr); 3517 rc = dasd_sleep_on_immediatly(cqr);
@@ -3572,7 +3572,7 @@ static int dasd_eckd_snid(struct dasd_device *device,
3572 set_bit(DASD_CQR_ALLOW_SLOCK, &cqr->flags); 3572 set_bit(DASD_CQR_ALLOW_SLOCK, &cqr->flags);
3573 cqr->retries = 5; 3573 cqr->retries = 5;
3574 cqr->expires = 10 * HZ; 3574 cqr->expires = 10 * HZ;
3575 cqr->buildclk = get_clock(); 3575 cqr->buildclk = get_tod_clock();
3576 cqr->status = DASD_CQR_FILLED; 3576 cqr->status = DASD_CQR_FILLED;
3577 cqr->lpm = usrparm.path_mask; 3577 cqr->lpm = usrparm.path_mask;
3578 3578
@@ -3642,7 +3642,7 @@ dasd_eckd_performance(struct dasd_device *device, void __user *argp)
3642 ccw->count = sizeof(struct dasd_rssd_perf_stats_t); 3642 ccw->count = sizeof(struct dasd_rssd_perf_stats_t);
3643 ccw->cda = (__u32)(addr_t) stats; 3643 ccw->cda = (__u32)(addr_t) stats;
3644 3644
3645 cqr->buildclk = get_clock(); 3645 cqr->buildclk = get_tod_clock();
3646 cqr->status = DASD_CQR_FILLED; 3646 cqr->status = DASD_CQR_FILLED;
3647 rc = dasd_sleep_on(cqr); 3647 rc = dasd_sleep_on(cqr);
3648 if (rc == 0) { 3648 if (rc == 0) {
@@ -3768,7 +3768,7 @@ static int dasd_symm_io(struct dasd_device *device, void __user *argp)
3768 cqr->memdev = device; 3768 cqr->memdev = device;
3769 cqr->retries = 3; 3769 cqr->retries = 3;
3770 cqr->expires = 10 * HZ; 3770 cqr->expires = 10 * HZ;
3771 cqr->buildclk = get_clock(); 3771 cqr->buildclk = get_tod_clock();
3772 cqr->status = DASD_CQR_FILLED; 3772 cqr->status = DASD_CQR_FILLED;
3773 3773
3774 /* Build the ccws */ 3774 /* Build the ccws */
diff --git a/drivers/s390/block/dasd_eer.c b/drivers/s390/block/dasd_eer.c
index ff901b5509c1..21ef63cf0960 100644
--- a/drivers/s390/block/dasd_eer.c
+++ b/drivers/s390/block/dasd_eer.c
@@ -481,7 +481,7 @@ int dasd_eer_enable(struct dasd_device *device)
481 ccw->flags = 0; 481 ccw->flags = 0;
482 ccw->cda = (__u32)(addr_t) cqr->data; 482 ccw->cda = (__u32)(addr_t) cqr->data;
483 483
484 cqr->buildclk = get_clock(); 484 cqr->buildclk = get_tod_clock();
485 cqr->status = DASD_CQR_FILLED; 485 cqr->status = DASD_CQR_FILLED;
486 cqr->callback = dasd_eer_snss_cb; 486 cqr->callback = dasd_eer_snss_cb;
487 487
diff --git a/drivers/s390/block/dasd_erp.c b/drivers/s390/block/dasd_erp.c
index d01ef82f8757..3250cb471f78 100644
--- a/drivers/s390/block/dasd_erp.c
+++ b/drivers/s390/block/dasd_erp.c
@@ -102,7 +102,7 @@ dasd_default_erp_action(struct dasd_ccw_req *cqr)
102 pr_err("%s: default ERP has run out of retries and failed\n", 102 pr_err("%s: default ERP has run out of retries and failed\n",
103 dev_name(&device->cdev->dev)); 103 dev_name(&device->cdev->dev));
104 cqr->status = DASD_CQR_FAILED; 104 cqr->status = DASD_CQR_FAILED;
105 cqr->stopclk = get_clock(); 105 cqr->stopclk = get_tod_clock();
106 } 106 }
107 return cqr; 107 return cqr;
108} /* end dasd_default_erp_action */ 108} /* end dasd_default_erp_action */
@@ -146,7 +146,7 @@ struct dasd_ccw_req *dasd_default_erp_postaction(struct dasd_ccw_req *cqr)
146 cqr->status = DASD_CQR_DONE; 146 cqr->status = DASD_CQR_DONE;
147 else { 147 else {
148 cqr->status = DASD_CQR_FAILED; 148 cqr->status = DASD_CQR_FAILED;
149 cqr->stopclk = get_clock(); 149 cqr->stopclk = get_tod_clock();
150 } 150 }
151 151
152 return cqr; 152 return cqr;
diff --git a/drivers/s390/block/dasd_fba.c b/drivers/s390/block/dasd_fba.c
index 414698584344..4dd0e2f6047e 100644
--- a/drivers/s390/block/dasd_fba.c
+++ b/drivers/s390/block/dasd_fba.c
@@ -370,7 +370,7 @@ static struct dasd_ccw_req *dasd_fba_build_cp(struct dasd_device * memdev,
370 cqr->block = block; 370 cqr->block = block;
371 cqr->expires = memdev->default_expires * HZ; /* default 5 minutes */ 371 cqr->expires = memdev->default_expires * HZ; /* default 5 minutes */
372 cqr->retries = 32; 372 cqr->retries = 32;
373 cqr->buildclk = get_clock(); 373 cqr->buildclk = get_tod_clock();
374 cqr->status = DASD_CQR_FILLED; 374 cqr->status = DASD_CQR_FILLED;
375 return cqr; 375 return cqr;
376} 376}
diff --git a/drivers/s390/char/sclp.c b/drivers/s390/char/sclp.c
index 12c16a65dd25..bd6871bf545a 100644
--- a/drivers/s390/char/sclp.c
+++ b/drivers/s390/char/sclp.c
@@ -450,7 +450,7 @@ sclp_sync_wait(void)
450 timeout = 0; 450 timeout = 0;
451 if (timer_pending(&sclp_request_timer)) { 451 if (timer_pending(&sclp_request_timer)) {
452 /* Get timeout TOD value */ 452 /* Get timeout TOD value */
453 timeout = get_clock() + 453 timeout = get_tod_clock() +
454 sclp_tod_from_jiffies(sclp_request_timer.expires - 454 sclp_tod_from_jiffies(sclp_request_timer.expires -
455 jiffies); 455 jiffies);
456 } 456 }
@@ -472,7 +472,7 @@ sclp_sync_wait(void)
472 while (sclp_running_state != sclp_running_state_idle) { 472 while (sclp_running_state != sclp_running_state_idle) {
473 /* Check for expired request timer */ 473 /* Check for expired request timer */
474 if (timer_pending(&sclp_request_timer) && 474 if (timer_pending(&sclp_request_timer) &&
475 get_clock() > timeout && 475 get_tod_clock() > timeout &&
476 del_timer(&sclp_request_timer)) 476 del_timer(&sclp_request_timer))
477 sclp_request_timer.function(sclp_request_timer.data); 477 sclp_request_timer.function(sclp_request_timer.data);
478 cpu_relax(); 478 cpu_relax();
diff --git a/drivers/s390/char/zcore.c b/drivers/s390/char/zcore.c
index 681749e7f6dd..1d61a01576d2 100644
--- a/drivers/s390/char/zcore.c
+++ b/drivers/s390/char/zcore.c
@@ -637,7 +637,7 @@ static int __init zcore_header_init(int arch, struct zcore_header *hdr)
637 hdr->rmem_size = memory; 637 hdr->rmem_size = memory;
638 hdr->mem_end = sys_info.mem_size; 638 hdr->mem_end = sys_info.mem_size;
639 hdr->num_pages = memory / PAGE_SIZE; 639 hdr->num_pages = memory / PAGE_SIZE;
640 hdr->tod = get_clock(); 640 hdr->tod = get_tod_clock();
641 get_cpu_id(&hdr->cpu_id); 641 get_cpu_id(&hdr->cpu_id);
642 for (i = 0; zfcpdump_save_areas[i]; i++) { 642 for (i = 0; zfcpdump_save_areas[i]; i++) {
643 prefix = zfcpdump_save_areas[i]->pref_reg; 643 prefix = zfcpdump_save_areas[i]->pref_reg;
diff --git a/drivers/s390/cio/cio.c b/drivers/s390/cio/cio.c
index c8faf6230b0f..986ef6a92a41 100644
--- a/drivers/s390/cio/cio.c
+++ b/drivers/s390/cio/cio.c
@@ -962,9 +962,9 @@ static void css_reset(void)
962 atomic_inc(&chpid_reset_count); 962 atomic_inc(&chpid_reset_count);
963 } 963 }
964 /* Wait for machine check for all channel paths. */ 964 /* Wait for machine check for all channel paths. */
965 timeout = get_clock() + (RCHP_TIMEOUT << 12); 965 timeout = get_tod_clock() + (RCHP_TIMEOUT << 12);
966 while (atomic_read(&chpid_reset_count) != 0) { 966 while (atomic_read(&chpid_reset_count) != 0) {
967 if (get_clock() > timeout) 967 if (get_tod_clock() > timeout)
968 break; 968 break;
969 cpu_relax(); 969 cpu_relax();
970 } 970 }
diff --git a/drivers/s390/cio/cmf.c b/drivers/s390/cio/cmf.c
index c9fc61c0a866..4495e0627a40 100644
--- a/drivers/s390/cio/cmf.c
+++ b/drivers/s390/cio/cmf.c
@@ -33,7 +33,7 @@
33#include <linux/module.h> 33#include <linux/module.h>
34#include <linux/moduleparam.h> 34#include <linux/moduleparam.h>
35#include <linux/slab.h> 35#include <linux/slab.h>
36#include <linux/timex.h> /* get_clock() */ 36#include <linux/timex.h> /* get_tod_clock() */
37 37
38#include <asm/ccwdev.h> 38#include <asm/ccwdev.h>
39#include <asm/cio.h> 39#include <asm/cio.h>
@@ -326,7 +326,7 @@ static int cmf_copy_block(struct ccw_device *cdev)
326 memcpy(cmb_data->last_block, hw_block, cmb_data->size); 326 memcpy(cmb_data->last_block, hw_block, cmb_data->size);
327 memcpy(reference_buf, hw_block, cmb_data->size); 327 memcpy(reference_buf, hw_block, cmb_data->size);
328 } while (memcmp(cmb_data->last_block, reference_buf, cmb_data->size)); 328 } while (memcmp(cmb_data->last_block, reference_buf, cmb_data->size));
329 cmb_data->last_update = get_clock(); 329 cmb_data->last_update = get_tod_clock();
330 kfree(reference_buf); 330 kfree(reference_buf);
331 return 0; 331 return 0;
332} 332}
@@ -428,7 +428,7 @@ static void cmf_generic_reset(struct ccw_device *cdev)
428 memset(cmbops->align(cmb_data->hw_block), 0, cmb_data->size); 428 memset(cmbops->align(cmb_data->hw_block), 0, cmb_data->size);
429 cmb_data->last_update = 0; 429 cmb_data->last_update = 0;
430 } 430 }
431 cdev->private->cmb_start_time = get_clock(); 431 cdev->private->cmb_start_time = get_tod_clock();
432 spin_unlock_irq(cdev->ccwlock); 432 spin_unlock_irq(cdev->ccwlock);
433} 433}
434 434
diff --git a/drivers/s390/cio/css.c b/drivers/s390/cio/css.c
index fd00afd8b850..a239237d43f3 100644
--- a/drivers/s390/cio/css.c
+++ b/drivers/s390/cio/css.c
@@ -780,7 +780,7 @@ static int __init setup_css(int nr)
780 css->cssid = nr; 780 css->cssid = nr;
781 dev_set_name(&css->device, "css%x", nr); 781 dev_set_name(&css->device, "css%x", nr);
782 css->device.release = channel_subsystem_release; 782 css->device.release = channel_subsystem_release;
783 tod_high = (u32) (get_clock() >> 32); 783 tod_high = (u32) (get_tod_clock() >> 32);
784 css_generate_pgid(css, tod_high); 784 css_generate_pgid(css, tod_high);
785 return 0; 785 return 0;
786} 786}
diff --git a/drivers/s390/cio/device_fsm.c b/drivers/s390/cio/device_fsm.c
index 1bb1d00095af..c7638c543250 100644
--- a/drivers/s390/cio/device_fsm.c
+++ b/drivers/s390/cio/device_fsm.c
@@ -47,7 +47,7 @@ static void ccw_timeout_log(struct ccw_device *cdev)
47 cc = stsch_err(sch->schid, &schib); 47 cc = stsch_err(sch->schid, &schib);
48 48
49 printk(KERN_WARNING "cio: ccw device timeout occurred at %llx, " 49 printk(KERN_WARNING "cio: ccw device timeout occurred at %llx, "
50 "device information:\n", get_clock()); 50 "device information:\n", get_tod_clock());
51 printk(KERN_WARNING "cio: orb:\n"); 51 printk(KERN_WARNING "cio: orb:\n");
52 print_hex_dump(KERN_WARNING, "cio: ", DUMP_PREFIX_NONE, 16, 1, 52 print_hex_dump(KERN_WARNING, "cio: ", DUMP_PREFIX_NONE, 16, 1,
53 orb, sizeof(*orb), 0); 53 orb, sizeof(*orb), 0);
diff --git a/drivers/s390/cio/qdio_main.c b/drivers/s390/cio/qdio_main.c
index 1671d3461f29..abc550e5dd35 100644
--- a/drivers/s390/cio/qdio_main.c
+++ b/drivers/s390/cio/qdio_main.c
@@ -338,10 +338,10 @@ again:
338 retries++; 338 retries++;
339 339
340 if (!start_time) { 340 if (!start_time) {
341 start_time = get_clock(); 341 start_time = get_tod_clock();
342 goto again; 342 goto again;
343 } 343 }
344 if ((get_clock() - start_time) < QDIO_BUSY_BIT_PATIENCE) 344 if ((get_tod_clock() - start_time) < QDIO_BUSY_BIT_PATIENCE)
345 goto again; 345 goto again;
346 } 346 }
347 if (retries) { 347 if (retries) {
@@ -504,7 +504,7 @@ static int get_inbound_buffer_frontier(struct qdio_q *q)
504 int count, stop; 504 int count, stop;
505 unsigned char state = 0; 505 unsigned char state = 0;
506 506
507 q->timestamp = get_clock(); 507 q->timestamp = get_tod_clock();
508 508
509 /* 509 /*
510 * Don't check 128 buffers, as otherwise qdio_inbound_q_moved 510 * Don't check 128 buffers, as otherwise qdio_inbound_q_moved
@@ -563,7 +563,7 @@ static int qdio_inbound_q_moved(struct qdio_q *q)
563 if (bufnr != q->last_move) { 563 if (bufnr != q->last_move) {
564 q->last_move = bufnr; 564 q->last_move = bufnr;
565 if (!is_thinint_irq(q->irq_ptr) && MACHINE_IS_LPAR) 565 if (!is_thinint_irq(q->irq_ptr) && MACHINE_IS_LPAR)
566 q->u.in.timestamp = get_clock(); 566 q->u.in.timestamp = get_tod_clock();
567 return 1; 567 return 1;
568 } else 568 } else
569 return 0; 569 return 0;
@@ -595,7 +595,7 @@ static inline int qdio_inbound_q_done(struct qdio_q *q)
595 * At this point we know, that inbound first_to_check 595 * At this point we know, that inbound first_to_check
596 * has (probably) not moved (see qdio_inbound_processing). 596 * has (probably) not moved (see qdio_inbound_processing).
597 */ 597 */
598 if (get_clock() > q->u.in.timestamp + QDIO_INPUT_THRESHOLD) { 598 if (get_tod_clock() > q->u.in.timestamp + QDIO_INPUT_THRESHOLD) {
599 DBF_DEV_EVENT(DBF_INFO, q->irq_ptr, "in done:%02x", 599 DBF_DEV_EVENT(DBF_INFO, q->irq_ptr, "in done:%02x",
600 q->first_to_check); 600 q->first_to_check);
601 return 1; 601 return 1;
@@ -772,7 +772,7 @@ static int get_outbound_buffer_frontier(struct qdio_q *q)
772 int count, stop; 772 int count, stop;
773 unsigned char state = 0; 773 unsigned char state = 0;
774 774
775 q->timestamp = get_clock(); 775 q->timestamp = get_tod_clock();
776 776
777 if (need_siga_sync(q)) 777 if (need_siga_sync(q))
778 if (((queue_type(q) != QDIO_IQDIO_QFMT) && 778 if (((queue_type(q) != QDIO_IQDIO_QFMT) &&
diff --git a/drivers/s390/net/qeth_core.h b/drivers/s390/net/qeth_core.h
index 480fbeab0256..b4796a40b002 100644
--- a/drivers/s390/net/qeth_core.h
+++ b/drivers/s390/net/qeth_core.h
@@ -816,7 +816,7 @@ static inline struct qeth_card *CARD_FROM_CDEV(struct ccw_device *cdev)
816 816
817static inline int qeth_get_micros(void) 817static inline int qeth_get_micros(void)
818{ 818{
819 return (int) (get_clock() >> 12); 819 return (int) (get_tod_clock() >> 12);
820} 820}
821 821
822static inline int qeth_get_ip_version(struct sk_buff *skb) 822static inline int qeth_get_ip_version(struct sk_buff *skb)
diff --git a/drivers/s390/scsi/zfcp_fsf.c b/drivers/s390/scsi/zfcp_fsf.c
index c96320d79fbc..c7e148f33b2a 100644
--- a/drivers/s390/scsi/zfcp_fsf.c
+++ b/drivers/s390/scsi/zfcp_fsf.c
@@ -727,7 +727,7 @@ static int zfcp_fsf_req_send(struct zfcp_fsf_req *req)
727 zfcp_reqlist_add(adapter->req_list, req); 727 zfcp_reqlist_add(adapter->req_list, req);
728 728
729 req->qdio_req.qdio_outb_usage = atomic_read(&qdio->req_q_free); 729 req->qdio_req.qdio_outb_usage = atomic_read(&qdio->req_q_free);
730 req->issued = get_clock(); 730 req->issued = get_tod_clock();
731 if (zfcp_qdio_send(qdio, &req->qdio_req)) { 731 if (zfcp_qdio_send(qdio, &req->qdio_req)) {
732 del_timer(&req->timer); 732 del_timer(&req->timer);
733 /* lookup request again, list might have changed */ 733 /* lookup request again, list might have changed */
diff --git a/drivers/s390/scsi/zfcp_qdio.c b/drivers/s390/scsi/zfcp_qdio.c
index 50b5615848f6..665e3cfaaf85 100644
--- a/drivers/s390/scsi/zfcp_qdio.c
+++ b/drivers/s390/scsi/zfcp_qdio.c
@@ -68,7 +68,7 @@ static inline void zfcp_qdio_account(struct zfcp_qdio *qdio)
68 unsigned long long now, span; 68 unsigned long long now, span;
69 int used; 69 int used;
70 70
71 now = get_clock_monotonic(); 71 now = get_tod_clock_monotonic();
72 span = (now - qdio->req_q_time) >> 12; 72 span = (now - qdio->req_q_time) >> 12;
73 used = QDIO_MAX_BUFFERS_PER_Q - atomic_read(&qdio->req_q_free); 73 used = QDIO_MAX_BUFFERS_PER_Q - atomic_read(&qdio->req_q_free);
74 qdio->req_q_util += used * span; 74 qdio->req_q_util += used * span;