+37
−27
+1
−4
Loading
A device release method is only for undoing allocations on the path to preparing the device for device_add(). In contrast, devm allocations are post device_add(), are acquired during / after ->probe() and are released synchronous with ->remove(). So, a "devm" helper in a "release" method is a clear anti-pattern. Move this devm release action where it belongs, an action created at edac object creation time. Otherwise, this leaks resources until cxl_memdev_release() time which may be long after these xarray and error record caches have gone idle. Note, this also fixes up the type of @cxlmd->err_rec_array which needlessly dropped type-safety. Fixes: 0b5ccb0d ("cxl/edac: Support for finding memory operation attributes from the current boot") Cc: Dave Jiang <dave.jiang@intel.com> Cc: Jonathan Cameron <Jonathan.Cameron@huawei.com> Cc: Shiju Jose <shiju.jose@huawei.com> Cc: Alison Schofield <alison.schofield@intel.com> Reviewed-by:Alison Schofield <alison.schofield@intel.com> Reviewed-by:
Ben Cheatham <benjamin.cheatham@amd.com> Reviewed-by:
Dave Jiang <dave.jiang@intel.com> Reviewed-by:
Jonathan Cameron <jonathan.cameron@huawei.com> Tested-by:
Shiju Jose <shiju.jose@huawei.com> Reviewed-by:
Shiju Jose <shiju.jose@huawei.com> Tested-by:
Alejandro Lucero <alucerop@amd.com> Link: https://patch.msgid.link/20251216005616.3090129-2-dan.j.williams@intel.com Signed-off-by:
Dan Williams <dan.j.williams@intel.com> Signed-off-by:
Dave Jiang <dave.jiang@intel.com>