Re: [PATCH] zlib: Put get_unaligned16() inside #ifdef block

From: Christoph Hellwig
Date: Tue May 23 2017 - 03:36:05 EST


On Mon, May 22, 2017 at 02:13:26PM -0700, Matthias Kaehlcke wrote:
> The function is not used when CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y.
> Adding the #ifdef fixes the following warning when building with clang:
>
> lib/zlib_inflate/inffast.c:31:1: error: unused function 'get_unaligned16'
> [-Werror,-Wunused-function]
>
> Signed-off-by: Matthias Kaehlcke <mka@xxxxxxxxxxxx>
> ---
> Note: Usually we would use the __maybe_unused attribute to silence the
> warning. Since this code is used in the kernel decompression stub rather
> than in the kernel itself we can't include <linux/compiler.h> with the
> definition of __maybe_unused (it would be possible for some platforms,
> however for powerpc the build fails with a compiler error). We could
> redefine __maybe_unused or use the raw __attribute__((unused)), but
> using the #ifdef is a simpler solution.

Usually one would take a look at the root cause. And then remove
get_unaligned16 entirely and replace it with the get_unaligned
helper provided by the kernel.