Lukas Straub <lukasstra...@web.de> wrote: > Signed-off-by: Lukas Straub <lukasstra...@web.de> > ---
Please, split the move the creation of the p->block and the rest of the patch. > diff --git a/migration/multifd.c b/migration/multifd.c > index fb5e8859de..fddbf86596 100644 > --- a/migration/multifd.c > +++ b/migration/multifd.c > @@ -284,7 +284,6 @@ static void multifd_send_fill_packet(MultiFDSendParams *p) > static int multifd_recv_unfill_packet(MultiFDRecvParams *p, Error **errp) > { > MultiFDPacket_t *packet = p->packet; > - RAMBlock *block; > int i; > > packet->magic = be32_to_cpu(packet->magic); > @@ -334,21 +333,21 @@ static int multifd_recv_unfill_packet(MultiFDRecvParams > *p, Error **errp) > > /* make sure that ramblock is 0 terminated */ > packet->ramblock[255] = 0; > - block = qemu_ram_block_by_name(packet->ramblock); > - if (!block) { > + p->block = qemu_ram_block_by_name(packet->ramblock); > + if (!p->block) { > error_setg(errp, "multifd: unknown ram block %s", > packet->ramblock); > return -1; > } > > - p->host = block->host; > + p->host = p->block->host; > for (i = 0; i < p->normal_num; i++) { > uint64_t offset = be64_to_cpu(packet->offset[i]); > > - if (offset > (block->used_length - p->page_size)) { > + if (offset > (p->block->used_length - p->page_size)) { > error_setg(errp, "multifd: offset too long %" PRIu64 > " (max " RAM_ADDR_FMT ")", > - offset, block->used_length); > + offset, p->block->used_length); > return -1; > } > p->normal[i] = offset; > diff --git a/migration/multifd.h b/migration/multifd.h > index 7cfc265148..a835643b48 100644 > --- a/migration/multifd.h > +++ b/migration/multifd.h > @@ -175,6 +175,8 @@ typedef struct { > uint32_t next_packet_size; > /* packets sent through this channel */ > uint64_t num_packets; > + /* ramblock */ > + RAMBlock *block; > /* ramblock host address */ > uint8_t *host; > /* non zero pages recv through this channel */