Re: [RFC PATCH for 4.15 v3 15/22] rseq: selftests: Provide self-tests

2017-11-24 Thread Mathieu Desnoyers
- On Nov 23, 2017, at 3:57 AM, Peter Zijlstra pet...@infradead.org wrote: > On Thu, Nov 23, 2017 at 09:55:11AM +0100, Peter Zijlstra wrote: >> On Tue, Nov 21, 2017 at 09:18:53AM -0500, Mathieu Desnoyers wrote: >> > +static inline __attribute__((always_inline)) >> > +int rseq_cmpeqv_storev(intp

Re: [RFC PATCH for 4.15 v3 15/22] rseq: selftests: Provide self-tests

2017-11-24 Thread Mathieu Desnoyers
- On Nov 23, 2017, at 3:55 AM, Peter Zijlstra pet...@infradead.org wrote: > On Tue, Nov 21, 2017 at 09:18:53AM -0500, Mathieu Desnoyers wrote: >> +int percpu_list_push(struct percpu_list *list, struct percpu_list_node >> *node) >> +{ >> +intptr_t *targetptr, newval, expect; >> +int cp

Re: [RFC PATCH for 4.15 v3 15/22] rseq: selftests: Provide self-tests

2017-11-23 Thread Mathieu Desnoyers
- On Nov 22, 2017, at 4:48 PM, Peter Zijlstra pet...@infradead.org wrote: > On Tue, Nov 21, 2017 at 09:18:53AM -0500, Mathieu Desnoyers wrote: >> diff --git a/tools/testing/selftests/rseq/rseq-x86.h >> b/tools/testing/selftests/rseq/rseq-x86.h >> new file mode 100644 >> index ..63e

Re: [RFC PATCH for 4.15 v3 15/22] rseq: selftests: Provide self-tests

2017-11-23 Thread Mathieu Desnoyers
- On Nov 22, 2017, at 2:38 PM, Peter Zijlstra pet...@infradead.org wrote: > On Tue, Nov 21, 2017 at 09:18:53AM -0500, Mathieu Desnoyers wrote: >> Implements two basic tests of RSEQ functionality, and one more >> exhaustive parameterizable test. >> >> The first, "basic_test" only asserts that

Re: [RFC PATCH for 4.15 v3 15/22] rseq: selftests: Provide self-tests

2017-11-23 Thread Peter Zijlstra
On Thu, Nov 23, 2017 at 09:55:11AM +0100, Peter Zijlstra wrote: > On Tue, Nov 21, 2017 at 09:18:53AM -0500, Mathieu Desnoyers wrote: > > +static inline __attribute__((always_inline)) > > +int rseq_cmpeqv_storev(intptr_t *v, intptr_t expect, intptr_t newv, > > + int cpu) > > +{ > > + __a

Re: [RFC PATCH for 4.15 v3 15/22] rseq: selftests: Provide self-tests

2017-11-23 Thread Peter Zijlstra
On Tue, Nov 21, 2017 at 09:18:53AM -0500, Mathieu Desnoyers wrote: > +int percpu_list_push(struct percpu_list *list, struct percpu_list_node *node) > +{ > + intptr_t *targetptr, newval, expect; > + int cpu, ret; > + > + /* Try fast path. */ > + cpu = rseq_cpu_start(); > + /* Lo

Re: [RFC PATCH for 4.15 v3 15/22] rseq: selftests: Provide self-tests

2017-11-22 Thread Peter Zijlstra
On Tue, Nov 21, 2017 at 09:18:53AM -0500, Mathieu Desnoyers wrote: > diff --git a/tools/testing/selftests/rseq/rseq-x86.h > b/tools/testing/selftests/rseq/rseq-x86.h > new file mode 100644 > index ..63e81d6c61fa > --- /dev/null > +++ b/tools/testing/selftests/rseq/rseq-x86.h > @@ -0,0

Re: [RFC PATCH for 4.15 v3 15/22] rseq: selftests: Provide self-tests

2017-11-22 Thread Peter Zijlstra
On Tue, Nov 21, 2017 at 09:18:53AM -0500, Mathieu Desnoyers wrote: > Implements two basic tests of RSEQ functionality, and one more > exhaustive parameterizable test. > > The first, "basic_test" only asserts that RSEQ works moderately > correctly. E.g. that the CPUID pointer works. > > "basic_per

Re: [RFC PATCH for 4.15 v3 15/22] rseq: selftests: Provide self-tests

2017-11-21 Thread Mathieu Desnoyers
- On Nov 21, 2017, at 4:24 PM, Shuah Khan shua...@osg.samsung.com wrote: > On 11/21/2017 02:22 PM, Mathieu Desnoyers wrote: >> - On Nov 21, 2017, at 12:40 PM, shuah sh...@kernel.org wrote: >> >>> On 11/21/2017 10:05 AM, Mathieu Desnoyers wrote: - On Nov 21, 2017, at 10:34 AM, shu

Re: [RFC PATCH for 4.15 v3 15/22] rseq: selftests: Provide self-tests

2017-11-21 Thread Shuah Khan
On 11/21/2017 02:22 PM, Mathieu Desnoyers wrote: > - On Nov 21, 2017, at 12:40 PM, shuah sh...@kernel.org wrote: > >> On 11/21/2017 10:05 AM, Mathieu Desnoyers wrote: >>> - On Nov 21, 2017, at 10:34 AM, shuah sh...@kernel.org wrote: >>> >>> [...] > --- > MAINTAINERS

Re: [RFC PATCH for 4.15 v3 15/22] rseq: selftests: Provide self-tests

2017-11-21 Thread Mathieu Desnoyers
- On Nov 21, 2017, at 12:40 PM, shuah sh...@kernel.org wrote: > On 11/21/2017 10:05 AM, Mathieu Desnoyers wrote: >> - On Nov 21, 2017, at 10:34 AM, shuah sh...@kernel.org wrote: >> >> [...] --- MAINTAINERS|1 + tools/testing/self

Re: [RFC PATCH for 4.15 v3 15/22] rseq: selftests: Provide self-tests

2017-11-21 Thread Shuah Khan
On 11/21/2017 10:05 AM, Mathieu Desnoyers wrote: > - On Nov 21, 2017, at 10:34 AM, shuah sh...@kernel.org wrote: > > [...] >>> --- >>> MAINTAINERS|1 + >>> tools/testing/selftests/Makefile |1 + >>> tools/testing/selftests/rseq

Re: [RFC PATCH for 4.15 v3 15/22] rseq: selftests: Provide self-tests

2017-11-21 Thread Mathieu Desnoyers
- On Nov 21, 2017, at 10:34 AM, shuah sh...@kernel.org wrote: [...] >> --- >> MAINTAINERS|1 + >> tools/testing/selftests/Makefile |1 + >> tools/testing/selftests/rseq/.gitignore|4 + > > Thanks for the .gitign

Re: [RFC PATCH for 4.15 v3 15/22] rseq: selftests: Provide self-tests

2017-11-21 Thread Shuah Khan
On 11/21/2017 07:18 AM, Mathieu Desnoyers wrote: > Implements two basic tests of RSEQ functionality, and one more > exhaustive parameterizable test. > > The first, "basic_test" only asserts that RSEQ works moderately > correctly. E.g. that the CPUID pointer works. > > "basic_percpu_ops_test" is a

[RFC PATCH for 4.15 v3 15/22] rseq: selftests: Provide self-tests

2017-11-21 Thread Mathieu Desnoyers
Implements two basic tests of RSEQ functionality, and one more exhaustive parameterizable test. The first, "basic_test" only asserts that RSEQ works moderately correctly. E.g. that the CPUID pointer works. "basic_percpu_ops_test" is a slightly more "realistic" variant, implementing a few simple p