migration/rdma: Drop RDMARegister.key.chunk
Not used anymore. Reviewed-by: Jinpu Wang <jinpu.wang@cloud.ionos.com> Signed-off-by: Peter Xu <peterx@redhat.com> Reviewed-by: Jack Wang <jinpu.wang@cloud.ionos.com> Signed-off-by: Fabiano Rosas <farosas@suse.de>
Peter Xu committed
Aug 20, 2026 at 16:03 UTC
c19bf6f706c7591683bb68daf7826e52da073d37
1 file changed
+10
-13
migration/rdma.c
+10
-13
@@ -414,10 +414,7 @@ static void network_to_control(RDMAControlHeader *control)
414
* the actual RDMA operation.
415
*/
416
typedef struct QEMU_PACKED {
417
- union QEMU_PACKED {
418
- uint64_t current_addr; /* offset into the ram_addr_t space */
419
- uint64_t chunk; /* chunk to lookup if unregistering */
420
- } key;
417
+ uint64_t current_addr; /* offset into the ram_addr_t space */
418
uint32_t current_index; /* which ramblock the chunk belongs to */
419
uint32_t padding;
420
uint64_t chunks; /* how many sequential chunks to register */
@@ -442,16 +439,16 @@ static void register_to_network(RDMAContext *rdma, RDMARegister *reg)
439
* current_addr as passed in is an address in the local ram_addr_t
440
* space, we need to translate this for the destination
441
*/
445
- reg->key.current_addr -= local_block->offset;
446
- reg->key.current_addr += rdma->dest_blocks[reg->current_index].offset;
447
- reg->key.current_addr = htonll(reg->key.current_addr);
442
+ reg->current_addr -= local_block->offset;
443
+ reg->current_addr += rdma->dest_blocks[reg->current_index].offset;
444
+ reg->current_addr = htonll(reg->current_addr);
445
reg->current_index = htonl(reg->current_index);
446
reg->chunks = htonll(reg->chunks);
447
}
448
449
static void network_to_register(RDMARegister *reg)
450
{
454
- reg->key.current_addr = ntohll(reg->key.current_addr);
451
+ reg->current_addr = ntohll(reg->current_addr);
452
reg->current_index = ntohl(reg->current_index);
453
reg->chunks = ntohll(reg->chunks);
454
}
@@ -1831,7 +1828,7 @@ retry:
1828
* Otherwise, tell other side to register.
1829
*/
1830
reg.current_index = current_index;
1834
- reg.key.current_addr = current_addr;
1831
+ reg.current_addr = current_addr;
1832
reg.chunks = chunks;
1833
1834
trace_rdma_write_one_sendreg(chunk, sge.length, current_index,
@@ -3373,7 +3370,7 @@ int rdma_registration_handle(QEMUFile *f)
3370
reg_result = &results[count];
3371
3372
trace_rdma_registration_handle_register_loop(count,
3376
- reg->current_index, reg->key.current_addr, reg->chunks);
3373
+ reg->current_index, reg->current_addr, reg->chunks);
3374
3375
if (reg->current_index >= rdma->local_ram_blocks.nb_blocks) {
3376
error_report("rdma: 'register' bad block index %u (vs %d)",
@@ -3382,15 +3379,15 @@ int rdma_registration_handle(QEMUFile *f)
3379
goto err;
3380
}
3381
block = &(rdma->local_ram_blocks.block[reg->current_index]);
3385
- if (block->offset > reg->key.current_addr) {
3382
+ if (block->offset > reg->current_addr) {
3383
error_report("rdma: bad register address for block %s"
3384
" offset: %" PRIx64 " current_addr: %" PRIx64,
3385
block->block_name, block->offset,
3389
- reg->key.current_addr);
3386
+ reg->current_addr);
3387
goto err;
3388
}
3389
host_addr = (block->local_host_addr +
3393
- (reg->key.current_addr - block->offset));
3390
+ (reg->current_addr - block->offset));
3391
chunk = ram_chunk_index(block->local_host_addr,
3392
(uint8_t *) host_addr);
3393
chunk_start = ram_chunk_start(block, chunk);