asm-generic: Fix local variable shadow in __set_fixmap_offset
authorMark Rutland <mark.rutland@arm.com>
Mon, 25 Jan 2016 11:44:55 +0000 (11:44 +0000)
committerAlex Shi <alex.shi@linaro.org>
Thu, 20 Oct 2016 08:23:45 +0000 (16:23 +0800)
commitf73e4f144708989ee1e154c76a63095b816a9749
tree7a7a3eb4c72b04ec8593139bcf0563c37a2c259a
parent4dc09da3c9e2f713474636c19acf4ada815b3504
asm-generic: Fix local variable shadow in __set_fixmap_offset

Currently __set_fixmap_offset is a macro function which has a local
variable called 'addr'. If a caller passes a 'phys' parameter which is
derived from a variable also called 'addr', the local variable will
shadow this, and the compiler will complain about the use of an
uninitialized variable. To avoid the issue with namespace clashes,
'addr' is prefixed with a liberal sprinkling of underscores.

Turning __set_fixmap_offset into a static inline breaks the build for
several architectures. Fixing this properly requires updates to a number
of architectures to make them agree on the prototype of __set_fixmap (it
could be done as a subsequent patch series).

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Cc: Arnd Bergmann <arnd@arndb.de>
[catalin.marinas@arm.com: squashed the original function patch and macro fixup]
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
(cherry picked from commit 3694bd76781b76c4f8d2ecd85018feeb1609f0e5)
Signed-off-by: Alex Shi <alex.shi@linaro.org>
include/asm-generic/fixmap.h