projects
/
fio.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add exit_on_io_done option to the CPU IO engine
[fio.git]
/
engines
/
rdma.c
diff --git
a/engines/rdma.c
b/engines/rdma.c
index ea1af2ba5dffdd7ae62df40341fe597b0fccfe94..af50187a62bf5f2607cffe25eeb456b12987598c 100644
(file)
--- a/
engines/rdma.c
+++ b/
engines/rdma.c
@@
-528,10
+528,10
@@
static int fio_rdmaio_getevents(struct thread_data *td, unsigned int min,
{
struct rdmaio_data *rd = td->io_ops->data;
enum ibv_wc_opcode comp_opcode;
{
struct rdmaio_data *rd = td->io_ops->data;
enum ibv_wc_opcode comp_opcode;
- comp_opcode = IBV_WC_RDMA_WRITE;
struct ibv_cq *ev_cq;
void *ev_ctx;
int ret, r = 0;
struct ibv_cq *ev_cq;
void *ev_ctx;
int ret, r = 0;
+ comp_opcode = IBV_WC_RDMA_WRITE;
switch (rd->rdma_protocol) {
case FIO_RDMA_MEM_WRITE:
switch (rd->rdma_protocol) {
case FIO_RDMA_MEM_WRITE:
@@
-869,7
+869,7
@@
static int fio_rdmaio_close_file(struct thread_data *td, struct fio_file *f)
return 1;
}
return 1;
}
- dprint(FD_IO, "fio: close infomation sent success\n");
+ dprint(FD_IO, "fio: close info
r
mation sent success\n");
rdma_poll_wait(td, IBV_WC_SEND);
}
rdma_poll_wait(td, IBV_WC_SEND);
}
@@
-1049,12
+1049,11
@@
static int check_set_rlimits(struct thread_data *td)
static int fio_rdmaio_init(struct thread_data *td)
{
struct rdmaio_data *rd = td->io_ops->data;
static int fio_rdmaio_init(struct thread_data *td)
{
struct rdmaio_data *rd = td->io_ops->data;
- struct flist_head *entry;
unsigned int max_bs;
unsigned int port;
char host[64], buf[128];
char *sep, *portp, *modep;
unsigned int max_bs;
unsigned int port;
char host[64], buf[128];
char *sep, *portp, *modep;
- int ret, i
= 0
;
+ int ret, i;
if (td_rw(td)) {
log_err("fio: rdma connections must be read OR write\n");
if (td_rw(td)) {
log_err("fio: rdma connections must be read OR write\n");
@@
-1153,8
+1152,8
@@
static int fio_rdmaio_init(struct thread_data *td)
max_bs = max(td->o.max_bs[DDIR_READ], td->o.max_bs[DDIR_WRITE]);
/* register each io_u in the free list */
max_bs = max(td->o.max_bs[DDIR_READ], td->o.max_bs[DDIR_WRITE]);
/* register each io_u in the free list */
- f
list_for_each(entry, &td->io_u_freelist
) {
- struct io_u *io_u =
flist_entry(entry, struct io_u, list)
;
+ f
or (i = 0; i < td->io_u_freelist.nr; i++
) {
+ struct io_u *io_u =
td->io_u_freelist.io_us[i]
;
io_u->engine_data = malloc(sizeof(struct rdma_io_u_data));
memset(io_u->engine_data, 0, sizeof(struct rdma_io_u_data));
io_u->engine_data = malloc(sizeof(struct rdma_io_u_data));
memset(io_u->engine_data, 0, sizeof(struct rdma_io_u_data));
@@
-1177,7
+1176,6
@@
static int fio_rdmaio_init(struct thread_data *td)
#if 0
log_info("fio: Send rkey %x addr %" PRIx64 " len %d to client\n", io_u->mr->rkey, io_u->buf, max_bs); */
#endif
#if 0
log_info("fio: Send rkey %x addr %" PRIx64 " len %d to client\n", io_u->mr->rkey, io_u->buf, max_bs); */
#endif
- i++;
}
rd->send_buf.nr = htonl(i);
}
rd->send_buf.nr = htonl(i);