diff options
author | Li Zhijian <lizhijian@fujitsu.com> | 2024-04-28 06:07:48 +0300 |
---|---|---|
committer | Dave Jiang <dave.jiang@intel.com> | 2024-05-01 00:04:52 +0300 |
commit | 1c987cf22d6b65ade46145c03eef13f0e3e81d83 (patch) | |
tree | 2e24b5f6856c7e77955e5f96fd46565b67df84ba | |
parent | 660c0a8679e57e9147c27962605e8f94bd520b5e (diff) | |
download | linux-1c987cf22d6b65ade46145c03eef13f0e3e81d83.tar.xz |
cxl/region: Fix cxlr_pmem leaks
Before this error path, cxlr_pmem pointed to a kzalloc() memory, free
it to avoid this memory leaking.
Fixes: f17b558d6663 ("cxl/pmem: Refactor nvdimm device registration, delete the workqueue")
Signed-off-by: Li Zhijian <lizhijian@fujitsu.com>
Reviewed-by: Dan Williams <dan.j.williams@intel.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Link: https://lore.kernel.org/r/20240428030748.318985-1-lizhijian@fujitsu.com
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
-rw-r--r-- | drivers/cxl/core/region.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/cxl/core/region.c b/drivers/cxl/core/region.c index 45eb9c560fd6..29b0b8a52d3d 100644 --- a/drivers/cxl/core/region.c +++ b/drivers/cxl/core/region.c @@ -2854,6 +2854,7 @@ static struct cxl_pmem_region *cxl_pmem_region_alloc(struct cxl_region *cxlr) if (i == 0) { cxl_nvb = cxl_find_nvdimm_bridge(cxlmd); if (!cxl_nvb) { + kfree(cxlr_pmem); cxlr_pmem = ERR_PTR(-ENODEV); goto out; } |