On 18/09/2023 22:41, Markus Armbruster wrote: > Signed-off-by: Markus Armbruster <arm...@redhat.com>
Reviewed-by: Li Zhijian <lizhij...@fujitsu.com> > --- > migration/rdma.c | 35 ++++++++++------------------------- > 1 file changed, 10 insertions(+), 25 deletions(-) > > diff --git a/migration/rdma.c b/migration/rdma.c > index 85f6b274bf..62d95b7d2c 100644 > --- a/migration/rdma.c > +++ b/migration/rdma.c > @@ -1514,7 +1514,7 @@ static int qemu_rdma_wait_comp_channel(RDMAContext > *rdma, > struct ibv_comp_channel > *comp_channel) > { > struct rdma_cm_event *cm_event; > - int ret = -1; > + int ret; > > /* > * Coroutine doesn't start until migration_fd_process_incoming() > @@ -1619,7 +1619,7 @@ static int qemu_rdma_block_for_wrid(RDMAContext *rdma, > uint64_t wrid_requested, > uint32_t *byte_len) > { > - int num_cq_events = 0, ret = 0; > + int num_cq_events = 0, ret; > struct ibv_cq *cq; > void *cq_ctx; > uint64_t wr_id = RDMA_WRID_NONE, wr_id_in; > @@ -1664,8 +1664,7 @@ static int qemu_rdma_block_for_wrid(RDMAContext *rdma, > > num_cq_events++; > > - ret = -ibv_req_notify_cq(cq, 0); > - if (ret) { > + if (ibv_req_notify_cq(cq, 0)) { > goto err_block_for_wrid; > } > > @@ -1712,7 +1711,7 @@ err_block_for_wrid: > static int qemu_rdma_post_send_control(RDMAContext *rdma, uint8_t *buf, > RDMAControlHeader *head) > { > - int ret = 0; > + int ret; > RDMAWorkRequestData *wr = &rdma->wr_data[RDMA_WRID_CONTROL]; > struct ibv_send_wr *bad_wr; > struct ibv_sge sge = { > @@ -1869,7 +1868,7 @@ static int qemu_rdma_exchange_send(RDMAContext *rdma, > RDMAControlHeader *head, > int *resp_idx, > int (*callback)(RDMAContext *rdma)) > { > - int ret = 0; > + int ret; > > /* > * Wait until the dest is ready before attempting to deliver the message > @@ -2841,7 +2840,7 @@ static ssize_t qio_channel_rdma_readv(QIOChannel *ioc, > QIOChannelRDMA *rioc = QIO_CHANNEL_RDMA(ioc); > RDMAContext *rdma; > RDMAControlHeader head; > - int ret = 0; > + int ret; > size_t i; > size_t done = 0; > > @@ -3340,7 +3339,7 @@ static int qemu_rdma_accept(RDMAContext *rdma) > RDMAContext *rdma_return_path = NULL; > struct rdma_cm_event *cm_event; > struct ibv_context *verbs; > - int ret = -EINVAL; > + int ret; > int idx; > > ret = rdma_get_cm_event(rdma->channel, &cm_event); > @@ -3350,7 +3349,6 @@ static int qemu_rdma_accept(RDMAContext *rdma) > > if (cm_event->event != RDMA_CM_EVENT_CONNECT_REQUEST) { > rdma_ack_cm_event(cm_event); > - ret = -1; > goto err_rdma_dest_wait; > } > > @@ -3363,7 +3361,6 @@ static int qemu_rdma_accept(RDMAContext *rdma) > rdma_return_path = qemu_rdma_data_init(rdma->host_port, NULL); > if (rdma_return_path == NULL) { > rdma_ack_cm_event(cm_event); > - ret = -1; > goto err_rdma_dest_wait; > } > > @@ -3378,7 +3375,6 @@ static int qemu_rdma_accept(RDMAContext *rdma) > error_report("Unknown source RDMA version: %d, bailing...", > cap.version); > rdma_ack_cm_event(cm_event); > - ret = -1; > goto err_rdma_dest_wait; > } > > @@ -3411,7 +3407,6 @@ static int qemu_rdma_accept(RDMAContext *rdma) > } else if (rdma->verbs != verbs) { > error_report("ibv context not matching %p, %p!", rdma->verbs, > verbs); > - ret = -1; > goto err_rdma_dest_wait; > } > > @@ -3465,7 +3460,6 @@ static int qemu_rdma_accept(RDMAContext *rdma) > if (cm_event->event != RDMA_CM_EVENT_ESTABLISHED) { > error_report("rdma_accept not event established"); > rdma_ack_cm_event(cm_event); > - ret = -1; > goto err_rdma_dest_wait; > } > > @@ -3528,7 +3522,7 @@ static int qemu_rdma_registration_handle(QEMUFile *f) > static RDMARegisterResult > results[RDMA_CONTROL_MAX_COMMANDS_PER_MESSAGE]; > RDMALocalBlock *block; > void *host_addr; > - int ret = 0; > + int ret; > int idx = 0; > int count = 0; > int i = 0; > @@ -3557,7 +3551,6 @@ static int qemu_rdma_registration_handle(QEMUFile *f) > if (head.repeat > RDMA_CONTROL_MAX_COMMANDS_PER_MESSAGE) { > error_report("rdma: Too many requests in this message (%d)." > "Bailing.", head.repeat); > - ret = -EIO; > break; > } > > @@ -3573,7 +3566,6 @@ static int qemu_rdma_registration_handle(QEMUFile *f) > error_report("rdma: 'compress' bad block index %u (vs %d)", > (unsigned int)comp->block_idx, > rdma->local_ram_blocks.nb_blocks); > - ret = -EIO; > goto err; > } > block = &(rdma->local_ram_blocks.block[comp->block_idx]); > @@ -3672,7 +3664,6 @@ static int qemu_rdma_registration_handle(QEMUFile *f) > error_report("rdma: 'register' bad block index %u (vs > %d)", > (unsigned int)reg->current_index, > rdma->local_ram_blocks.nb_blocks); > - ret = -ENOENT; > goto err; > } > block = &(rdma->local_ram_blocks.block[reg->current_index]); > @@ -3682,7 +3673,6 @@ static int qemu_rdma_registration_handle(QEMUFile *f) > " offset: %" PRIx64 " current_addr: %" PRIx64, > block->block_name, block->offset, > reg->key.current_addr); > - ret = -ERANGE; > goto err; > } > host_addr = (block->local_host_addr + > @@ -3698,7 +3688,6 @@ static int qemu_rdma_registration_handle(QEMUFile *f) > error_report("rdma: bad chunk for block %s" > " chunk: %" PRIx64, > block->block_name, reg->key.chunk); > - ret = -ERANGE; > goto err; > } > } > @@ -3710,7 +3699,6 @@ static int qemu_rdma_registration_handle(QEMUFile *f) > (uintptr_t)host_addr, NULL, &tmp_rkey, > chunk, chunk_start, chunk_end)) { > error_report("cannot get rkey"); > - ret = -EINVAL; > goto err; > } > reg_result->rkey = tmp_rkey; > @@ -3750,7 +3738,6 @@ static int qemu_rdma_registration_handle(QEMUFile *f) > > if (ret != 0) { > perror("rdma unregistration chunk failed"); > - ret = -ret; > goto err; > } > > @@ -3769,11 +3756,9 @@ static int qemu_rdma_registration_handle(QEMUFile *f) > break; > case RDMA_CONTROL_REGISTER_RESULT: > error_report("Invalid RESULT message at dest."); > - ret = -EIO; > goto err; > default: > error_report("Unknown control message %s", > control_desc(head.type)); > - ret = -EIO; > goto err; > } > } while (1); > @@ -3877,7 +3862,7 @@ static int qemu_rdma_registration_stop(QEMUFile *f, > QIOChannelRDMA *rioc = QIO_CHANNEL_RDMA(qemu_file_get_ioc(f)); > RDMAContext *rdma; > RDMAControlHeader head = { .len = 0, .repeat = 1 }; > - int ret = 0; > + int ret; > > if (migration_in_postcopy()) { > return 0; > @@ -4151,7 +4136,7 @@ void rdma_start_outgoing_migration(void *opaque, > MigrationState *s = opaque; > RDMAContext *rdma_return_path = NULL; > RDMAContext *rdma; > - int ret = 0; > + int ret; > > /* Avoid ram_block_discard_disable(), cannot change during migration. */ > if (ram_block_discard_is_required()) {