[GIT PULL] cxl fixes for v5.12-rc8 / final
From: Dan Williams
Date: Fri Apr 16 2021 - 23:10:36 EST
Hi Linus, please pull from:
git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl
tags/cxl-fixes-for-5.12-rc8
...to receive a collection of fixes for the CXL memory class driver
introduced in v5.12-rc1.
The driver was primarily developed on a work-in-progress QEMU
emulation of the interface and we have since found a couple places
where it hid spec compat bugs in the driver, or had a spec
implementation bug itself. The biggest change here is replacing a
percpu_ref with an rwsem to cleanup a couple bugs in the error unwind
path during ioctl device init. Lastly there were some minor cleanups
to not export the power-management sysfs-ABI for the ioctl device, use
the proper sysfs helper for emitting values, and prevent subtle bugs
as new administration commands are added to the supported list.
The bulk of it has appeared in -next save for the top commit which was
found today and validated on a fixed-up QEMU model.
---
The following changes since commit a38fd8748464831584a19438cbb3082b5a2dab15:
Linux 5.12-rc2 (2021-03-05 17:33:41 -0800)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl
tags/cxl-fixes-for-5.12-rc8
for you to fetch changes up to fae8817ae804a682c6823ad1672438f39fc46c28:
cxl/mem: Fix memory device capacity probing (2021-04-16 18:21:56 -0700)
----------------------------------------------------------------
cxl for 5.12-rc8
- Fix support for CXL memory devices with registers offset from the BAR
base.
- Fix the reporting of device capacity.
- Fix the driver commands list definition to be disconnected from the
UAPI command list.
- Replace percpu_ref with rwsem to fix initialization error path.
- Fix leaks in the driver initialization error path.
- Drop the power/ directory from CXL device sysfs.
- Use the recommended sysfs helper for attribute 'show' implementations.
----------------------------------------------------------------
Ben Widawsky (1):
cxl/mem: Fix register block offset calculation
Dan Williams (5):
cxl/mem: Use sysfs_emit() for attribute show routines
cxl/mem: Fix synchronization mechanism for device removal vs
ioctl operations
cxl/mem: Do not rely on device_add() side effects for
dev_set_name() failures
cxl/mem: Disable cxl device power management
cxl/mem: Fix memory device capacity probing
Robert Richter (1):
cxl/mem: Force array size of mem_commands[] to CXL_MEM_COMMAND_ID_MAX
drivers/cxl/mem.c | 152 ++++++++++++++++++++++++++++++++----------------------
1 file changed, 89 insertions(+), 63 deletions(-)