mirror of https://github.com/xqemu/xqemu.git
migration: remove unnecessary variables len in QIOChannelRDMA
Because qio_channel_rdma_writev and qio_channel_rdma_readv maybe invoked by different threads concurrently, this patch removes unnecessary variables len in QIOChannelRDMA and use local variable instead. Signed-off-by: Lidong Chen <lidongchen@tencent.com> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Lidong Chen <jemmy858585@gmail.com>
This commit is contained in:
parent
0f073f44df
commit
f38f6d4155
|
@ -400,7 +400,6 @@ struct QIOChannelRDMA {
|
||||||
QIOChannel parent;
|
QIOChannel parent;
|
||||||
RDMAContext *rdma;
|
RDMAContext *rdma;
|
||||||
QEMUFile *file;
|
QEMUFile *file;
|
||||||
size_t len;
|
|
||||||
bool blocking; /* XXX we don't actually honour this yet */
|
bool blocking; /* XXX we don't actually honour this yet */
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -2608,6 +2607,7 @@ static ssize_t qio_channel_rdma_writev(QIOChannel *ioc,
|
||||||
int ret;
|
int ret;
|
||||||
ssize_t done = 0;
|
ssize_t done = 0;
|
||||||
size_t i;
|
size_t i;
|
||||||
|
size_t len = 0;
|
||||||
|
|
||||||
CHECK_ERROR_STATE();
|
CHECK_ERROR_STATE();
|
||||||
|
|
||||||
|
@ -2627,10 +2627,10 @@ static ssize_t qio_channel_rdma_writev(QIOChannel *ioc,
|
||||||
while (remaining) {
|
while (remaining) {
|
||||||
RDMAControlHeader head;
|
RDMAControlHeader head;
|
||||||
|
|
||||||
rioc->len = MIN(remaining, RDMA_SEND_INCREMENT);
|
len = MIN(remaining, RDMA_SEND_INCREMENT);
|
||||||
remaining -= rioc->len;
|
remaining -= len;
|
||||||
|
|
||||||
head.len = rioc->len;
|
head.len = len;
|
||||||
head.type = RDMA_CONTROL_QEMU_FILE;
|
head.type = RDMA_CONTROL_QEMU_FILE;
|
||||||
|
|
||||||
ret = qemu_rdma_exchange_send(rdma, &head, data, NULL, NULL, NULL);
|
ret = qemu_rdma_exchange_send(rdma, &head, data, NULL, NULL, NULL);
|
||||||
|
@ -2640,8 +2640,8 @@ static ssize_t qio_channel_rdma_writev(QIOChannel *ioc,
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
data += rioc->len;
|
data += len;
|
||||||
done += rioc->len;
|
done += len;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2736,8 +2736,7 @@ static ssize_t qio_channel_rdma_readv(QIOChannel *ioc,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
rioc->len = done;
|
return done;
|
||||||
return rioc->len;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
Loading…
Reference in New Issue