hw/mem: Use memory_region_size() in cxl_type3

Accessors prefered over direct use of int128_get64() as they
clamp out of range values.  None are expected here but
cleaner to always use the accessor than mix and match.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>

Message-Id: <20230421160827.2227-3-Jonathan.Cameron@huawei.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Gregory Price <gregory.price@memverge.com>
This commit is contained in:
Jonathan Cameron 2023-04-21 17:08:26 +01:00 committed by Michael S. Tsirkin
parent 847ea4e746
commit 3521176526

View File

@ -52,7 +52,7 @@ static int ct3_build_cdat_entries_for_mr(CDATSubHeader **cdat_table,
.DSMADhandle = dsmad_handle, .DSMADhandle = dsmad_handle,
.flags = CDAT_DSMAS_FLAG_NV, .flags = CDAT_DSMAS_FLAG_NV,
.DPA_base = 0, .DPA_base = 0,
.DPA_length = int128_get64(mr->size), .DPA_length = memory_region_size(mr),
}; };
/* For now, no memory side cache, plausiblish numbers */ /* For now, no memory side cache, plausiblish numbers */
@ -133,7 +133,7 @@ static int ct3_build_cdat_entries_for_mr(CDATSubHeader **cdat_table,
/* Reserved - the non volatile from DSMAS matters */ /* Reserved - the non volatile from DSMAS matters */
.EFI_memory_type_attr = 2, .EFI_memory_type_attr = 2,
.DPA_offset = 0, .DPA_offset = 0,
.DPA_length = int128_get64(mr->size), .DPA_length = memory_region_size(mr),
}; };
/* Header always at start of structure */ /* Header always at start of structure */
@ -698,7 +698,7 @@ MemTxResult cxl_type3_read(PCIDevice *d, hwaddr host_addr, uint64_t *data,
return MEMTX_ERROR; return MEMTX_ERROR;
} }
if (dpa_offset > int128_get64(mr->size)) { if (dpa_offset > memory_region_size(mr)) {
return MEMTX_ERROR; return MEMTX_ERROR;
} }
@ -721,7 +721,7 @@ MemTxResult cxl_type3_write(PCIDevice *d, hwaddr host_addr, uint64_t data,
return MEMTX_OK; return MEMTX_OK;
} }
if (dpa_offset > int128_get64(mr->size)) { if (dpa_offset > memory_region_size(mr)) {
return MEMTX_OK; return MEMTX_OK;
} }
return address_space_write(&ct3d->hostmem_as, dpa_offset, attrs, return address_space_write(&ct3d->hostmem_as, dpa_offset, attrs,