On 19/04/2024 07:10, nifan....@gmail.com wrote:
> From: Fan Ni <fan...@samsung.com>
> 

> +}
> +
>   static bool cxl_setup_memory(CXLType3Dev *ct3d, Error **errp)
>   {
>       DeviceState *ds = DEVICE(ct3d);
> @@ -635,6 +676,13 @@ static bool cxl_setup_memory(CXLType3Dev *ct3d, Error 
> **errp)
>           g_free(p_name);
>       }
>   
> +    if (ct3d->dc.num_regions > 0) {
> +        if (!cxl_create_dc_regions(ct3d, errp)) {
> +            error_setg(errp, "setup DC regions failed");

This error_set() would cause an assertion if the errp was assigned inside 
cxl_create_dc_regions();
Try error_append_hint() instead

#3  0x00007f1fdc4fafc6 in annobin_assert.c_end () at /lib64/libc.so.6
#4  0x0000555fd3edbea8 in error_setv
     (errp=0x7ffe6d1a3de0, src=0x555fd3fe262b "../hw/mem/cxl_type3.c", 
line=807, func=0x555fd3fe2fe0 <__func__.21> "cxl_setup_memory", 
err_class=ERROR_CLASS_GENERIC_ERROR, fmt=0x555fd3fe2939 "setup DC regions 
failed", ap=0x7ffe6d1a3
c00, suffix=0x0) at ../util/error.c:68
#5  0x0000555fd3edc126 in error_setg_internal
     (errp=0x7ffe6d1a3de0, src=0x555fd3fe262b "../hw/mem/cxl_type3.c", 
line=807, func=0x555fd3fe2fe0 <__func__.21> "cxl_setup_memory", 
fmt=0x555fd3fe2939 "setup DC regions failed") at ../util/error.c:105
#6  0x0000555fd3819c9f in cxl_setup_memory (ct3d=0x555fd8b2f3e0, 
errp=0x7ffe6d1a3de0) at ../hw/mem/cxl_type3.c:807
#7  0x0000555fd3819d7b in ct3_realize (pci_dev=0x555fd8b2f3e0, 
errp=0x7ffe6d1a3de0) at ../hw/mem/cxl_type3.c:833
#8  0x0000555fd38b575f in pci_qdev_realize (qdev=0x555fd8b2f3e0, 
errp=0x7ffe6d1a3e60) at ../hw/pci/pci.c:2093
#9  0x0000555fd3ccca9b in device_set_realized (obj=0x555fd8b2f3e0, value=true, 
errp=0x7ffe6d1a40d0)

Reply via email to