Open zhuohaofan opened 1 year ago
I have not reproduced the problem yet due to other issues in my setup.
Perhaps this is a qemu problem (not a cxl/ndctl tool problem). The patch below fixes a relevant qemu issue that causes cxl create region
to always fail:
https://lists.gnu.org/archive/html/qemu-devel/2022-10/msg06241.html
I also have problem on enable cxl pmem. but the error message is:
# cxl create-region -d decoder0.0 -m mem0 --debug
libcxl: __sysfs_device_parse: base: '/sys/bus/cxl/devices' dev: 'mem'
libcxl: add_cxl_memdev: mem0: base: '/sys/bus/cxl/devices/mem0'
libcxl: __sysfs_device_parse: base: '/sys/bus/cxl/devices/mem0' dev: 'pmem'
libcxl: add_cxl_pmem: pmem0: pmem_base: '/sys/bus/cxl/devices/mem0/pmem0'
libcxl: __sysfs_device_parse: pmem0: processed
libcxl: __sysfs_device_parse: mem0: processed
libcxl: __sysfs_device_parse: base: '/sys/bus/cxl/devices' dev: 'root'
libcxl: add_cxl_bus: root0: base: '/sys/bus/cxl/devices/root0'
libcxl: __util_modalias_to_module: failed to find module for alias: cxl:t4 0 list: empty
libcxl: __sysfs_device_parse: root0: processed
libcxl: __sysfs_device_parse: base: '/sys/bus/cxl/devices/root0' dev: 'port'
libcxl: add_cxl_port: port1: base: '/sys/bus/cxl/devices/root0/port1'
libcxl: __util_modalias_to_module: failed to find module for alias: cxl:t3 0 list: empty
libcxl: __sysfs_device_parse: port1: processed
libcxl: __sysfs_device_parse: base: '/sys/bus/cxl/devices/root0/port1' dev: 'endpoint'
libcxl: add_cxl_endpoint: endpoint2: base: '/sys/bus/cxl/devices/root0/port1/endpoint2'
libcxl: __util_modalias_to_module: failed to find module for alias: cxl:t3 0 list: empty
libcxl: __sysfs_device_parse: endpoint2: processed
libcxl: __sysfs_device_parse: base: '/sys/bus/cxl/devices/root0' dev: 'decoder0.'
libcxl: add_cxl_decoder: decoder0.0: base: '/sys/bus/cxl/devices/root0/decoder0.0'
libcxl: __sysfs_read_attr: failed to open /sys/bus/cxl/devices/root0/decoder0.0/mode: No such file or directory
libcxl: __sysfs_read_attr: failed to open /sys/bus/cxl/devices/root0/decoder0.0/interleave_granularity: No such file or directory
libcxl: __sysfs_read_attr: failed to open /sys/bus/cxl/devices/root0/decoder0.0/interleave_ways: No such file or directory
libcxl: __sysfs_device_parse: base: '/sys/bus/cxl/devices/root0/decoder0.0' dev: 'region'
libcxl: add_cxl_decoder: decoder0.0: target0 /sys/devices/LNXSYSTM:00/LNXSYBUS:00/ACPI0016:00 phys_path: /sys/devices/pci0000:0c
libcxl: add_cxl_decoder: decoder0.0: target0 /sys/devices/LNXSYSTM:00/LNXSYBUS:00/ACPI0016:00 fw_path: none
libcxl: __sysfs_device_parse: decoder0.0: processed
libcxl: __sysfs_device_parse: base: '/sys/bus/cxl/devices/root0' dev: 'endpoint'
libcxl: cxl_target_maps_memdev: memdev: /sys/devices/pci0000:0c/0000:0c:00.0/0000:0d:00.0 target: /sys/devices/LNXSYSTM:00/LNXSYBUS:00/ACPI0016:00
libcxl: __sysfs_device_parse: base: '/sys/bus/cxl/devices/root0/port1' dev: 'decoder1.'
libcxl: add_cxl_decoder: decoder1.0: base: '/sys/bus/cxl/devices/root0/port1/decoder1.0'
libcxl: __sysfs_read_attr: failed to open /sys/bus/cxl/devices/root0/port1/decoder1.0/mode: No such file or directory
libcxl: __sysfs_read_attr: failed to open /sys/bus/cxl/devices/root0/port1/decoder1.0/interleave_granularity: No such file or directory
libcxl: __sysfs_read_attr: failed to open /sys/bus/cxl/devices/root0/port1/decoder1.0/interleave_ways: No such file or directory
libcxl: add_cxl_decoder: decoder1.0: target0 /sys/devices/pci0000:0c/0000:0c:00.0 phys_path: none
libcxl: add_cxl_decoder: decoder1.0: target0 /sys/devices/pci0000:0c/0000:0c:00.0 fw_path: none
libcxl: __sysfs_device_parse: decoder1.0: processed
libcxl: __sysfs_device_parse: base: '/sys/bus/cxl/devices/root0/port1' dev: 'port'
libcxl: __sysfs_read_attr: failed to open /sys/bus/cxl/devices/root0/decoder0.0/create_pmem_region: No such file or directory
libcxl: cxl_decoder_create_pmem_region: failed to read new region name: No such file or directory
cxl region: create_region: failed to create region under decoder0.0
cxl region: cmd_create_region: created 0 regions
I created a CXL guest refer to Compute Express Link (CXL).
The guest kerel is 6.0.2.
cxl-cli verison is 74.
In the guest, 'cxl' can list the cxl devices. But fail to create region. The debug error messge as follow: