Uploaded image for project: 'csit'
  1. csit
  2. CSIT-1023

Look to extend crypto VPP func tests to support ARM64

XMLWordPrintable

    • Icon: Improvement Improvement
    • Resolution: Unresolved
    • Icon: Medium Medium
    • bulk release
    • None

      The current VPP functional tests from crypto/sw_device are based on dpdk Intel specific crypto drivers (aesni_gcm/mb).
      https://docs.fd.io/csit/master/doc/tests.vpp.func.crypto.sw_device.html?highlight=eth2p%20ethip4ipsectnlsw%20ip4base%20func

      Investigate how this can be extended to use the dpdk armv8 crypto driver.
      https://dpdk.org/doc/guides/cryptodevs/armv8.html

      This is how the VPP startup.conf is configured by CSIT sw_device tests:
      [Command_start_exec] 'cat /etc/vpp/startup.conf'
      [Command_outputs] unix
      {
      cli-listen /run/vpp/cli.sock
      gid vpp
      nodaemon
      full-coredump
      log /tmp/vpp.log
      }
      api-segment
      {
      gid vpp
      }
      dpdk
      {
      vdev cryptodev_aesni_gcm_pmd,socket_id=0
      vdev cryptodev_aesni_mb_pmd,socket_id=0
      }

      The vpp process exits by error because the crypto devices are unknown:
      [root@fedora27-dut-2 build]# vpp -c /etc/vpp/startup.conf
      vlib_plugin_early_init:356: plugin path /usr/lib/vpp_plugins
      load_one_plugin:184: Loaded plugin: acl_plugin.so (Access Control Lists)
      load_one_plugin:184: Loaded plugin: dpdk_plugin.so (Data Plane Development Kit (DPDK))
      load_one_plugin:184: Loaded plugin: flowprobe_plugin.so (Flow per Packet)
      load_one_plugin:184: Loaded plugin: gtpu_plugin.so (GTPv1-U)
      load_one_plugin:184: Loaded plugin: ila_plugin.so (Identifier-locator addressing for IPv6)
      load_one_plugin:184: Loaded plugin: ioam_plugin.so (Inbound OAM)
      load_one_plugin:83: Not a plugin: ixge_plugin.so
      load_one_plugin:184: Loaded plugin: lb_plugin.so (Load Balancer)
      load_one_plugin:184: Loaded plugin: libsixrd_plugin.so (IPv6 Rapid Deployment on IPv4 Infrastructure (RFC5969))
      load_one_plugin:184: Loaded plugin: memif_plugin.so (Packet Memory Interface (experimetal))
      load_one_plugin:184: Loaded plugin: nat_plugin.so (Network Address Translation)
      load_one_plugin:184: Loaded plugin: pppoe_plugin.so (PPPoE)
      load_one_plugin:184: Loaded plugin: stn_plugin.so (VPP Steals the NIC for Container integration)
      vpp[7771]: load_one_plugin:63: Loaded plugin: /usr/lib/vpp_api_test_plugins/acl_test_plugin.so
      vpp[7771]: load_one_plugin:63: Loaded plugin: /usr/lib/vpp_api_test_plugins/dpdk_test_plugin.so
      vpp[7771]: load_one_plugin:63: Loaded plugin: /usr/lib/vpp_api_test_plugins/flowprobe_test_plugin.so
      vpp[7771]: load_one_plugin:63: Loaded plugin: /usr/lib/vpp_api_test_plugins/gtpu_test_plugin.so
      vpp[7771]: load_one_plugin:63: Loaded plugin: /usr/lib/vpp_api_test_plugins/ioam_export_test_plugin.so
      vpp[7771]: load_one_plugin:63: Loaded plugin: /usr/lib/vpp_api_test_plugins/ioam_pot_test_plugin.so
      vpp[7771]: load_one_plugin:63: Loaded plugin: /usr/lib/vpp_api_test_plugins/ioam_trace_test_plugin.so
      vpp[7771]: load_one_plugin:63: Loaded plugin: /usr/lib/vpp_api_test_plugins/ioam_vxlan_gpe_test_plugin.so
      vpp[7771]: load_one_plugin:63: Loaded plugin: /usr/lib/vpp_api_test_plugins/lb_test_plugin.so
      vpp[7771]: load_one_plugin:63: Loaded plugin: /usr/lib/vpp_api_test_plugins/memif_test_plugin.so
      vpp[7771]: load_one_plugin:63: Loaded plugin: /usr/lib/vpp_api_test_plugins/nat_test_plugin.so
      vpp[7771]: load_one_plugin:63: Loaded plugin: /usr/lib/vpp_api_test_plugins/pppoe_test_plugin.so
      vpp[7771]: load_one_plugin:63: Loaded plugin: /usr/lib/vpp_api_test_plugins/udp_ping_test_plugin.so
      vpp[7771]: load_one_plugin:63: Loaded plugin: /usr/lib/vpp_api_test_plugins/vxlan_gpe_ioam_export_test_plugin.so
      vpp[7771]: vlib_pci_bind_to_uio: Skipping PCI device 0000:01:00.0 as host interface enp1s0 is up
      vpp[7771]: dpdk_config:1224: EAL init args: -c 1 -n 4 --vdev cryptodev_aesni_gcm_pmd,socket_id=0 --vdev cryptodev_aesni_mb_pmd,socket_id=0 --huge-dir /run/vpp/hugepages --file-prefix vpp -b 0000:01:00.0 --master-lcore 0 --socket-mem 64
      ERROR: failed to parse device "cryptodev_aesni_gcm_pmd"
      EAL: Unable to parse device 'cryptodev_aesni_gcm_pmd,socket_id=0'
      vpp[7771]: dpdk_config: rte_eal_init returned -1

            juraj.linkes Juraj Linkeš
            banulucian Lucian Banu
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: