arm64: memory: Add missing brackets to untagged_addr() macro
Add brackets around the evaluation of the 'addr' parameter to the
untagged_addr() macro so that the cast to 'u64' applies to the result
of the expression.
Cc: <stable@vger.kernel.org>
Fixes: 597399d0cb
("arm64: tags: Preserve tags for addresses translated via TTBR1")
Reported-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Will Deacon <will@kernel.org>
This commit is contained in:
parent
dd1f6308b2
commit
d0022c0ef2
|
@ -213,7 +213,7 @@ static inline unsigned long kaslr_offset(void)
|
||||||
((__force __typeof__(addr))sign_extend64((__force u64)(addr), 55))
|
((__force __typeof__(addr))sign_extend64((__force u64)(addr), 55))
|
||||||
|
|
||||||
#define untagged_addr(addr) ({ \
|
#define untagged_addr(addr) ({ \
|
||||||
u64 __addr = (__force u64)addr; \
|
u64 __addr = (__force u64)(addr); \
|
||||||
__addr &= __untagged_addr(__addr); \
|
__addr &= __untagged_addr(__addr); \
|
||||||
(__force __typeof__(addr))__addr; \
|
(__force __typeof__(addr))__addr; \
|
||||||
})
|
})
|
||||||
|
|
Loading…
Reference in New Issue