void __serverd_perf_end_request(header_t *req_header) { double now = os_gettimeofday_msec(); int rw = -1; EXA_ASSERT(NBD_REQ_TYPE_IS_VALID(req_header->request_type)); switch (req_header->request_type) { case NBD_REQ_TYPE_READ: rw = __READ; break; case NBD_REQ_TYPE_WRITE: rw = __WRITE; break; case NBD_REQ_TYPE_LOCK: case NBD_REQ_TYPE_UNLOCK: EXA_ASSERT(false); /* FIXME: formerly this case was not handled */ } exaperf_duration_record(header_dur[rw], (double)now - req_header->header_submit_date); if (rw == __WRITE) exaperf_duration_record(data_dur, (double)now - req_header->data_submit_date); }
void __serverd_perf_end_request(const serv_perf_t *serv_perf) { double now = os_gettimeofday_msec(); int rw = serv_perf->read ? __READ : __WRITE; exaperf_duration_record(header_dur[rw], (double)now - serv_perf->header_submit_date); if (rw == __WRITE) exaperf_duration_record(data_dur, (double)now - serv_perf->data_submit_date); }
void __rdev_perf_end_request(rdev_perfs_t *rdev_perfs, const rdev_req_perf_t *req_perfs) { double duration = (double)os_gettimeofday_msec() - req_perfs->rdev_submit_date; int rw = req_perfs->read ? __READ : __WRITE; exaperf_duration_record(rdev_perfs->rdev_dur[rw], duration); }
void iscsi_target_perf_end_request(int rw, TARGET_CMD_T *cmd) { exaperf_duration_record(target_req_time[rw], (double)(os_gettimeofday_msec() - cmd->submit_date)); os_thread_mutex_lock(&iodepth_mutex); iodepth--; os_thread_mutex_unlock(&iodepth_mutex); }
void __rdev_perf_end_request(device_t *disk_device, header_t *req_header) { double duration; int rw = -1; EXA_ASSERT(NBD_REQ_TYPE_IS_VALID(req_header->request_type)); switch (req_header->request_type) { case NBD_REQ_TYPE_READ: rw = __READ; break; case NBD_REQ_TYPE_WRITE: rw = __WRITE; break; case NBD_REQ_TYPE_LOCK: case NBD_REQ_TYPE_UNLOCK: EXA_ASSERT(false); /* FIXME: formerly this case was not handled */ } duration = (double)os_gettimeofday_msec() - req_header->rdev_submit_date; exaperf_duration_record(disk_device->rdev_dur[rw], duration); }