Linux CXL
 help / color / mirror / Atom feed
* Questions about CXL device (type 3 memory) hotplug
@ 2023-05-22  8:06 Yasunori Gotou (Fujitsu)
  2023-05-23  0:11 ` Dan Williams
  0 siblings, 1 reply; 29+ messages in thread
From: Yasunori Gotou (Fujitsu) @ 2023-05-22  8:06 UTC (permalink / raw)
  To: linux-cxl@vger.kernel.org; +Cc: 'Dan Williams'

Hello,

I have some questions about CXL device hotplug (especially type 3 memory device).

Though my team members still need to work for a remain issue of Filesystem-DAX,
or RDMA for persistent memory yet, I would like to move some of them for
CXL type 3 memory device after finish the above works.
This is preparation for it. I would like to confirm current status of CXL
type 3 memory hotplug.

Q1) Can PCIe hotplug driver detect and call CXL driver?

    CXL specification says as follows
    "9.9 Hot-Plug"
    "CXL leverages PCIe Hot-plug model and Hot-plug elements as defined in PCIe
    BaseSpecification and the applicable form-factor specifications."

    At a glance, PCIe hotplug driver seems to be able to detect any PCIe
    hotpluged device, and call its suitable probe/attach function. But I'm new
    around here, and  I'm not sure it can actually call the suitable CXL driver.

    Can PCIe hotplug driver recognize a CXL device and call its driver?

Q2) Can QEMU/KVM emulate CXL device hotplug?

   I heard that QEMU/KVM has PCIe device hotplug emulation, but I'm not sure
   it can hotplug CXL device.

Q3) After called CXL driver and detected a CXL type 3 memory device,
    what sequence is/will be executed?

    IIRC, kernel created /sys/devices/system/memory/memoryNNN directories when
    memory device is recognized. Then, online operation was executed by 
    a user or an application.
    
    However, CXL specification seems to require more configuration like
    interleave, region, and namespace by Fabric Manager (cxl command?)
    after device detection before memory online.

    So, my understanding is that the above configuration must be executed
    after device detection, and before memory online. Is it correct?

Q4) Current CXL drivers/tools support Hot-removal request from PCIe?

    CXL specification says "In a managed Hot-Remove flow, software is
    notified of a hot removal request."

    I think that CXL drivers/tools need to find which sections belongs to the
    requested device, and execute offline them at least. In addition,
    Fabric Manager may need to prepare removing the device due to configuration
    change.

    Does current CXL drivers/tools can execute them?
    Otherwise, does it need to be implemented yet?

Q5) How CXL driver treat region/namespace size against section size?
    Current x86-64 section size can be 2Gbyte, but CXL region size may be
    able to smaller than it. 

Thanks,
Yasunori Goto


^ permalink raw reply	[flat|nested] 29+ messages in thread

end of thread, other threads:[~2024-03-27  7:19 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-05-22  8:06 Questions about CXL device (type 3 memory) hotplug Yasunori Gotou (Fujitsu)
2023-05-23  0:11 ` Dan Williams
2023-05-23  8:31   ` Yasunori Gotou (Fujitsu)
2023-05-23 17:36     ` Dan Williams
2023-05-24 11:12       ` Yasunori Gotou (Fujitsu)
2023-05-24 20:51         ` Dan Williams
2023-05-25 10:32           ` Yasunori Gotou (Fujitsu)
2023-05-26  8:05         ` Yasunori Gotou (Fujitsu)
2023-05-26 14:48           ` Dan Williams
2023-05-29  8:07             ` Yasunori Gotou (Fujitsu)
2023-06-06 17:58               ` Dan Williams
2023-06-08  7:39                 ` Yasunori Gotou (Fujitsu)
2023-06-08 18:37                   ` Dan Williams
2023-06-09  1:02                     ` Yasunori Gotou (Fujitsu)
2023-05-23 13:34   ` Vikram Sethi
2023-05-23 18:40     ` Dan Williams
2023-05-24  0:02       ` Vikram Sethi
2023-05-24  4:03         ` Dan Williams
2023-05-24 14:47           ` Vikram Sethi
2023-05-24 21:20             ` Dan Williams
2023-05-31  4:25               ` Vikram Sethi
2023-06-06 20:54                 ` Dan Williams
2023-06-07  1:06                   ` Vikram Sethi
2023-06-07 15:12                     ` Jonathan Cameron
2023-06-07 18:44                       ` Vikram Sethi
2023-06-08 15:19                         ` Jonathan Cameron
2023-06-08 18:41                           ` Dan Williams
2024-03-27  7:10   ` Yuquan Wang
2024-03-27  7:18   ` Yuquan Wang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox