Re: [PATCH] zsmalloc: avoid unused-function warning

From: Nhat Pham
Date: Wed Jan 18 2023 - 14:27:39 EST


On Tue, Jan 17, 2023 at 9:05 AM Arnd Bergmann <arnd@xxxxxxxxxx> wrote:
>
> From: Arnd Bergmann <arnd@xxxxxxxx>
>
> obj_allocated() can be called from two places that are each
> inside of an #ifdef. When both are disabled, the compiler warns:
>
> mm/zsmalloc.c:900:13: error: 'obj_allocated' defined but not used [-Werror=unused-function]
>
> Rather than trying to figure out the correct #ifdef, mark the
> trivial function as 'inline', which implies __maybe_unused and
> shuts up the warning.
>
> Fixes: 796c71ac728e ("zsmalloc: fix a race with deferred_handles storing")
> Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
Acked-by: Nhat Pham <nphamcs@xxxxxxxxx>
> ---
> mm/zsmalloc.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/mm/zsmalloc.c b/mm/zsmalloc.c
> index 723ed56d3fbb..9d27d9b00bce 100644
> --- a/mm/zsmalloc.c
> +++ b/mm/zsmalloc.c
> @@ -937,7 +937,7 @@ static bool obj_tagged(struct page *page, void *obj, unsigned long *phandle,
> return true;
> }
>
> -static bool obj_allocated(struct page *page, void *obj, unsigned long *phandle)
> +static inline bool obj_allocated(struct page *page, void *obj, unsigned long *phandle)
> {
> return obj_tagged(page, obj, phandle, OBJ_ALLOCATED_TAG);
> }
> --
> 2.39.0
>
Tricky one indeed - I definitely missed that. Thanks for the fix!