On Tue, Apr 13, 2021 at 4:29 PM Mathieu Desnoyers <mathieu.desnoy...@efficios.com> wrote: > > ----- On Apr 13, 2021, at 3:36 AM, Eric Dumazet eric.duma...@gmail.com wrote: > > > From: Eric Dumazet <eduma...@google.com> > > > > Two put_user() in rseq_update_cpu_id() are replaced > > by a pair of unsafe_put_user() with appropriate surroundings. > > > > This removes one stac/clac pair on x86 in fast path. > > > > Signed-off-by: Eric Dumazet <eduma...@google.com> > > Cc: Mathieu Desnoyers <mathieu.desnoy...@efficios.com> > > Cc: Peter Zijlstra <pet...@infradead.org> > > Cc: "Paul E. McKenney" <paul...@kernel.org> > > Cc: Boqun Feng <boqun.f...@gmail.com> > > Cc: Arjun Roy <arjun...@google.com> > > Cc: Ingo Molnar <mi...@kernel.org> > > --- > > kernel/rseq.c | 15 +++++++++++---- > > 1 file changed, 11 insertions(+), 4 deletions(-) > > > > diff --git a/kernel/rseq.c b/kernel/rseq.c > > index > > a4f86a9d6937cdfa2f13d1dcc9be863c1943d06f..d2689ccbb132c0fc8ec0924008771e5ee1ca855e > > 100644 > > --- a/kernel/rseq.c > > +++ b/kernel/rseq.c > > @@ -84,13 +84,20 @@ > > static int rseq_update_cpu_id(struct task_struct *t) > > { > > u32 cpu_id = raw_smp_processor_id(); > > + struct rseq *r = t->rseq; > > AFAIU the variable above should be a struct rseq __user *. > > Elsewhere in the file we use "rseq" rather than "r" for struct rseq __user * > variable name, it would be better to keep the naming consistent across the > file > if possible.
Absolutely, thanks for the feedback.