diff options
author | Dave Jiang <dave.jiang@intel.com> | 2024-01-05 15:07:53 -0700 |
---|---|---|
committer | Dan Williams <dan.j.williams@intel.com> | 2024-01-05 14:36:29 -0800 |
commit | 66f11890d35a609012037cccfd9e63ed98474f99 (patch) | |
tree | 74b80084346752a1876bc1fa0c273239a38d4723 /drivers/cxl | |
parent | 98e7ab3345e105339b7d919b4918f3c1879052ed (diff) | |
download | linux-stable-66f11890d35a609012037cccfd9e63ed98474f99.tar.gz linux-stable-66f11890d35a609012037cccfd9e63ed98474f99.tar.bz2 linux-stable-66f11890d35a609012037cccfd9e63ed98474f99.zip |
cxl: Refactor to use __free() for cxl_root allocation in cxl_find_nvdimm_bridge()
Use scope-based resource management __free() macro to drop the open coded
put_device() in cxl_find_nvdimm_bridge().
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
Link: https://lore.kernel.org/r/170449247353.3779673.5963704495491343135.stgit@djiang5-mobl3
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'drivers/cxl')
-rw-r--r-- | drivers/cxl/core/pmem.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/drivers/cxl/core/pmem.c b/drivers/cxl/core/pmem.c index da92a901b9e8..e69625a8d6a1 100644 --- a/drivers/cxl/core/pmem.c +++ b/drivers/cxl/core/pmem.c @@ -64,16 +64,14 @@ static int match_nvdimm_bridge(struct device *dev, void *data) struct cxl_nvdimm_bridge *cxl_find_nvdimm_bridge(struct cxl_memdev *cxlmd) { - struct cxl_root *cxl_root = find_cxl_root(cxlmd->endpoint); - struct cxl_port *port; + struct cxl_root *cxl_root __free(put_cxl_root) = + find_cxl_root(cxlmd->endpoint); struct device *dev; if (!cxl_root) return NULL; - port = &cxl_root->port; - dev = device_find_child(&port->dev, NULL, match_nvdimm_bridge); - put_device(&port->dev); + dev = device_find_child(&cxl_root->port.dev, NULL, match_nvdimm_bridge); if (!dev) return NULL; |