Re: [PATCH v2 4/6] cxl/mem: Convert devm_cxl_add_memdev() to scope-based-cleanup

From: Jonathan Cameron
Date: Wed Dec 17 2025 - 10:48:45 EST


On Mon, 15 Dec 2025 16:56:14 -0800
Dan Williams <dan.j.williams@xxxxxxxxx> wrote:

> In preparation for adding more setup steps, convert the current
> implementation to scope-based cleanup.
>
> The cxl_memdev_shutdown() is only required after cdev_device_add(). With
> that moved to a helper function it precludes the need to add
> scope-based-handler for that cleanup if devm_add_action_or_reset() fails.
>
> Cc: Smita Koralahalli <Smita.KoralahalliChannabasappa@xxxxxxx>
> Reviewed-by: Alison Schofield <alison.schofield@xxxxxxxxx>
> Reviewed-by: Dave Jiang <dave.jiang@xxxxxxxxx>
> Reviewed-by: Ben Cheatham <benjamin.cheatham@xxxxxxx>
> Tested-by: Alejandro Lucero <alucerop@xxxxxxx>
> Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>
One trivial thing below that is probably fine to cleanup whilst picking this
up.

Reviewed-by: Jonathan Cameron <jonathan.cameron@xxxxxxxxxx>

> ---
> drivers/cxl/core/memdev.c | 70 ++++++++++++++++++++++++---------------
> 1 file changed, 44 insertions(+), 26 deletions(-)
>
> diff --git a/drivers/cxl/core/memdev.c b/drivers/cxl/core/memdev.c
> index 7a4153e1c6a7..18efbf294db5 100644
> --- a/drivers/cxl/core/memdev.c
> +++ b/drivers/cxl/core/memdev.c

> +
> +DEFINE_FREE(put_cxlmd, struct cxl_memdev *,
> + if (!IS_ERR_OR_NULL(_T)) put_device(&_T->dev);)

Bonus ; ?