[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v6 07/10] i386/pc: handle unitialized mr in pc_get_cxl_range_
From: |
Igor Mammedov |
Subject: |
Re: [PATCH v6 07/10] i386/pc: handle unitialized mr in pc_get_cxl_range_end() |
Date: |
Thu, 7 Jul 2022 15:05:33 +0200 |
On Fri, 1 Jul 2022 17:10:11 +0100
Joao Martins <joao.m.martins@oracle.com> wrote:
> This in preparation to allow pc_pci_hole64_start() to be called early
> in pc_memory_init(), handle CXL memory region end when its underlying
> memory region isn't yet initialized.
>
> Cc: Jonathan Cameron <jonathan.cameron@huawei.com>
> Signed-off-by: Joao Martins <joao.m.martins@oracle.com>
> ---
> hw/i386/pc.c | 13 +++++++++++++
> 1 file changed, 13 insertions(+)
>
> diff --git a/hw/i386/pc.c b/hw/i386/pc.c
> index 8655cc3b8894..d6dff71012ab 100644
> --- a/hw/i386/pc.c
> +++ b/hw/i386/pc.c
> @@ -857,6 +857,19 @@ static uint64_t pc_get_cxl_range_end(PCMachineState
> *pcms)
> start = fw->mr.addr + memory_region_size(&fw->mr);
> }
> }
> + } else {
> + hwaddr cxl_size = MiB;
> +
> + start = pc_get_cxl_range_start(pcms);
> + if (pcms->cxl_devices_state.fixed_windows) {
> + GList *it;
> +
> + start = ROUND_UP(start + cxl_size, 256 * MiB);
> + for (it = pcms->cxl_devices_state.fixed_windows; it; it =
> it->next) {
> + CXLFixedWindow *fw = it->data;
> + start += fw->size;
> + }
> + }
/me wondering if this can replace block above that supposedly does
the same only using initialized cxl memory regions?
> }
>
> return start;
- [PATCH v6 01/10] hw/i386: add 4g boundary start to X86MachineState, (continued)
[PATCH v6 07/10] i386/pc: handle unitialized mr in pc_get_cxl_range_end(), Joao Martins, 2022/07/01
- Re: [PATCH v6 07/10] i386/pc: handle unitialized mr in pc_get_cxl_range_end(),
Igor Mammedov <=
[PATCH v6 05/10] i386/pc: factor out cxl range end to helper, Joao Martins, 2022/07/01
[PATCH v6 09/10] i386/pc: relocate 4g start to 1T where applicable, Joao Martins, 2022/07/01