Re: [PATCH v3 1/4] dev_printk: add new dev_err_probe() helpers

From: Jonathan Cameron
Date: Sat Jun 08 2024 - 14:08:07 EST


On Thu, 6 Jun 2024 09:22:37 +0200
Nuno Sa <nuno.sa@xxxxxxxxxx> wrote:

> This is similar to dev_err_probe() but for cases where an ERR_PTR() or
> ERR_CAST() is to be returned simplifying patterns like:
>
> dev_err_probe(dev, ret, ...);
> return ERR_PTR(ret)
> or
> dev_err_probe(dev, PTR_ERR(ptr), ...);
> return ERR_CAST(ptr)
>
> Signed-off-by: Nuno Sa <nuno.sa@xxxxxxxxxx>

I'm convinced this is worth doing but would like inputs from others
before I pick this series up.

Jonathan

> ---
> include/linux/dev_printk.h | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/include/linux/dev_printk.h b/include/linux/dev_printk.h
> index ae80a303c216..ca32b5bb28eb 100644
> --- a/include/linux/dev_printk.h
> +++ b/include/linux/dev_printk.h
> @@ -277,4 +277,12 @@ do { \
>
> __printf(3, 4) int dev_err_probe(const struct device *dev, int err, const char *fmt, ...);
>
> +/* Simple helper for dev_err_probe() when ERR_PTR() is to be returned. */
> +#define dev_err_ptr_probe(dev, ___err, fmt, ...) \
> + ERR_PTR(dev_err_probe(dev, ___err, fmt, ##__VA_ARGS__))
> +
> +/* Simple helper for dev_err_probe() when ERR_CAST() is to be returned. */
> +#define dev_err_cast_probe(dev, ___err_ptr, fmt, ...) \
> + ERR_PTR(dev_err_probe(dev, PTR_ERR(___err_ptr), fmt, ##__VA_ARGS__))
> +
> #endif /* _DEVICE_PRINTK_H_ */
>