On Fri, May 23, 2025 at 09:46:35AM -0700, Dave Jiang wrote: This set to applied to ndctl/pending. https://github.com/pmem/ndctl/tree/pending
Marc & DaveJ - take a look and see if the unit test reflects your last comments and concerns. I err'd on the side of like-ness...keeping it like the other cxl-*.sh unit tests with respect to what is kept as boiler-plate at the top of the test. > v9: > - Move script body to main(). (Marc) > - Remove uuid dep for test module. (Marc) > - Remove removal of error trap. (Marc) > > v8: > - Stash fwctl discovery functions behind ifdef (Alison) > - Deal with old compilers and __counted_by(). (Alison) > > v7: > - Move enumeration of fwctl behind meson option 'fwctl'. (Dan) > > v6: > - Rename cxl-features.control.c back to fwctl.c. (Dan) > - Move features behind a meson option. (Dan) > - See individual commits for specific changes from v5. > > v5: > - Add documentation for exported symbols. (Alison) > - Create 'struct cxl_fwctl' as object under cxl_memdev. (Dan) > - Make command prep common code. (Alison) > - Rename fwctl.c to cxl-features-control.c. (Alison) > - See individual commits for specific changes from v4. > > v4: > - Adjust to kernel changes of input/output structs > - Fixup skip/pass/fail logic > - Added new kernel headers detection and dependency in meson.build > > v3: > - Update test to use opcode instead of command id. > > v2: > - Drop features device enumeration > - Add discovery of char device under memdev > > The series provides support of libcxl enumerating FWCTL character device > under the cxl_memdev device. It discovers the char device major > and minor numbers for the CXL features device in order to allow issuing > of ioctls to the device. > > A unit test is added to locate cxl_memdev exported by the cxl_test > kernel module and issue all the supported ioctls to the associated > FWCTL char device to verify that all the ioctl paths are working as expected. > > Kernel series: > https://lore.kernel.org/linux-cxl/20250207233914.2375110-1-dave.ji...@intel.com/T/#t > > Dave Jiang (4): > cxl: Add cxl_bus_get_by_provider() > cxl: Enumerate major/minor of FWCTL char device > ndctl: Add features.h from kernel UAPI > cxl/test: Add test for cxl features device > > Documentation/cxl/lib/libcxl.txt | 26 ++ > config.h.meson | 3 + > cxl/fwctl/cxl.h | 56 ++++ > cxl/fwctl/features.h | 187 +++++++++++++ > cxl/fwctl/fwctl.h | 141 ++++++++++ > cxl/lib/libcxl.c | 94 +++++++ > cxl/lib/libcxl.sym | 8 + > cxl/lib/private.h | 6 + > cxl/libcxl.h | 7 + > meson.build | 1 + > meson_options.txt | 2 + > test/cxl-features.sh | 37 +++ > test/fwctl.c | 439 +++++++++++++++++++++++++++++++ > test/meson.build | 18 ++ > 14 files changed, 1025 insertions(+) > create mode 100644 cxl/fwctl/cxl.h > create mode 100644 cxl/fwctl/features.h > create mode 100644 cxl/fwctl/fwctl.h > create mode 100755 test/cxl-features.sh > create mode 100644 test/fwctl.c > > > base-commit: 1850ddcbcbf9eebd343c6e87a2c55f3f5e3930c4 > -- > 2.49.0 >