aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/s390/net/ctcm_fsms.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/s390/net/ctcm_fsms.c')
-rw-r--r--drivers/s390/net/ctcm_fsms.c18
1 files changed, 7 insertions, 11 deletions
diff --git a/drivers/s390/net/ctcm_fsms.c b/drivers/s390/net/ctcm_fsms.c
index fb92524d24ef..fd5944bbe224 100644
--- a/drivers/s390/net/ctcm_fsms.c
+++ b/drivers/s390/net/ctcm_fsms.c
@@ -251,13 +251,11 @@ static void chx_txdone(fsm_instance *fi, int event, void *arg)
251 int first = 1; 251 int first = 1;
252 int i; 252 int i;
253 unsigned long duration; 253 unsigned long duration;
254 struct timespec done_stamp = current_kernel_time(); /* xtime */ 254 unsigned long done_stamp = jiffies;
255 255
256 CTCM_PR_DEBUG("%s(%s): %s\n", __func__, ch->id, dev->name); 256 CTCM_PR_DEBUG("%s(%s): %s\n", __func__, ch->id, dev->name);
257 257
258 duration = 258 duration = done_stamp - ch->prof.send_stamp;
259 (done_stamp.tv_sec - ch->prof.send_stamp.tv_sec) * 1000000 +
260 (done_stamp.tv_nsec - ch->prof.send_stamp.tv_nsec) / 1000;
261 if (duration > ch->prof.tx_time) 259 if (duration > ch->prof.tx_time)
262 ch->prof.tx_time = duration; 260 ch->prof.tx_time = duration;
263 261
@@ -307,7 +305,7 @@ static void chx_txdone(fsm_instance *fi, int event, void *arg)
307 spin_unlock(&ch->collect_lock); 305 spin_unlock(&ch->collect_lock);
308 ch->ccw[1].count = ch->trans_skb->len; 306 ch->ccw[1].count = ch->trans_skb->len;
309 fsm_addtimer(&ch->timer, CTCM_TIME_5_SEC, CTC_EVENT_TIMER, ch); 307 fsm_addtimer(&ch->timer, CTCM_TIME_5_SEC, CTC_EVENT_TIMER, ch);
310 ch->prof.send_stamp = current_kernel_time(); /* xtime */ 308 ch->prof.send_stamp = jiffies;
311 rc = ccw_device_start(ch->cdev, &ch->ccw[0], 309 rc = ccw_device_start(ch->cdev, &ch->ccw[0],
312 (unsigned long)ch, 0xff, 0); 310 (unsigned long)ch, 0xff, 0);
313 ch->prof.doios_multi++; 311 ch->prof.doios_multi++;
@@ -1229,14 +1227,12 @@ static void ctcmpc_chx_txdone(fsm_instance *fi, int event, void *arg)
1229 int rc; 1227 int rc;
1230 struct th_header *header; 1228 struct th_header *header;
1231 struct pdu *p_header; 1229 struct pdu *p_header;
1232 struct timespec done_stamp = current_kernel_time(); /* xtime */ 1230 unsigned long done_stamp = jiffies;
1233 1231
1234 CTCM_PR_DEBUG("Enter %s: %s cp:%i\n", 1232 CTCM_PR_DEBUG("Enter %s: %s cp:%i\n",
1235 __func__, dev->name, smp_processor_id()); 1233 __func__, dev->name, smp_processor_id());
1236 1234
1237 duration = 1235 duration = done_stamp - ch->prof.send_stamp;
1238 (done_stamp.tv_sec - ch->prof.send_stamp.tv_sec) * 1000000 +
1239 (done_stamp.tv_nsec - ch->prof.send_stamp.tv_nsec) / 1000;
1240 if (duration > ch->prof.tx_time) 1236 if (duration > ch->prof.tx_time)
1241 ch->prof.tx_time = duration; 1237 ch->prof.tx_time = duration;
1242 1238
@@ -1361,7 +1357,7 @@ static void ctcmpc_chx_txdone(fsm_instance *fi, int event, void *arg)
1361 1357
1362 ch->ccw[1].count = ch->trans_skb->len; 1358 ch->ccw[1].count = ch->trans_skb->len;
1363 fsm_addtimer(&ch->timer, CTCM_TIME_5_SEC, CTC_EVENT_TIMER, ch); 1359 fsm_addtimer(&ch->timer, CTCM_TIME_5_SEC, CTC_EVENT_TIMER, ch);
1364 ch->prof.send_stamp = current_kernel_time(); /* xtime */ 1360 ch->prof.send_stamp = jiffies;
1365 if (do_debug_ccw) 1361 if (do_debug_ccw)
1366 ctcmpc_dumpit((char *)&ch->ccw[0], sizeof(struct ccw1) * 3); 1362 ctcmpc_dumpit((char *)&ch->ccw[0], sizeof(struct ccw1) * 3);
1367 rc = ccw_device_start(ch->cdev, &ch->ccw[0], 1363 rc = ccw_device_start(ch->cdev, &ch->ccw[0],
@@ -1827,7 +1823,7 @@ static void ctcmpc_chx_send_sweep(fsm_instance *fsm, int event, void *arg)
1827 fsm_newstate(wch->fsm, CTC_STATE_TX); 1823 fsm_newstate(wch->fsm, CTC_STATE_TX);
1828 1824
1829 spin_lock_irqsave(get_ccwdev_lock(wch->cdev), saveflags); 1825 spin_lock_irqsave(get_ccwdev_lock(wch->cdev), saveflags);
1830 wch->prof.send_stamp = current_kernel_time(); /* xtime */ 1826 wch->prof.send_stamp = jiffies;
1831 rc = ccw_device_start(wch->cdev, &wch->ccw[3], 1827 rc = ccw_device_start(wch->cdev, &wch->ccw[3],
1832 (unsigned long) wch, 0xff, 0); 1828 (unsigned long) wch, 0xff, 0);
1833 spin_unlock_irqrestore(get_ccwdev_lock(wch->cdev), saveflags); 1829 spin_unlock_irqrestore(get_ccwdev_lock(wch->cdev), saveflags);