Re: [PATCH] container_of: remove container_of_safe()
From: Rafael J. Wysocki
Date: Mon Oct 24 2022 - 10:46:09 EST
On Mon, Oct 24, 2022 at 2:56 PM Greg Kroah-Hartman
<gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
>
> It came in from a staging driver that has been long removed from the
> tree, and there are no in-kernel users of the macro, and it's very
> dubious if anyone should ever use this thing, so just remove it
> entirely.
>
> Cc: Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx>
> Cc: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
> Cc: "Rafael J. Wysocki" <rafael@xxxxxxxxxx>
> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
Acked-by: Rafael J. Wysocki <rafael@xxxxxxxxxx>
> ---
> include/linux/container_of.h | 16 ----------------
> 1 file changed, 16 deletions(-)
>
> diff --git a/include/linux/container_of.h b/include/linux/container_of.h
> index 2f4944b791b8..a6f242137b11 100644
> --- a/include/linux/container_of.h
> +++ b/include/linux/container_of.h
> @@ -21,20 +21,4 @@
> "pointer type mismatch in container_of()"); \
> ((type *)(__mptr - offsetof(type, member))); })
>
> -/**
> - * container_of_safe - cast a member of a structure out to the containing structure
> - * @ptr: the pointer to the member.
> - * @type: the type of the container struct this is embedded in.
> - * @member: the name of the member within the struct.
> - *
> - * If IS_ERR_OR_NULL(ptr), ptr is returned unchanged.
> - */
> -#define container_of_safe(ptr, type, member) ({ \
> - void *__mptr = (void *)(ptr); \
> - static_assert(__same_type(*(ptr), ((type *)0)->member) || \
> - __same_type(*(ptr), void), \
> - "pointer type mismatch in container_of_safe()"); \
> - IS_ERR_OR_NULL(__mptr) ? ERR_CAST(__mptr) : \
> - ((type *)(__mptr - offsetof(type, member))); })
> -
> #endif /* _LINUX_CONTAINER_OF_H */
> --
> 2.38.1
>