On Fri, Jul 6, 2018 at 12:38 PM Mathieu Desnoyers <mathieu.desnoy...@efficios.com> wrote: > > Should I change all 4 bytes __get_user()/__put_user() in kernel/rseq.c > for get_user()/put_user() to ensure consistency ?
Probably. *If* this actually turns out to be somethinig that shows up on profiles, it's almost certainly going to be the STAC/CLAC instructions ("perf report" tends to report them as three one-byte nop's because that's how they look before instruction replacement). And then it's not __get/put_user() that will improve things, but doing a user_access_begin(); .. do unsafe_get/put_user() .. user_access_end(); that will improve performance. But it is *very* seldom useful. We have it in a handful of places in the kernel, and the most noticeable one is lib/{strnlen,strncpy_from}_user.c Linus