Messages in this thread Patch in this message | ![/](/images/icornerl.gif) | | Date | Thu, 28 Jul 2016 03:07:51 +0000 (UTC) | From | Mathieu Desnoyers <> | Subject | Re: [RFC 1/4] rseq/param_test: Convert test_data_entry::count to intptr_t |
| |
----- On Jul 27, 2016, at 11:05 AM, Boqun Feng boqun.feng@gmail.com wrote:
> The current semantics of do_resq() is to do a intptr_t type store in > successful cases, however, in test_percpu_{inc,spinlock}, we use > test_data_entry::count as the location to store, whose type is int. > > intptr_t and int have different size on LP64 systems, and despite the > inconsistency of types, having test_data_entry::count as int needs more > care on endian handling. > > To make things simpler and more consistent, convert > test_data_entry::count to type intptr_t, which also makes the coming > tests for ppc64le and ppc64 share the same code.
Folded into my rseq tests patch for next round, thanks!
I also took care of basic_percpu_ops_test.c which had the same issue.
Thanks!
Mathieu
> > Signed-off-by: Boqun Feng <boqun.feng@gmail.com> > --- > tools/testing/selftests/rseq/param_test.c | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) > > diff --git a/tools/testing/selftests/rseq/param_test.c > b/tools/testing/selftests/rseq/param_test.c > index f95fba5a1b2a..db25e0a818e5 100644 > --- a/tools/testing/selftests/rseq/param_test.c > +++ b/tools/testing/selftests/rseq/param_test.c > @@ -124,7 +124,7 @@ struct percpu_lock { > }; > > struct test_data_entry { > - int count; > + intptr_t count; > } __attribute__((aligned(128))); > > struct spinlock_test_data { > @@ -234,7 +234,8 @@ void *test_percpu_spinlock_thread(void *arg) > void test_percpu_spinlock(void) > { > const int num_threads = opt_threads; > - int i, sum, ret; > + int i, ret; > + intptr_t sum; > pthread_t test_threads[num_threads]; > struct spinlock_test_data data; > struct spinlock_thread_test_data thread_data[num_threads]; > @@ -308,7 +309,8 @@ void *test_percpu_inc_thread(void *arg) > void test_percpu_inc(void) > { > const int num_threads = opt_threads; > - int i, sum, ret; > + int i, ret; > + intptr_t sum; > pthread_t test_threads[num_threads]; > struct inc_test_data data; > struct inc_thread_test_data thread_data[num_threads]; > -- > 2.9.0
-- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com
| ![\](/images/icornerr.gif) |