CXL 2.0 Support For Linux Moves Past "RFC" Phase
The initial discussion and review of those CXL 2.0 / type-3 memory device support patches were sent out under a "request for comments" (RFC) flag as is common for early stage patches that are still a work-in-progress and particularly when the design may change pending feedback from other developers. Sent out on Friday now were the latest CXL 2.0 patches and have moved past that RFC phase.
The newest CXL 2.0 support patches for Linux have improved error messages, fixes for when building under the Clang compiler rather than GCC, additional code comments / documentation, more commands being added to the mailbox interface, and additional low-level changes.
The CXL 2.0 type-3 memory device support being fleshed out first is for serving as a memory expander for RAM or persistent memory and can optionally be interleaved with other CXL devices. While CXL 2.0 hardware will be coming down the pipe, this early Linux bring-up has been done by leveraging emulation in conjunction with QEMU. QEMU patches are pending for emulating CXL 2.0 type-3 memory device support to aide in this early work and testing.
These latest CXL 2.0 support patches for the Linux kernel can be found at lore.kernel.org. With CXL 1.x hardware not expected to begin appearing widespread until at least later this calendar year, it's still looking like CXL 2.0 hardware won't be common in servers until 2023~2024 at the earliest. Thus there is still plenty of time to get the complete CXL 2.0 Linux support in order and working its way out to enterprise Linux distributions.