[PATCH v3 0/7] Use guard() instead of rwsem locking

From: Li Ming
Date: Thu Feb 20 2025 - 20:25:30 EST


Use scoped resource management to replace open-coded locking operation
is recommended. CXL subsystem still remains some down_read()/up_read()
and down_write()/up_write() which can be replaced by guard() simply.

This patchset includes simply using guard() instead of some
down_read()/up_read() and down_write()/up_write() cases. Besides, it
also includes some function code cleanup after using guard().

base-commit: d5d2106e2118c4e09fef131d9889f79559b95bfc cxl/next

v3:
- Drop the renaming of __construct_region() to construct_auto_region(). (Dan)
- Rebase to the top of cxl/next. (Dave)
v2:
- Drop some local variables. (Jonathan)
- Rename __construct_region() to construct_auto_region(). (Jonathan and Dave)

Li Ming (7):
cxl/core: Use guard() to replace open-coded down_read/write()
cxl/core: cxl_mem_sanitize() cleanup
cxl/memdev: cxl_memdev_ioctl() cleanup
cxl/core: Use guard() to drop the goto pattern of cxl_dpa_free()
cxl/core: Use guard() to drop goto pattern of cxl_dpa_alloc()
cxl/region: Drop goto pattern in cxl_dax_region_alloc()
cxl/region: Drop goto pattern of construct_region()

drivers/cxl/core/hdm.c | 69 ++++++++++---------------
drivers/cxl/core/mbox.c | 10 ++--
drivers/cxl/core/memdev.c | 17 +++---
drivers/cxl/core/port.c | 8 +--
drivers/cxl/core/region.c | 105 +++++++++++++++++++-------------------
5 files changed, 91 insertions(+), 118 deletions(-)

--
2.34.1