unwind: Simplify unwind_user_next_fp() alignment check

2^log_2(n) == n

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Link: https://patch.msgid.link/20250924080119.497867836@infradead.org
This commit is contained in:
Peter Zijlstra
2025-09-23 13:04:09 +02:00
parent 639214f65b
commit 5578534e4b

View File

@@ -19,7 +19,6 @@ static int unwind_user_next_fp(struct unwind_user_state *state)
{
const struct unwind_user_frame *frame = &fp_frame;
unsigned long cfa, fp, ra;
unsigned int shift;
if (frame->use_fp) {
if (state->fp < state->sp)
@@ -37,8 +36,7 @@ static int unwind_user_next_fp(struct unwind_user_state *state)
return -EINVAL;
/* Make sure that the address is word aligned */
shift = sizeof(long) == 4 ? 2 : 3;
if (cfa & ((1 << shift) - 1))
if (cfa & (sizeof(long) - 1))
return -EINVAL;
/* Find the Return Address (RA) */