Re: [PATCH v2] Staging: nvec: Convert to_nvec_led from a macro to an inline function

From: Greg Kroah-Hartman
Date: Mon Mar 20 2023 - 11:55:43 EST


On Sat, Mar 18, 2023 at 10:52:50AM -0700, Sumitra Sharma wrote:
> Convert to_nvec_led from a macro to a static inline function, to make the
> relevant types apparent in the definition and to benefit from the type
> checking performed by the compiler at call sites.
>
> Signed-off-by: Sumitra Sharma <sumitraartsy@xxxxxxxxx>
> ---
>
> v2: Change patch subject and description, noted by
> Julia Lawall <julia.lawall@xxxxxxxx>
>
> drivers/staging/nvec/nvec_paz00.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/staging/nvec/nvec_paz00.c b/drivers/staging/nvec/nvec_paz00.c
> index 8b4da95081c8..9573ba762cdd 100644
> --- a/drivers/staging/nvec/nvec_paz00.c
> +++ b/drivers/staging/nvec/nvec_paz00.c
> @@ -14,8 +14,10 @@
> #include <linux/platform_device.h>
> #include "nvec.h"
>
> -#define to_nvec_led(led_cdev) \
> - container_of(led_cdev, struct nvec_led, cdev)
> +static inline struct nvec_led *to_nvec_led(struct led_classdev *led_cdev)
> +{
> + return container_of(led_cdev, struct nvec_led, cdev);
> +}

There is no need for a function, or a macro, for this, as it is only
used once. Please just open-code it in the one place it is used
instead.

thanks,

greg k-h