Thanks, Maxim.  I sent a v4 that should correct those issues.  If it
doesn't, I'd take parts 1-7 that fix the actual bugs and I'll tweak the
enhanced test case further separately.



On Tue, Nov 10, 2015 at 1:01 AM, Maxim Uvarov <maxim.uva...@linaro.org>
wrote:

> On 11/10/2015 07:20, Bill Fischofer wrote:
>
>> Changes for v3
>> -- Resolves deadlock issue identified by Carl Wallen
>> -- Adds a "chaos" test to the scheduler CUnit suite to verify the above
>>
>> Changes for v2
>> -- Remove unused routine get_sched_sync() as part of part 1 of of this
>> series
>>
>> This series cleans up the implementation of ordered queues and fixes
>> Bug https://bugs.linaro.org/show_bug.cgi?id=1879
>>
>>
>> Bill Fischofer (8):
>>    linux-generic: schedule: move ordered lock routines to odp_schedule.c
>>    linux-generic: queue: add utility functions for restructure
>>    linux-generic: queue: add ordered_queue_enq() routine - part 1
>>    linux-generic: queue: add ordered_queue_enq() routine - part 2
>>    linux-generic: queue: streamline reorder_deq() routine
>>    linux-generic: queue: streamline and correct release_order() routine
>>    linux-generic: schedule: allow order to be ignored for internal use
>>    validation: schedule: add chaos test
>>
>>   .../linux-generic/include/odp_queue_internal.h     |  67 ++++-
>>   .../linux-generic/include/odp_schedule_internal.h  |   8 +-
>>   platform/linux-generic/odp_queue.c                 | 322
>> +++++++++++----------
>>   platform/linux-generic/odp_schedule.c              |  62 +++-
>>   test/validation/scheduler/scheduler.c              | 192 ++++++++++++
>>   test/validation/scheduler/scheduler.h              |   1 +
>>   6 files changed, 472 insertions(+), 180 deletions(-)
>>
>>
> void *odp_queue_context(odp_queue_t handle)
> {
>     queue_entry_t *queue;
>     queue = queue_to_qentry(handle);
>     return queue->s.param.context;
> }
>
> chaos_q[(uint64_t)odp_queue_context(from)].name
>
> then:
>
> +       int i, rc;
>
>
> +               rc = odp_queue_context_set(globals->chaos_q[i].handle,
> +                                          (void *)(uint64_t)i);
>
> Which might fail on 32 bits.
> I'm ok to merge first 7 patches (i.e. patches without test case).
>
> errors:
>
> scheduler.c:428:19: error: cast from pointer to integer of different size
> [-Werror=pointer-to-int-cast]
>            chaos_q[(uint64_t)odp_queue_context(from)].name,
>                    ^
> scheduler.c:430:11: error: format '%lu' expects argument of type 'long
> unsigned int', but argument 3 has type 'uint64_t' [-Werror=format=]
>            chaos_q[cbuf->seqno % CHAOS_NUM_QUEUES].name);
>            ^
> scheduler.c:430:11: error: format '%lu' expects argument of type 'long
> unsigned int', but argument 4 has type 'uint64_t' [-Werror=format=]
> scheduler.c:457:19: error: cast from pointer to integer of different size
> [-Werror=pointer-to-int-cast]
>            chaos_q[(uint64_t)odp_queue_context(from)].name);
>                    ^
> scheduler.c:457:11: error: format '%lu' expects argument of type 'long
> unsigned int', but argument 3 has type 'uint64_t' [-Werror=format=]
>            chaos_q[(uint64_t)odp_queue_context(from)].name);
>            ^
> scheduler.c:457:11: error: format '%lu' expects argument of type 'long
> unsigned int', but argument 4 has type 'uint64_t' [-Werror=format=]
> scheduler.c: In function 'scheduler_test_chaos':
> scheduler.c:521:9: error: cast to pointer from integer of different size
> [-Werror=int-to-pointer-cast]
>          (void *)(uint64_t)i);
>          ^
> scheduler.c:557:19: error: cast from pointer to integer of different size
> [-Werror=pointer-to-int-cast]
>            chaos_q[(uint64_t)odp_queue_context(from)].name);
>                    ^
> scheduler.c:557:11: error: format '%lu' expects argument of type 'long
> unsigned int', but argument 2 has type 'uint64_t' [-Werror=format=]
>            chaos_q[(uint64_t)odp_queue_context(from)].name);
>            ^
> scheduler.c:557:11: error: format '%lu' expects argument of type 'long
> unsigned int', but argument 3 has type 'uint64_t' [-Werror=format=]
>
>
> _______________________________________________
> lng-odp mailing list
> lng-odp@lists.linaro.org
> https://lists.linaro.org/mailman/listinfo/lng-odp
>
_______________________________________________
lng-odp mailing list
lng-odp@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/lng-odp

Reply via email to