cxl_rs

Crates.iocxl_rs
lib.rscxl_rs
version0.0.5
sourcesrc
created_at2021-04-21 15:51:57.853924
updated_at2021-06-25 14:46:18.141684
descriptionCompute Express Link for Linux bindings
homepagehttps://gitlab.com/bwidawsk-cxl/cxl_rs
repositoryhttps://gitlab.com/bwidawsk-cxl/cxl_rs
max_upload_size
id387717
size76,847
Ben Widawsky (bwidawsk)

documentation

README

Rust bindings for CXL Linux interfaces

cxl_rs attempts to grant the low level functionality which is needed to write a utility that would have functionality to the CXL utility that's part of the ndctl utility.

The library has 3 main responsibilities:

  1. Parsing file system entities representing CXL devices, like sysfs.
  2. Interfacing with the character device IOCTL interface
  3. Managing memory devices, ie provisioning a device, and interleave set management.

Status

Very limited functionality is currently supported by library. The following areas need work:

  1. Better tests. Tests are difficult to write because the host system usually will not have CXL devices.
  2. More idiomatic rust. Lots of code was written as a Rust novice and could use some conversion.
  3. Implement missing memory device commands.
  4. Handle provisioning (currently Linux driver has no support for this)
  5. Handle logging/debugging
  6. Make human readable size serializers
  7. Run rust-bindgen on UAPI as part of build

Contributing

Contributions are welcome. Currently the following areas are in need of work:

Commit count: 32

cargo fmt