On Fri, Nov 11, 2016 at 4:38 AM, Savolainen, Petri (Nokia - FI/Espoo) <
[email protected]> wrote:
> What failed exactly ?
>
>
>
> I think order queue implementation has some bugs that are not caused by
> these changes but may surface those. I did see one time order queue test to
> fail, but most of the time all test pass. These modifications did not
> change how scheduler works. Also the patch 5 was not modified for v3 and I
> think you did run the test successfully on v2 already.
>
>
>
> -Petri
>
That may be true. Here's the detail reported:
FAIL: ../../test/common_plat/validation/api/scheduler/scheduler_main
====================================================================
PKTIO: initialized loop interface.
PKTIO: initialized pcap interface.
PKTIO: initialized socket mmap, use export ODP_PKTIO_DISABLE_SOCKET_MMAP=1
to disable.
PKTIO: initialized socket mmsg,use export ODP_PKTIO_DISABLE_SOCKET_MMSG=1
to disable.
ODP API version: 1.11.0
ODP implementation name: odp-linux
ODP implementation version: odp-linux 1.11.0-0 (v1.11.0) 1.11.0.0
CUnit - A unit testing framework for C - Version 2.1-3
http://cunit.sourceforge.net/
Suite: Scheduler
Test: scheduler_test_wait_time ...1..2..3..4..5..passed
Test: scheduler_test_num_prio ...passed
Test: scheduler_test_queue_destroy ...passed
Test: scheduler_test_groups ...passed
Test: scheduler_test_pause_resume ...passed
Test: scheduler_test_parallel
...linux.c:273:odpthread_run_start_routine():helper: ODP worker thread
started as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
Thread 3 ends, elapsed time = 192us
Thread 1 ends, elapsed time = 185us
Thread 2 ends, elapsed time = 195us
Thread 4 ends, elapsed time = 203us
passed
Test: scheduler_test_atomic
...linux.c:273:odpthread_run_start_routine():helper: ODP worker thread
started as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
Thread 1 ends, elapsed time = 189us
Thread 4 ends, elapsed time = 191us
Thread 2 ends, elapsed time = 196us
Thread 3 ends, elapsed time = 198us
passed
Test: scheduler_test_ordered
...linux.c:273:odpthread_run_start_routine():helper: ODP worker thread
started as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
Thread 1 ends, elapsed time = 476us
Thread 2 ends, elapsed time = 502us
Thread 4 ends, elapsed time = 523us
Thread 3 ends, elapsed time = 548us
passed
Test: scheduler_test_chaos
...linux.c:273:odpthread_run_start_routine():helper: ODP worker thread
started as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
Thread 1 ends, elapsed time = 277us
Thread 2 ends, elapsed time = 364us
Thread 3 ends, elapsed time = 403us
Thread 4 ends, elapsed time = 444us
passed
Test: scheduler_test_1q_1t_n ...passed
Test: scheduler_test_1q_1t_a ...passed
Test: scheduler_test_1q_1t_o ...passed
Test: scheduler_test_mq_1t_n ...passed
Test: scheduler_test_mq_1t_a ...passed
Test: scheduler_test_mq_1t_o ...passed
Test: scheduler_test_mq_1t_prio_n ...passed
Test: scheduler_test_mq_1t_prio_a ...passed
Test: scheduler_test_mq_1t_prio_o ...passed
Test: scheduler_test_mq_mt_prio_n
...linux.c:273:odpthread_run_start_routine():helper: ODP worker thread
started as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
passed
Test: scheduler_test_mq_mt_prio_a
...linux.c:273:odpthread_run_start_routine():helper: ODP worker thread
started as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
passed
Test: scheduler_test_mq_mt_prio_o
...linux.c:273:odpthread_run_start_routine():helper: ODP worker thread
started as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
FAILED
1. scheduler.c:871 - bctx->sequence == seq
2. scheduler.c:871 - bctx->sequence == seq
Test: scheduler_test_1q_mt_a_excl
...linux.c:273:odpthread_run_start_routine():helper: ODP worker thread
started as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
passed
Test: scheduler_test_multi_1q_1t_n ...passed
Test: scheduler_test_multi_1q_1t_a ...passed
Test: scheduler_test_multi_1q_1t_o ...passed
Test: scheduler_test_multi_mq_1t_n ...passed
Test: scheduler_test_multi_mq_1t_a ...passed
Test: scheduler_test_multi_mq_1t_o ...passed
Test: scheduler_test_multi_mq_1t_prio_n ...passed
Test: scheduler_test_multi_mq_1t_prio_a ...passed
Test: scheduler_test_multi_mq_1t_prio_o ...passed
Test: scheduler_test_multi_mq_mt_prio_n
...linux.c:273:odpthread_run_start_routine():helper: ODP worker thread
started as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
passed
Test: scheduler_test_multi_mq_mt_prio_a
...linux.c:273:odpthread_run_start_routine():helper: ODP worker thread
started as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
passed
Test: scheduler_test_multi_mq_mt_prio_o
...linux.c:273:odpthread_run_start_routine():helper: ODP worker thread
started as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
FAILED
1. scheduler.c:871 - bctx->sequence == seq
2. scheduler.c:871 - bctx->sequence == seq
3. scheduler.c:871 - bctx->sequence == seq
4. scheduler.c:871 - bctx->sequence == seq
5. scheduler.c:871 - bctx->sequence == seq
6. scheduler.c:871 - bctx->sequence == seq
7. scheduler.c:871 - bctx->sequence == seq
8. scheduler.c:871 - bctx->sequence == seq
9. scheduler.c:871 - bctx->sequence == seq
10. scheduler.c:871 - bctx->sequence == seq
11. scheduler.c:871 - bctx->sequence == seq
12. scheduler.c:871 - bctx->sequence == seq
13. scheduler.c:871 - bctx->sequence == seq
Test: scheduler_test_multi_1q_mt_a_excl
...linux.c:273:odpthread_run_start_routine():helper: ODP worker thread
started as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
linux.c:273:odpthread_run_start_routine():helper: ODP worker thread started
as linux pthread. (pid=10162)
passed
Run Summary: Type Total Ran Passed Failed Inactive
suites 1 1 n/a 0 0
tests 35 35 33 2 0
asserts 2948283 2948283 2948268 15 n/a
Elapsed time = 8.881 seconds
FAIL ../../test/common_plat/validation/api/scheduler/scheduler_main (exit
status: 255)
----
So yes, this does look like an occasional issue we've seen before.
Continuing review and will post more once that's complete.
>
>
>
>
> *From:* Bill Fischofer [mailto:[email protected]]
> *Sent:* Thursday, November 10, 2016 4:28 PM
> *To:* Savolainen, Petri (Nokia - FI/Espoo) <petri.savolainen@nokia-bell-
> labs.com>
> *Cc:* lng-odp-forward <[email protected]>
> *Subject:* Re: [lng-odp] [API-NEXT PATCH v3 05/19] linux-gen: pool:
> reimplement pool with ring
>
>
>
> This series fails bisectability with this patch:
>
>
>
> Using patch: 0005-linux-gen-pool-reimplement-pool-with-ring.patch
>
> Trying to apply patch
>
> Patch applied
>
> Building with patch
>
> PASS: odp_crypto
>
> PASS: odp_pktio_perf
>
> SKIP: odp_l2fwd_run.sh
>
> PASS: odp_sched_latency_run.sh
>
> PASS: odp_scheduling_run.sh
>
> ============================================================
> ================
>
> Testsuite summary for OpenDataPlane 1.11.0.0
>
> ============================================================
> ================
>
> # TOTAL: 5
>
> # PASS: 4
>
> # SKIP: 1
>
> # XFAIL: 0
>
> # FAIL: 0
>
> # XPASS: 0
>
> # ERROR: 0
>
> ============================================================
> ================
>
> ============================================================
> ================
>
> Testsuite summary for OpenDataPlane 1.11.0.0
>
> ============================================================
> ================
>
> # TOTAL: 0
>
> # PASS: 0
>
> # SKIP: 0
>
> # XFAIL: 0
>
> # FAIL: 0
>
> # XPASS: 0
>
> # ERROR: 0
>
> ============================================================
> ================
>
> PASS: odp_scheduling_run_proc.sh
>
> ============================================================
> ================
>
> Testsuite summary for OpenDataPlane 1.11.0.0
>
> ============================================================
> ================
>
> # TOTAL: 1
>
> # PASS: 1
>
> # SKIP: 0
>
> # XFAIL: 0
>
> # FAIL: 0
>
> # XPASS: 0
>
> # ERROR: 0
>
> ============================================================
> ================
>
> PASS: validation/api/pktio/pktio_run.sh
>
> SKIP: validation/api/pktio/pktio_run_tap.sh
>
> PASS: validation/api/shmem/shmem_linux
>
> PASS: ../../test/common_plat/validation/api/atomic/atomic_main
>
> PASS: ../../test/common_plat/validation/api/barrier/barrier_main
>
> PASS: ../../test/common_plat/validation/api/buffer/buffer_main
>
> PASS: ../../test/common_plat/validation/api/classification/
> classification_main
>
> PASS: ../../test/common_plat/validation/api/cpumask/cpumask_main
>
> PASS: ../../test/common_plat/validation/api/crypto/crypto_main
>
> PASS: ../../test/common_plat/validation/api/errno/errno_main
>
> PASS: ../../test/common_plat/validation/api/hash/hash_main
>
> PASS: ../../test/common_plat/validation/api/init/init_main_ok
>
> PASS: ../../test/common_plat/validation/api/init/init_main_abort
>
> PASS: ../../test/common_plat/validation/api/init/init_main_log
>
> PASS: ../../test/common_plat/validation/api/lock/lock_main
>
> PASS: ../../test/common_plat/validation/api/packet/packet_main
>
> PASS: ../../test/common_plat/validation/api/pool/pool_main
>
> PASS: ../../test/common_plat/validation/api/queue/queue_main
>
> PASS: ../../test/common_plat/validation/api/random/random_main
>
> FAIL: ../../test/common_plat/validation/api/scheduler/scheduler_main
>
> PASS: ../../test/common_plat/validation/api/std_clib/std_clib_main
>
> PASS: ../../test/common_plat/validation/api/thread/thread_main
>
> PASS: ../../test/common_plat/validation/api/time/time_main
>
> PASS: ../../test/common_plat/validation/api/timer/timer_main
>
> PASS: ../../test/common_plat/validation/api/traffic_mngr/traffic_mngr_main
>
> PASS: ../../test/common_plat/validation/api/shmem/shmem_main
>
> PASS: ../../test/common_plat/validation/api/system/system_main
>
> PASS: ../../test/common_plat/validation/drv/drvatomic/drvatomic_main
>
> PASS: ../../test/common_plat/validation/drv/drvshmem/drvshmem_main
>
> PASS: ring/ring_main
>
> PASS: validation/api/pktio/pktio_run_pcap.sh
>
> SKIP: mmap_vlan_ins/mmap_vlan_ins.sh
>
> ============================================================
> ================
>
> Testsuite summary for OpenDataPlane 1.11.0.0
>
> ============================================================
> ================
>
> # TOTAL: 32
>
> # PASS: 29
>
> # SKIP: 2
>
> # XFAIL: 0
>
> # FAIL: 1
>
> # XPASS: 0
>
> # ERROR: 0
>
> ============================================================
> ================
>
> See test/linux-generic/test-suite.log
>
> Please report to [email protected]
>
> ============================================================
> ================
>