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

From: Matthias Kaehlcke
Date: Mon May 22 2017 - 17:14:16 EST


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.

lib/zlib_inflate/inffast.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/lib/zlib_inflate/inffast.c b/lib/zlib_inflate/inffast.c
index 2c13ecc5bb2c..af2fd95e35e9 100644
--- a/lib/zlib_inflate/inffast.c
+++ b/lib/zlib_inflate/inffast.c
@@ -26,6 +26,7 @@ union uu {
unsigned char b[2];
};

+#ifndef CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS
/* Endian independed version */
static inline unsigned short
get_unaligned16(const unsigned short *p)
@@ -37,6 +38,7 @@ get_unaligned16(const unsigned short *p)
mm.b[1] = b[1];
return mm.us;
}
+#endif

#ifdef POSTINC
# define OFF 0
--
2.13.0.303.g4ebf302169-goog