diff --git a/arch/x86/kernel/ptrace.c b/arch/x86/kernel/ptrace.c index aeba77881d85476a2aa9a71306c757b3eb014fe1..516ec7586a5fbd9ce820b93f5d66a0816ab6d449 100644 --- a/arch/x86/kernel/ptrace.c +++ b/arch/x86/kernel/ptrace.c @@ -652,11 +652,10 @@ static unsigned long ptrace_get_debugreg(struct task_struct *tsk, int n) { struct thread_struct *thread = &tsk->thread; unsigned long val = 0; - int index = n; if (n < HBP_NUM) { + int index = array_index_nospec(n, HBP_NUM); struct perf_event *bp = thread->ptrace_bps[index]; - index = array_index_nospec(index, HBP_NUM); if (bp) val = bp->hw.info.address;