On Thu, 27 Nov 2025 22:55:21 +0000 Alireza Sanaee <[email protected]> wrote:
> Add extra information in each extent about fix memory window and fixed > memory backend, because extent might be backed by different memory because each extent might be backed by a different memory backend (under new scheme they are one to one) > backends, thus such information must be stored in the extent object. > Consequently, APIs should be changes to support extra members. > > Signed-off-by: Alireza Sanaee <[email protected]> > --- > hw/cxl/cxl-host.c | 2 ++ > hw/cxl/cxl-mailbox-utils.c | 42 ++++++++++++++++++++++++------------- > hw/mem/cxl_type3.c | 23 +++++++++++++++----- > include/hw/cxl/cxl_device.h | 17 ++++++++++++--- > 4 files changed, 61 insertions(+), 23 deletions(-) > > diff --git a/hw/cxl/cxl-host.c b/hw/cxl/cxl-host.c > index 3a563af3bc..7c8fde4646 100644 > --- a/hw/cxl/cxl-host.c > +++ b/hw/cxl/cxl-host.c > @@ -365,6 +365,8 @@ static int cxl_fmws_direct_passthrough(Object *obj, void > *opaque) > return 0; > } > > + ct3d->dc.fw = fw; > + > if (state->commit) { > MemoryRegion *mr = NULL; > uint64_t vmr_size = 0, pmr_size = 0; > diff --git a/hw/cxl/cxl-mailbox-utils.c b/hw/cxl/cxl-mailbox-utils.c > index 68c7cc9891..ae723c03ec 100644 > --- a/hw/cxl/cxl-mailbox-utils.c > +++ b/hw/cxl/cxl-mailbox-utils.c > @@ -2840,10 +2840,13 @@ CXLDCRegion *cxl_find_dc_region(CXLType3Dev *ct3d, > uint64_t dpa, uint64_t len) > } > > void cxl_insert_extent_to_extent_list(CXLDCExtentList *list, > + HostMemoryBackend *host_mem, > + struct CXLFixedWindow *fw, > uint64_t dpa, > uint64_t len, > uint8_t *tag, > - uint16_t shared_seq) > + uint16_t shared_seq, > + int rid) I'm not sure what rid is... Maybe there is a better name? The dynamic capacity region index?
