CSIT/AArch64
From fd.io
Contents
CSIT TOI
Based on CSIT committers availability, current proposal is to hold two separate 1hr sessions:
TOI-1: Fri 02-Feb 07:00-08:00 PST / 15:00-16:00 UTC / 16:00-17:00 CET TOI-2: Tue 06-Feb 07:00-08:00 PST / 15:00-16:00 UTC / 16:00-17:00 CET
Proposed agenda:
TOI-1
1. CSIT overview, goals, releases, high-level design - Maciek - 10min 2. CSIT libraries, L1/L2 KWs, sample test suites - Tibor - 20min 3. Performance tests - PeterM - 20min 4. Q&A - 10min
TOI-2
1. VIRL functional tests - JanG - 20min 2. Physical testbeds - PeterM - 10min 3. VIRL testbeds - EdK - 10min 4. Q&A - 20min
Recent Patches
add new topology parameter: arch | Merged 2018-01-10 | https://gerrit.fd.io/r/#/c/9474/ |
update nodes dependency | Merged 2018-01-02 | https://gerrit.fd.io/r/#/c/9584/ |
update vagrant to use ubuntu 16.04 images | https://gerrit.fd.io/r/#/c/8295/ | |
warn against virtualenv --system-site-packages | Merged 2017-12-20 | https://gerrit.fd.io/r/#/c/9428/ |
TEST for 2-nodes topology
(gg) based on my tests, in order to reproduce issues more easily across the team.
- set up 2 aarch64 VMs (TG + DUT)
- give them 3 interfaces
- one for management, the other two down for the test
- compile igb_uio (see known issue #1) and load it
- write topology file with `arch: aarch64`
- fill pci_address, and mac_address according to your setup
- create virtualenv following csit README
- virtualenv env
- source env/bin/activate
- pip install -r requirements.txt
- export PATH with vpp_api_test, and PYTHONPATH
cmdline to run functional tests only with debug logs. You need the "__init__.robot" present in the folder you give to pybot.
pybot --debugfile /tmp/debugfile --exitonerror -L TRACE -v TOPOLOGY_PATH:topologies/enabled/topology.yaml tests/vpp/func/
Functional test
Tests status:
- CSIT: 54ad6efd342695d0a7dad5380cc989a8d846f518
- 3-Nodes topology
- On VM only
- honeycomb disabled
- vm_host disabled
No guarantee that the tests are failing because of arm or a bad setup of mine.
# path_to_testfile:PASS/FAIL interfaces_api-crud-tap-func.out:1/0 interfaces_eth2p-eth-l2bdbasemaclrn-eth-2tap-func.out:1/0 ip4_eth2p-dot1q-ip4base-func.out:3/0/3 ip4_eth2p-ethip4-ip4base-ip4proxyarp-func.out:2/1 ip4_eth2p-ethip4-ip4base-ipolicemarkbase-func.out:3/1 ip4_eth2p-ethip4-ip4base-rpf-func.out:1/7 ip4_eth2p-ethip4-ip4basevrf-func.out:3/5 ip4_tunnels_gre_eth2p-ethip4gre-ip4base-func.out:1/0 ip4_tunnels_lisp_api-crud-lisp-func.out:5/0 ip4_tunnels_softwire_eth2p-ethip4--ethip6ip4-ip4base--ip6base-swirelw46-func.out:4/0 ip4_tunnels_softwire_eth2p-ethip4--ethip6ip4-ip4base--ip6base-swiremape-func.out:8/1 ip4_tunnels_softwire_eth2p-ethip4--ethip6ip4-ip4base--ip6base-swiremapt-func.out:1/0 ip4_tunnels_vxlan_eth2p-dot1qip4vxlan-l2bdbasemaclrn-func.out:1/0 ip4_tunnels_vxlan_eth2p-ethip4vxlan-l2bdbasemaclrn-func.out:1/0 ip4_tunnels_vxlan_eth2p-ethip4vxlan-l2xcbase-func.out:1/0 ip6_eth2p-ethip6-ip6base-func.out:4/3 ip6_eth2p-ethip6-ip6base-ip6ra-func.out:1/3 ip6_eth2p-ethip6-ip6base-ipolicemarkbase-func.out:4/0 ip6_eth2p-ethip6-ip6basevrf-func.out:5/5 ip6_tunnels_lisp_eth2p-ethip6lispgpe-ip6base-func.out:1/0 ip6_tunnels_lisp_eth2p-ethip6lispgpe-ip6basevrf-func.out:1/0 l2bd_eth2p-dot1q--dot1ad-l2bdbasemaclrn-vlantrans12-func.out:1/7 l2bd_eth2p-dot1q-l2bdbasemaclrn-vlantrans11-func.out:2/2 l2bd_eth2p-eth-l2bdbasemaclrn-func.out:3/0 l2bd_eth2p-eth-l2bdbasemacstc-func.out:1/0 l2xc_eth2p-dot1ad-l2xcbase-func.out:1/0 l2xc_eth2p-dot1q--dot1ad-l2xcbase-vlantrans12-func.out:2/6 l2xc_eth2p-eth-l2xcbase-func.out:2/0 telemetry_eth2p-ethip4-ip4base-spanrx-func.out:2/0 telemetry_eth2p-ethip6-ip6base-spanrx-func.out:1/0
TODO
- identify ARM64 hardware to replicate CSIT repo
- make Jira EPIC for CSIT func
- make Jira EPIC for CSIT performance
- disk-image-builder scripts
- write a bootstrap-* script for aarch64
- add VPP_REPO_URL* VPP_STABLE_VER* files ... (could be any public server for now)
known issues
- dpdk does not compiles igb_uio on aarch64 (it seems to require a kernel patch introduced in kernel 4.12: f719582435afe9c7985206e42d804ea6aa315d33). it has been re-enabled in dpdk v17.11 (f1810113590373b157ebba555d6b51f38c8ca10f)