On Mon, 8 Jul 2019, Linus Torvalds wrote: > On Mon, Jul 8, 2019 at 2:22 AM Thomas Gleixner <t...@linutronix.de> wrote: > > > > @@ -643,9 +644,11 @@ 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) { > > - struct perf_event *bp = thread->ptrace_bps[n]; > > + index = array_index_nospec(index, HBP_NUM); > > + struct perf_event *bp = thread->ptrace_bps[index]; > > This causes a new warning: > > warning: ISO C90 forbids mixed declarations and code > > and I'm fixing it up in the merge as follows:
Ooops. No idea how that slipped through. Sorry! > @@@ -633,9 -644,11 +634,10 @@@ static unsigned long ptrace_get_debugre > { > struct thread_struct *thread = &tsk->thread; > unsigned long val = 0; > - int index = n; > > if (n < HBP_NUM) { > - struct perf_event *bp = thread->ptrace_bps[n]; > - index = array_index_nospec(index, HBP_NUM); > ++ int index = array_index_nospec(n, HBP_NUM); > + struct perf_event *bp = thread->ptrace_bps[index]; > > if (bp) > val = bp->hw.info.address; > > Holler if I did something stupid. Obviously correct. Thanks for fixing it up. tglx