diff -pruN 8.8.1-1/build/build_git_rpm_deb_mellanox_internal.sh 8.8.1.really.8.7.7-1/build/build_git_rpm_deb_mellanox_internal.sh
--- 8.8.1-1/build/build_git_rpm_deb_mellanox_internal.sh	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/build/build_git_rpm_deb_mellanox_internal.sh	2019-01-30 12:11:38.000000000 +0000
@@ -1,6 +1,6 @@
 #!/bin/bash
 
-# Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+# Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
 #
 # This software is available to you under a choice of one of two
 # licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/config/m4/func.m4 8.8.1.really.8.7.7-1/config/m4/func.m4
--- 8.8.1-1/config/m4/func.m4	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/config/m4/func.m4	2019-01-30 12:11:38.000000000 +0000
@@ -1,6 +1,6 @@
 # func.m4 - Collection of functions
 # 
-# Copyright (C) Mellanox Technologies Ltd. 2001-2018.  ALL RIGHTS RESERVED.
+# Copyright (C) Mellanox Technologies Ltd. 2001-2019.  ALL RIGHTS RESERVED.
 # See file LICENSE for terms.
 #
 
diff -pruN 8.8.1-1/config/m4/nl.m4 8.8.1.really.8.7.7-1/config/m4/nl.m4
--- 8.8.1-1/config/m4/nl.m4	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/config/m4/nl.m4	2019-01-30 12:11:38.000000000 +0000
@@ -1,6 +1,6 @@
 # nl.m4 - Detect nl package
 #
-# Copyright (C) Mellanox Technologies Ltd. 2001-2018.  ALL RIGHTS RESERVED.
+# Copyright (C) Mellanox Technologies Ltd. 2001-2019.  ALL RIGHTS RESERVED.
 # See file LICENSE for terms.
 #
 
diff -pruN 8.8.1-1/config/m4/opt.m4 8.8.1.really.8.7.7-1/config/m4/opt.m4
--- 8.8.1-1/config/m4/opt.m4	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/config/m4/opt.m4	2019-01-30 12:11:38.000000000 +0000
@@ -1,6 +1,6 @@
 # opt.m4 - Macros to control optimization
 # 
-# Copyright (C) Mellanox Technologies Ltd. 2001-2018.  ALL RIGHTS RESERVED.
+# Copyright (C) Mellanox Technologies Ltd. 2001-2019.  ALL RIGHTS RESERVED.
 # See file LICENSE for terms.
 #
 
diff -pruN 8.8.1-1/config/m4/prof.m4 8.8.1.really.8.7.7-1/config/m4/prof.m4
--- 8.8.1-1/config/m4/prof.m4	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/config/m4/prof.m4	2019-01-30 12:11:38.000000000 +0000
@@ -1,6 +1,6 @@
 # prof.m4 - Profiling, instrumentation
 # 
-# Copyright (C) Mellanox Technologies Ltd. 2001-2018.  ALL RIGHTS RESERVED.
+# Copyright (C) Mellanox Technologies Ltd. 2001-2019.  ALL RIGHTS RESERVED.
 # See file LICENSE for terms.
 #
 
diff -pruN 8.8.1-1/config/m4/verbs.m4 8.8.1.really.8.7.7-1/config/m4/verbs.m4
--- 8.8.1-1/config/m4/verbs.m4	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/config/m4/verbs.m4	2019-01-30 12:11:38.000000000 +0000
@@ -1,6 +1,6 @@
 # verbs.m4 - Parsing verbs capabilities
 #
-# Copyright (C) Mellanox Technologies Ltd. 2001-2018.  ALL RIGHTS RESERVED.
+# Copyright (C) Mellanox Technologies Ltd. 2001-2019.  ALL RIGHTS RESERVED.
 # See file LICENSE for terms.
 #
 
@@ -133,6 +133,7 @@ CHECK_VERBS_ATTRIBUTE([IBV_SEND_IP_CSUM]
 CHECK_VERBS_ATTRIBUTE([IBV_FLOW_SPEC_ACTION_TAG], [infiniband/verbs.h], [IBV_FLOW_TAG])
 CHECK_VERBS_ATTRIBUTE([IBV_WC_EX_WITH_COMPLETION_TIMESTAMP], [infiniband/verbs.h], [IBV_CQ_TIMESTAMP])
 CHECK_VERBS_MEMBER([struct ibv_device_attr_ex.orig_attr], [infiniband/verbs.h], [IBV_DEVICE_ATTR_EX])
+CHECK_VERBS_MEMBER([struct ibv_alloc_dm_attr.length], [infiniband/verbs.h], [IBV_DM])
 
 # Check <verbs_exp.h>
 #
@@ -161,7 +162,7 @@ if test "x$vma_cv_verbs" == x2; then
         [AC_DEFINE([DEFINED_IBV_EXP_CQ], 1, [Define to 1 if Experimental Verbs CQ was enabled at configure time])]
 
         CHECK_VERBS_ATTRIBUTE([IBV_EXP_CQ_TIMESTAMP], [infiniband/verbs_exp.h], [IBV_CQ_TIMESTAMP])
-        CHECK_VERBS_ATTRIBUTE([IBV_EXP_VALUES_CLOCK_INFO], [infiniband/verbs_exp.h])
+        CHECK_VERBS_ATTRIBUTE([IBV_EXP_VALUES_CLOCK_INFO], [infiniband/verbs_exp.h], [IBV_CLOCK_INFO])
         CHECK_VERBS_ATTRIBUTE([IBV_EXP_DEVICE_RX_CSUM_L4_PKT], [infiniband/verbs_exp.h])
         CHECK_VERBS_ATTRIBUTE([IBV_EXP_DEVICE_RX_CSUM_TCP_UDP_PKT], [infiniband/verbs_exp.h])
         CHECK_VERBS_ATTRIBUTE([IBV_EXP_FLOW_SPEC_ACTION_TAG], [infiniband/verbs_exp.h], [IBV_FLOW_TAG])
@@ -203,6 +204,7 @@ fi
 if test "x$vma_cv_verbs" == x3; then
     if test "x$vma_cv_directverbs" == x3; then
         CHECK_VERBS_ATTRIBUTE([MLX5_OPCODE_NOP], [infiniband/mlx5dv.h], [IBV_WR_NOP])
+        CHECK_VERBS_MEMBER([struct mlx5dv_clock_info.last_cycles], [infiniband/mlx5dv.h], [IBV_CLOCK_INFO])
     fi
 fi
 
diff -pruN 8.8.1-1/configure.ac 8.8.1.really.8.7.7-1/configure.ac
--- 8.8.1-1/configure.ac	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/configure.ac	2019-01-30 12:11:38.000000000 +0000
@@ -13,8 +13,8 @@ dnl===----------------------------------
 # Update version number here:
 #
 define([vma_ver_major], 8)
-define([vma_ver_minor], 8)
-define([vma_ver_revision], 1)
+define([vma_ver_minor], 7)
+define([vma_ver_revision], 7)
 define([vma_ver_release], 0)
 
 
@@ -29,8 +29,8 @@ AC_INIT(libvma, [vma_ver_major.vma_ver_m
 AC_CONFIG_HEADER([config.h])
 
 VMA_LIBRARY_MAJOR=8
-VMA_LIBRARY_MINOR=8
-VMA_LIBRARY_REVISION=1
+VMA_LIBRARY_MINOR=7
+VMA_LIBRARY_REVISION=7
 VMA_LIBRARY_RELEASE=0
 
 AC_DEFINE_UNQUOTED(VMA_LIBRARY_MAJOR, ${VMA_LIBRARY_MAJOR}, [VMA Major Version])
diff -pruN 8.8.1-1/contrib/jenkins_tests/globals.sh 8.8.1.really.8.7.7-1/contrib/jenkins_tests/globals.sh
--- 8.8.1-1/contrib/jenkins_tests/globals.sh	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/contrib/jenkins_tests/globals.sh	2019-01-30 12:11:38.000000000 +0000
@@ -17,11 +17,6 @@ if [ "$TARGET" == "all" -o "$TARGET" ==
 	target_list[$i]="default: "
 	i=$((i+1))
 fi
-if [ "$TARGET" == "all" -o "$TARGET" == "socketxtreme" ]; then
-	target_list[$i]="socketxtreme:--enable-socketxtreme"
-	i=$((i+1))
-fi
-
 
 # exit code
 rc=0
diff -pruN 8.8.1-1/contrib/scripts/vma.init.in 8.8.1.really.8.7.7-1/contrib/scripts/vma.init.in
--- 8.8.1-1/contrib/scripts/vma.init.in	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/contrib/scripts/vma.init.in	2019-01-30 12:11:38.000000000 +0000
@@ -1,6 +1,6 @@
 #!/bin/bash
 #
-# Copyright (C) Mellanox Technologies Ltd. 2001-2018.  ALL RIGHTS RESERVED.
+# Copyright (C) Mellanox Technologies Ltd. 2001-2019.  ALL RIGHTS RESERVED.
 # See file LICENSE for terms.
 #
 # vma:         Start the VMA Daemon
diff -pruN 8.8.1-1/contrib/test_jenkins.sh 8.8.1.really.8.7.7-1/contrib/test_jenkins.sh
--- 8.8.1-1/contrib/test_jenkins.sh	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/contrib/test_jenkins.sh	2019-01-30 12:11:38.000000000 +0000
@@ -2,7 +2,7 @@
 #
 # Testing script for VMA, to run from Jenkins CI
 #
-# Copyright (C) Mellanox Technologies Ltd. 2001-2018.  ALL RIGHTS RESERVED.
+# Copyright (C) Mellanox Technologies Ltd. 2001-2019.  ALL RIGHTS RESERVED.
 #
 # See file LICENSE for terms.
 #
@@ -87,22 +87,6 @@ for target_v in "${target_list[@]}"; do
     echo "======================================================"
     set -x
 
-    if [ "${target_name}" = "socketxtreme" ]; then
-        if [ $(bc <<< "${jenkins_ofed} < 3.3") == 1 ]; then
-            set +x
-            echo "======================================================"
-            echo "Jenkins is skipping [${target_name}] target ..."
-            echo "Reason: unsupported OFED version [${jenkins_ofed}]"
-            echo "======================================================"
-            set -x
-            continue
-        fi
-        jenkins_test_gtest="no"
-        jenkins_test_run="no"
-        jenkins_test_vg="no"
-        jenkins_test_tool="no"
-    fi
-
     # check building and exit immediately in case failure
     #
     if [ "$jenkins_test_build" = "yes" ]; then
diff -pruN 8.8.1-1/debian/changelog 8.8.1.really.8.7.7-1/debian/changelog
--- 8.8.1-1/debian/changelog	2019-01-28 15:51:43.000000000 +0000
+++ 8.8.1.really.8.7.7-1/debian/changelog	2019-02-07 16:23:10.000000000 +0000
@@ -1,5 +1,14 @@
+libvma (8.8.1.really.8.7.7-1) unstable; urgency=medium
+
+  * New upstream release (later in the tree than 8.8.1)
+  * Refresh patches
+  * Use kgkde_symbolshelper for symbols files
+  * Limit architecture support
+
+ -- Tzafrir Cohen <tzafrir@debian.org>  Thu, 07 Feb 2019 18:23:10 +0200
+
 libvma (8.8.1-1) unstable; urgency=medium
 
-  * Initial release. (Closes: #911425)
+  * Initial release. (Closes: #911245)
 
  -- Tzafrir Cohen <tzafrir@debian.org>  Mon, 28 Jan 2019 16:51:43 +0100
diff -pruN 8.8.1-1/debian/control 8.8.1.really.8.7.7-1/debian/control
--- 8.8.1-1/debian/control	2019-01-28 15:00:28.000000000 +0000
+++ 8.8.1.really.8.7.7-1/debian/control	2019-02-07 16:03:16.000000000 +0000
@@ -7,6 +7,7 @@ Build-Depends: debhelper (>= 11),
  pkg-config,
  autoconf,
  automake,
+ pkg-kde-tools,
  libibverbs-dev,
  librdmacm-dev,
  libnl-route-3-dev,
@@ -19,7 +20,7 @@ Vcs-Browser: https://salsa.debian.org/hp
 Homepage: https://github.com/Mellanox/libvma
 
 Package: libvma
-Architecture: any
+Architecture: any-amd64 any-i386 any-arm64 any-ppc64el any-ppc64
 Depends: ${shlibs:Depends}, ${misc:Depends}, libvma8, libvma-dev
 Description: LD_PRELOAD-able library that boosts performance
  libvma is a LD_PRELOAD-able library that boosts performance of TCP and
@@ -34,7 +35,7 @@ Description: LD_PRELOAD-able library tha
 
 Package: libvma8
 Section: libs
-Architecture: any
+Architecture: any-amd64 any-i386 any-arm64 any-ppc64el any-ppc64
 Depends: ${shlibs:Depends}, ${misc:Depends}
 Description: LD_PRELOAD-able library that boosts performance - shared library
  libvma is a LD_PRELOAD-able library that boosts performance of TCP and
@@ -51,7 +52,7 @@ Description: LD_PRELOAD-able library tha
 
 Package: libvma-dev
 Section: libdevel
-Architecture: any
+Architecture: any-amd64 any-i386 any-arm64 any-ppc64el any-ppc64
 Depends: ${misc:Depends}, libvma8 (= ${binary:Version})
 Description: Development files for the libvma library
  libvma is a LD_PRELOAD-able library that boosts performance of TCP and
@@ -69,7 +70,7 @@ Description: Development files for the l
 
 Package: libvma-utils
 Section: utils
-Architecture: any
+Architecture: any-amd64 any-i386 any-arm64 any-ppc64el any-ppc64
 Depends: ${shlibs:Depends}, ${misc:Depends}
 Description: Examples and tools for the libvma library
  libvma is a LD_PRELOAD-able library that boosts performance of TCP and
diff -pruN 8.8.1-1/debian/libvma8.symbols 8.8.1.really.8.7.7-1/debian/libvma8.symbols
--- 8.8.1-1/debian/libvma8.symbols	2019-01-28 15:51:27.000000000 +0000
+++ 8.8.1.really.8.7.7-1/debian/libvma8.symbols	2019-02-07 14:28:57.000000000 +0000
@@ -1,2799 +1,2712 @@
+# SymbolsHelper-Confirmed: 8.8.1.really.8.7.7 amd64
 libvma.so.8 libvma8 #MINVER#
 * Build-Depends-Package: libvma-dev
- _Z11check_debugv@Base 8.7.5
- _Z11poll_helperP6pollfdmiPK10__sigset_t@Base 8.7.5
- _Z11sys_jiffiesv@Base 8.7.5
- _Z12handle_closeibb@Base 8.7.5
- _Z12prepare_forkv@Base 8.7.5
- _Z12safe_mce_sysv@Base 8.7.5
- _Z12should_writev@Base 8.7.5
- _Z13link_callbackP8nl_cacheP9nl_objectiPv@Base 8.7.5
- _Z13nl_msg_rcv_cbP6nl_msgPv@Base 8.7.5
- _Z13reset_globalsv@Base 8.7.5
- _Z13select_helperiP6fd_setS0_S0_P7timevalPK10__sigset_t@Base 8.7.5
- _Z13sprintf_fdsetPciiP6fd_set@Base 8.7.5
- _Z14compare_doubledd@Base 8.7.5
- _Z14dbg_send_mcpktv@Base 8.7.5
- _Z14get_orig_funcsv@Base 8.7.5
- _Z14gettimefromtscP8timespec@Base 8.7.5
- _Z14neigh_callbackP8nl_cacheP9nl_objectiPv@Base 8.7.5
- _Z14priv_read_filePKcPcm13vlog_levels_t@Base 8.7.5
- _Z14route_callbackP8nl_cacheP9nl_objectiPv@Base 8.7.5
- _Z14set_env_paramsv@Base 8.7.5
- _Z14set_ib_arp_hdrP10ib_arp_hdrjjPKhS2_@Base 8.7.5
- _Z15check_cpu_speedv@Base 8.7.5
- _Z15do_global_ctorsv@Base 8.7.5
- _Z15sendfile_helperP13socket_fd_apiiPlm@Base 8.7.5
- _Z15set_eth_arp_hdrP11eth_arp_hdrjjPKhS2_@Base 8.7.5
- _Z15socket_internaliiib@Base 8.7.5
- _Z15thread_mode_str13thread_mode_t@Base 8.7.5
- _Z16check_locked_memv@Base 8.7.5
- _Z16get_lwip_tcp_mssjj@Base 8.7.5
- _Z16get_netvsc_slavePKcPcRj@Base 8.7.5
- _Z16memcpy_fromiovecPhPK5iovecmmm@Base 8.7.5
- _Z16netmask_bitcountj@Base 8.7.5
- _Z16print_full_statsP14socket_stats_tP13mc_grp_info_tP8_IO_FILE@Base 8.7.5
- _Z16read_file_to_intPKci@Base 8.7.5
- _Z16sprintf_sockaddrPciPK8sockaddrj@Base 8.7.5
- _Z16vma_epoll_createii@Base 8.7.5
- _Z17epoll_wait_helperiP11epoll_eventiiPK10__sigset_t@Base 8.7.5
- _Z17get_local_ll_addrPKcPhib@Base 8.7.5
- _Z17set_fd_block_modeib@Base 8.7.5
- _Z18check_device_existPKcS0_@Base 8.7.5
- _Z18get_ifinfo_from_ipRK8sockaddrPcRj@Base 8.7.5
- _Z18get_sys_max_fd_numi@Base 8.7.5
- _Z18print_netstat_likeP14socket_stats_tP13mc_grp_info_tP8_IO_FILEi@Base 8.7.5
- _Z18timer_req_type_str16timer_req_type_t@Base 8.7.5
- _Z18to_str_socket_typei@Base 8.7.5
- _Z18vma_ib_mlx5_get_cqP6ibv_cqP14vma_ib_mlx5_cq@Base 8.7.5
- _Z18vma_ib_mlx5_get_qpP6ibv_qpP14vma_ib_mlx5_qpj@Base 8.7.5
- _Z18vma_rdma_lib_resetv@Base 8.7.5
- _Z19Floyd_LogCircleInfoP14mem_buf_desc_t@Base 8.7.5
- _Z19check_netperf_flagsv@Base 8.7.5
- _Z19compute_ip_checksumPKtj@Base 8.7.5
- _Z19compute_tx_checksumP14mem_buf_desc_tbb@Base 8.7.5
- _Z19socket_get_type_stri@Base 8.7.5
- _Z19validate_ipoib_propPKcjS0_S0_iPcS1_@Base 8.7.5
- _Z20compute_tcp_checksumPK5iphdrPKt@Base 8.7.5
- _Z20event_handler_threadPv@Base 8.7.5
- _Z20get_bond_slave_statePKcPci@Base 8.7.5
- _Z20get_ipv4_from_ifnamePcP11sockaddr_in@Base 8.7.5
- _Z20get_port_from_ifnamePKc@Base 8.7.5
- _Z20priv_igmp_type_tostrh@Base 8.7.5
- _Z20vma_shmem_stats_openPP13vlog_levels_tPPh@Base 8.7.5
- _Z21check_if_regular_filePc@Base 8.7.5
- _Z21get_ipv4_from_ifindexiP11sockaddr_in@Base 8.7.5
- _Z21get_ofed_version_infoPci@Base 8.7.5
- _Z21nl_socket_handle_freeP7nl_sock@Base 8.7.5
- _Z21register_handler_segvv@Base 8.7.5
- _Z21socket_get_domain_stri@Base 8.7.5
- _Z21vma_ib_mlx5_post_recvP14vma_ib_mlx5_qpP11ibv_recv_wrPS2_@Base 8.7.5
- _Z21vma_shmem_stats_closev@Base 8.7.5
- _Z22get_if_mtu_from_ifnamePKc@Base 8.7.5
- _Z22get_iftype_from_ifnamePKc@Base 8.7.5
- _Z22nl_socket_handle_allocv@Base 8.7.5
- _Z22priv_ibv_wc_status_str13ibv_wc_status@Base 8.7.5
- _Z22vma_ib_mlx5dv_init_objP10mlx5dv_objm@Base 8.7.5
- _Z22vma_stats_mc_group_addjP14socket_stats_t@Base 8.7.5
- _Z23compute_udp_checksum_rxPK5iphdrPK6udphdrP14mem_buf_desc_t@Base 8.7.5
- _Z23get_base_interface_namePKcPcm@Base 8.7.5
- _Z23get_vlan_id_from_ifnamePKc@Base 8.7.5
- _Z23priv_ibv_event_desc_str14ibv_event_type@Base 8.7.5
- _Z23priv_ibv_port_state_str14ibv_port_state@Base 8.7.5
- _Z23priv_ibv_query_qp_stateP6ibv_qp@Base 8.7.5
- _Z24buffer_batching_mode_str22buffer_batching_mode_t@Base 8.7.5
- _Z24get_cq_mgr_from_cq_eventP16ibv_comp_channel@Base 8.7.5
- _Z24get_interface_oper_statePKcPci@Base 8.7.5
- _Z24priv_ibv_find_pkey_indexP11ibv_contexthtPt@Base 8.7.5
- _Z24setsockopt_ip_opt_to_stri@Base 8.7.5
- _Z25check_bond_roce_lag_existPciPKc@Base 8.7.5
- _Z25check_device_name_ib_namePKcS0_@Base 8.7.5
- _Z25check_netvsc_device_existPKc@Base 8.7.5
- _Z25get_address_port_rule_strPcS_P17address_port_rule@Base 8.7.5
- _Z25get_bond_slaves_name_listPKcPci@Base 8.7.5
- _Z25get_window_scaling_factorii@Base 8.7.5
- _Z25print_vma_global_settingsv@Base 8.7.5
- _Z25priv_ibv_modify_qp_to_errP6ibv_qp@Base 8.7.5
- _Z25validate_raw_qp_privligesv@Base 8.7.5
- _Z25vma_ib_mlx5_req_notify_cqP14vma_ib_mlx5_cqi@Base 8.7.5
- _Z25vma_stats_mc_group_removejP14socket_stats_t@Base 8.7.5
- _Z26get_bond_active_slave_namePKcPci@Base 8.7.5
- _Z26iphdr_protocol_type_to_stri@Base 8.7.5
- _Z26print_netstat_like_headersP8_IO_FILE@Base 8.7.5
- _Z27priv_ibv_modify_qp_to_resetP6ibv_qp@Base 8.7.5
- _Z28nl_cache_mngr_compatible_addP13nl_cache_mngrPKcPFvP8nl_cacheP9nl_objectiPvES7_PS4_@Base 8.7.5
- _Z28nl_object_get_compatible_oifP10rtnl_route@Base 8.7.5
- _Z28priv_ibv_modify_qp_ratelimitP6ibv_qpR16vma_rate_limit_tj@Base 8.7.5
- _Z29priv_ibv_modify_cq_moderationP6ibv_cqjj@Base 8.7.5
- _Z30get_vlan_base_name_from_ifnamePKcPcm@Base 8.7.5
- _Z30nl_cache_mngr_compatible_allocP7nl_sockii@Base 8.7.5
- _Z30priv_ibv_create_flow_supportedP6ibv_qph@Base 8.7.5
- _Z30write_version_details_to_shmemP14version_info_t@Base 8.7.5
- _Z31dbg_check_if_need_to_send_mcpktv@Base 8.7.5
- _Z31nl_object_get_compatible_metricP10rtnl_routei@Base 8.7.5
- _Z31run_and_retreive_system_commandPKcPci@Base 8.7.5
- _Z31to_str_socket_type_netstat_likei@Base 8.7.5
- _Z32nl_object_get_compatible_gatewayP10rtnl_route@Base 8.7.5
- _Z33priv_ibv_query_flow_tag_supportedP6ibv_qph@Base 8.7.5
- _Z33vma_stats_instance_get_poll_blockP18iomux_func_stats_t@Base 8.7.5
- _Z34nl_socket_handle_disable_seq_checkP7nl_sock@Base 8.7.5
- _Z34vma_stats_instance_create_cq_blockP10cq_stats_t@Base 8.7.5
- _Z34vma_stats_instance_remove_cq_blockP10cq_stats_t@Base 8.7.5
- _Z35priv_ibv_modify_qp_from_init_to_rtsP6ibv_qpj@Base 8.7.5
- _Z35vma_stats_instance_get_select_blockP18iomux_func_stats_t@Base 8.7.5
- _Z36vma_stats_instance_create_ring_blockP12ring_stats_t@Base 8.7.5
- _Z36vma_stats_instance_remove_ring_blockP12ring_stats_t@Base 8.7.5
- _Z37vma_stats_instance_create_bpool_blockP13bpool_stats_t@Base 8.7.5
- _Z37vma_stats_instance_create_epoll_blockiP18iomux_func_stats_t@Base 8.7.5
- _Z37vma_stats_instance_remove_bpool_blockP13bpool_stats_t@Base 8.7.5
- _Z37vma_stats_instance_remove_epoll_blockP18iomux_func_stats_t@Base 8.7.5
- _Z38priv_ibv_modify_qp_from_err_to_init_udP6ibv_qphtj@Base 8.7.5
- _Z38vma_stats_instance_create_socket_blockP14socket_stats_t@Base 8.7.5
- _Z38vma_stats_instance_remove_socket_blockP14socket_stats_t@Base 8.7.5
- _Z39priv_ibv_modify_qp_from_err_to_init_rawP6ibv_qph@Base 8.7.5
- _Z39validate_user_has_cap_net_raw_privligesv@Base 8.7.5
- _Z42check_flow_steering_log_num_mgm_entry_sizev@Base 8.7.5
- _Z8fd2inodei@Base 8.7.5
- _Z8isCircleP14mem_buf_desc_t@Base 8.7.5
- _ZGVZN11mce_sys_var8instanceEvE12the_instance@Base 8.7.5
- _ZGVZN15sysctl_reader_t8instanceEvE12the_instance@Base 8.7.5
- _ZGVZN8sockinfo10set_eventsEmE19enable_socketxtreme@Base 8.8.1
- _ZN10IPoIB_addr11extract_qpnEv@Base 8.7.5
- _ZN10IPoIB_addrD0Ev@Base 8.7.5
- _ZN10IPoIB_addrD1Ev@Base 8.7.5
- _ZN10IPoIB_addrD2Ev@Base 8.7.5
- _ZN10IPoIB_addraSERKS_@Base 8.7.5
- _ZN10L2_address3setEPhm@Base 8.7.5
- _ZN10L2_addressC1EPhm@Base 8.7.5
- _ZN10L2_addressC2EPhm@Base 8.7.5
- _ZN10L2_addressaSERKS_@Base 8.7.5
- _ZN10flow_tuple10is_3_tupleEv@Base 8.7.5
- _ZN10flow_tuple10is_5_tupleEv@Base 8.7.5
- _ZN10flow_tuple17is_local_loopbackEv@Base 8.7.5
- _ZN10flow_tuple4hashEv@Base 8.7.5
- _ZN10flow_tuple6is_tcpEv@Base 8.7.5
- _ZN10flow_tuple7set_strEv@Base 8.7.5
- _ZN10flow_tuple9is_udp_mcEv@Base 8.7.5
- _ZN10flow_tuple9is_udp_ucEv@Base 8.7.5
- _ZN10flow_tupleC1ER9sock_addrS1_13in_protocol_t@Base 8.7.5
- _ZN10flow_tupleC1ERKS_@Base 8.7.5
- _ZN10flow_tupleC1Ejtjt13in_protocol_t@Base 8.7.5
- _ZN10flow_tupleC1Ev@Base 8.7.5
- _ZN10flow_tupleC2ER9sock_addrS1_13in_protocol_t@Base 8.7.5
- _ZN10flow_tupleC2ERKS_@Base 8.7.5
- _ZN10flow_tupleC2Ejtjt13in_protocol_t@Base 8.7.5
- _ZN10flow_tupleC2Ev@Base 8.7.5
- _ZN10flow_tupleD0Ev@Base 8.7.5
- _ZN10flow_tupleD1Ev@Base 8.7.5
- _ZN10flow_tupleD2Ev@Base 8.7.5
- _ZN10flow_tupleaSERKS_@Base 8.7.5
- _ZN10ip_addressD0Ev@Base 8.7.5
- _ZN10ip_addressD1Ev@Base 8.7.5
- _ZN10ip_addressD2Ev@Base 8.7.5
- _ZN10lock_mutex4lockEv@Base 8.7.5
- _ZN10lock_mutex6unlockEv@Base 8.7.5
- _ZN10lock_mutex7trylockEv@Base 8.7.5
- _ZN10lock_mutexD0Ev@Base 8.7.5
- _ZN10lock_mutexD1Ev@Base 8.7.5
- _ZN10lock_mutexD2Ev@Base 8.7.5
- _ZN10qp_mgr_eth14prepare_ibv_qpER19ibv_qp_init_attr_ex@Base 8.7.5
- _ZN10qp_mgr_eth24modify_qp_to_ready_stateEv@Base 8.7.5
- _ZN10qp_mgr_ethD0Ev@Base 8.7.5
- _ZN10qp_mgr_ethD1Ev@Base 8.7.5
- _ZN10qp_mgr_ethD2Ev@Base 8.7.5
- _ZN10ring_slave11generate_idEPhS0_ttjjtt@Base 8.7.5
- _ZN10ring_slave11generate_idEv@Base 8.7.5
- _ZN10ring_slave16is_active_memberEPS_i@Base 8.7.5
- _ZN10ring_slave22inc_tx_retransmissionsEi@Base 8.7.5
- _ZN10ring_slave7restartEv@Base 8.7.5
- _ZN10ring_slave9is_memberEPS_@Base 8.7.5
- _ZN10ring_slave9print_valEv@Base 8.7.5
- _ZN10ring_slaveC1EiP4ring11ring_type_t@Base 8.7.5
- _ZN10ring_slaveC2EiP4ring11ring_type_t@Base 8.7.5
- _ZN10ring_slaveD0Ev@Base 8.7.5
- _ZN10ring_slaveD1Ev@Base 8.7.5
- _ZN10ring_slaveD2Ev@Base 8.7.5
- _ZN10rule_entry7get_valERPSt5dequeIP8rule_valSaIS2_EE@Base 8.7.5
- _ZN10rule_entryC1E20route_rule_table_key@Base 8.7.5
- _ZN10rule_entryC2E20route_rule_table_key@Base 8.7.5
- _ZN10rule_entryD0Ev@Base 8.7.5
- _ZN10rule_entryD1Ev@Base 8.7.5
- _ZN10rule_entryD2Ev@Base 8.7.5
- _ZN10vma_list_tI14mem_buf_desc_tXadL_ZNS0_18buffer_node_offsetEvEEE9push_backEPS0_@Base 8.7.5
- _ZN10vma_list_tI14mem_buf_desc_tXadL_ZNS0_18buffer_node_offsetEvEEED1Ev@Base 8.7.5
- _ZN10vma_list_tI14mem_buf_desc_tXadL_ZNS0_18buffer_node_offsetEvEEED2Ev@Base 8.7.5
- _ZN10vma_list_tIN12chunk_list_tIP14mem_buf_desc_tE9containerEXadL_ZNS4_11node_offsetEvEEED1Ev@Base 8.7.5
- _ZN10vma_list_tIN12chunk_list_tIP14mem_buf_desc_tE9containerEXadL_ZNS4_11node_offsetEvEEED2Ev@Base 8.7.5
- _ZN11LogDuration17TSC_RATE_PER_USECE@Base 8.7.5
- _ZN11LogDuration5printEv@Base 8.7.5
- _ZN11LogDurationC1EPKc13vlog_levels_t@Base 8.7.5
- _ZN11LogDurationC2EPKc13vlog_levels_t@Base 8.7.5
- _ZN11LogDurationD1Ev@Base 8.7.5
- _ZN11LogDurationD2Ev@Base 8.7.5
- _ZN11buffer_pool11put_buffersEP10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEEm@Base 8.7.5
- _ZN11buffer_pool12buffersPanicEv@Base 8.7.5
- _ZN11buffer_pool13print_val_tblEv@Base 8.7.5
- _ZN11buffer_pool14get_free_countEv@Base 8.7.5
- _ZN11buffer_pool15register_memoryEP14ib_ctx_handler@Base 8.7.5
- _ZN11buffer_pool19set_RX_TX_for_statsEb@Base 8.7.5
- _ZN11buffer_pool23get_buffers_thread_safeER10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEEP10ring_slavemj@Base 8.7.5
- _ZN11buffer_pool23put_buffers_thread_safeEP10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEEm@Base 8.7.5
- _ZN11buffer_pool23put_buffers_thread_safeEP14mem_buf_desc_t@Base 8.7.5
- _ZN11buffer_pool24free_rx_lwip_pbuf_customEP4pbuf@Base 8.7.5
- _ZN11buffer_pool24free_tx_lwip_pbuf_customEP4pbuf@Base 8.7.5
- _ZN11buffer_pool31find_lkey_by_ib_ctx_thread_safeEP14ib_ctx_handler@Base 8.7.5
- _ZN11buffer_pool35put_buffers_after_deref_thread_safeEP10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEE@Base 8.7.5
- _ZN11buffer_poolC1EmmPFvP4pbufE@Base 8.7.5
- _ZN11buffer_poolC2EmmPFvP4pbufE@Base 8.7.5
- _ZN11buffer_poolD1Ev@Base 8.7.5
- _ZN11buffer_poolD2Ev@Base 8.7.5
- _ZN11cpu_manager22reserve_cpu_for_threadEmi@Base 8.7.5
- _ZN11cpu_manager5resetEv@Base 8.7.5
- _ZN11cpu_managerC1Ev@Base 8.7.5
- _ZN11cpu_managerC2Ev@Base 8.7.5
- _ZN11cpu_managerD0Ev@Base 8.7.5
- _ZN11cpu_managerD1Ev@Base 8.7.5
- _ZN11cpu_managerD2Ev@Base 8.7.5
- _ZN11cq_mgr_mlx512get_cq_eventEv@Base 8.7.5
- _ZN11cq_mgr_mlx513req_notify_cqEv@Base 8.7.5
- _ZN11cq_mgr_mlx518drain_and_proccessEPm@Base 8.7.5
- _ZN11cq_mgr_mlx521process_cq_element_rxEP14mem_buf_desc_tNS_13buff_status_eE@Base 8.7.5
- _ZN11cq_mgr_mlx522fill_cq_hw_descriptorsER10hw_cq_data@Base 8.7.5
- _ZN11cq_mgr_mlx527poll_and_process_element_rxEPP14mem_buf_desc_t@Base 8.8.1
- _ZN11cq_mgr_mlx527poll_and_process_element_rxEPmPv@Base 8.7.5
- _ZN11cq_mgr_mlx527poll_and_process_element_txEPm@Base 8.7.5
- _ZN11cq_mgr_mlx533poll_and_process_error_element_rxEP10mlx5_cqe64Pv@Base 8.8.1
- _ZN11cq_mgr_mlx533poll_and_process_error_element_txEP10mlx5_cqe64Pm@Base 8.7.5
- _ZN11cq_mgr_mlx54pollERNS_13buff_status_eE@Base 8.7.5
- _ZN11cq_mgr_mlx58clean_cqEv@Base 8.7.5
- _ZN11cq_mgr_mlx59add_qp_rxEP6qp_mgr@Base 8.7.5
- _ZN11cq_mgr_mlx59add_qp_txEP6qp_mgr@Base 8.7.5
- _ZN11cq_mgr_mlx59del_qp_rxEP6qp_mgr@Base 8.7.5
- _ZN11cq_mgr_mlx59set_qp_rqEP6qp_mgr@Base 8.7.5
- _ZN11cq_mgr_mlx5C1EP11ring_simpleP14ib_ctx_handlerjP16ibv_comp_channelbb@Base 8.7.5
- _ZN11cq_mgr_mlx5C2EP11ring_simpleP14ib_ctx_handlerjP16ibv_comp_channelbb@Base 8.7.5
- _ZN11cq_mgr_mlx5D0Ev@Base 8.7.5
- _ZN11cq_mgr_mlx5D1Ev@Base 8.7.5
- _ZN11cq_mgr_mlx5D2Ev@Base 8.7.5
- _ZN11io_mux_call13polling_loopsEv@Base 8.7.5
- _ZN11io_mux_call14blocking_loopsEv@Base 8.7.5
- _ZN11io_mux_call14is_sig_pendingEv@Base 8.7.5
- _ZN11io_mux_call15prepare_to_pollEv@Base 8.7.5
- _ZN11io_mux_call16immidiate_returnERi@Base 8.7.5
- _ZN11io_mux_call17m_n_skip_os_countE@Base 8.7.5
- _ZN11io_mux_call19handle_os_countdownERi@Base 8.7.5
- _ZN11io_mux_call25ring_request_notificationEv@Base 8.7.5
- _ZN11io_mux_call27check_all_offloaded_socketsEv@Base 8.7.5
- _ZN11io_mux_call29ring_poll_and_process_elementEv@Base 8.7.5
- _ZN11io_mux_call46ring_wait_for_notification_and_process_elementEPv@Base 8.7.5
- _ZN11io_mux_call4callEv@Base 8.7.5
- _ZN11io_mux_call8io_errorD0Ev@Base 8.7.5
- _ZN11io_mux_call8io_errorD1Ev@Base 8.7.5
- _ZN11io_mux_call8io_errorD2Ev@Base 8.7.5
- _ZN11io_mux_callC1EPiPNS_16offloaded_mode_tEiPK10__sigset_t@Base 8.7.5
- _ZN11io_mux_callC2EPiPNS_16offloaded_mode_tEiPK10__sigset_t@Base 8.7.5
- _ZN11loops_timer14time_left_msecEv@Base 8.7.5
- _ZN11loops_timer5startEv@Base 8.7.5
- _ZN11loops_timerC1Ev@Base 8.7.5
- _ZN11loops_timerC2Ev@Base 8.7.5
- _ZN11mce_sys_var13env_to_cpusetEPcP9cpu_set_t@Base 8.7.5
- _ZN11mce_sys_var13hex_to_cpusetEPcP9cpu_set_t@Base 8.7.5
- _ZN11mce_sys_var14get_env_paramsEv@Base 8.7.5
- _ZN11mce_sys_var14list_to_cpusetEPcP9cpu_set_t@Base 8.7.5
- _ZN11mce_sys_var15cpuid_hv_vendorEv@Base 8.7.5
- _ZN11mce_sys_var18check_cpuinfo_flagEPKc@Base 8.7.5
- _ZN11mce_sys_var26print_vma_load_failure_msgEv@Base 8.7.5
- _ZN11mce_sys_var26read_env_variable_with_pidEPcmS0_@Base 8.7.5
- _ZN11mce_sys_var7read_hvEv@Base 8.7.5
- _ZN11mce_sys_var8cpuid_hvEv@Base 8.7.5
- _ZN11neigh_entry12is_deletableEv@Base 8.7.5
- _ZN11neigh_entry13event_handlerENS_7event_tEPv@Base 8.7.5
- _ZN11neigh_entry13get_peer_infoEP9neigh_val@Base 8.7.5
- _ZN11neigh_entry13post_send_arpEb@Base 8.7.5
- _ZN11neigh_entry13post_send_tcpEP15neigh_send_data@Base 8.7.5
- _ZN11neigh_entry13post_send_udpEP15neigh_send_data@Base 8.7.5
- _ZN11neigh_entry15priv_enter_initEv@Base 8.7.5
- _ZN11neigh_entry16general_st_entryERK9sm_info_t@Base 8.7.5
- _ZN11neigh_entry16general_st_leaveERK9sm_info_t@Base 8.7.5
- _ZN11neigh_entry16post_send_packetEP15neigh_send_data@Base 8.7.5
- _ZN11neigh_entry16print_event_infoEiiPv@Base 8.7.5
- _ZN11neigh_entry16priv_enter_errorEv@Base 8.7.5
- _ZN11neigh_entry16priv_enter_readyEv@Base 8.7.5
- _ZN11neigh_entry17dofunc_enter_initERK9sm_info_t@Base 8.7.5
- _ZN11neigh_entry17priv_get_neigh_l2ERPh@Base 8.7.5
- _ZN11neigh_entry17register_observerEPK8observer@Base 8.7.5
- _ZN11neigh_entry18dofunc_enter_errorERK9sm_info_t@Base 8.7.5
- _ZN11neigh_entry18dofunc_enter_readyERK9sm_info_t@Base 8.7.5
- _ZN11neigh_entry18empty_unsent_queueEv@Base 8.7.5
- _ZN11neigh_entry18handle_neigh_eventEP14neigh_nl_event@Base 8.7.5
- _ZN11neigh_entry18priv_kick_start_smEv@Base 8.7.5
- _ZN11neigh_entry18rdma_event_mappingEP13rdma_cm_event@Base 8.7.5
- _ZN11neigh_entry19priv_destroy_cma_idEv@Base 8.7.5
- _ZN11neigh_entry20handle_timer_expiredEPv@Base 8.7.5
- _ZN11neigh_entry20priv_get_neigh_stateERi@Base 8.7.5
- _ZN11neigh_entry21generate_ring_user_idEP6header@Base 8.7.5
- _ZN11neigh_entry21priv_enter_not_activeEv@Base 8.7.5
- _ZN11neigh_entry21priv_general_st_entryERK9sm_info_t@Base 8.7.5
- _ZN11neigh_entry21priv_general_st_leaveERK9sm_info_t@Base 8.7.5
- _ZN11neigh_entry21priv_print_event_infoENS_7state_tENS_7event_tE@Base 8.7.5
- _ZN11neigh_entry21priv_unregister_timerEv@Base 8.7.5
- _ZN11neigh_entry22prepare_to_send_packetEP6header@Base 8.7.5
- _ZN11neigh_entry23dofunc_enter_not_activeERK9sm_info_t@Base 8.7.5
- _ZN11neigh_entry23handle_event_rdma_cm_cbEP13rdma_cm_event@Base 8.7.5
- _ZN11neigh_entry24priv_enter_addr_resolvedEv@Base 8.7.5
- _ZN11neigh_entry25priv_register_timer_eventEiP13timer_handler16timer_req_type_tPv@Base 8.7.5
- _ZN11neigh_entry26dofunc_enter_addr_resolvedERK9sm_info_t@Base 8.7.5
- _ZN11neigh_entry26priv_enter_init_resolutionEv@Base 8.7.5
- _ZN11neigh_entry27priv_event_handler_no_locksENS_7event_tEPv@Base 8.7.5
- _ZN11neigh_entry28dofunc_enter_init_resolutionERK9sm_info_t@Base 8.7.5
- _ZN11neigh_entry31priv_handle_neigh_is_l2_changedEPh@Base 8.7.5
- _ZN11neigh_entry33priv_handle_neigh_reachable_eventEv@Base 8.7.5
- _ZN11neigh_entry4sendER15neigh_send_info@Base 8.7.5
- _ZN11neigh_entry7get_valERP9neigh_val@Base 8.7.5
- _ZN11neigh_entry8send_arpEv@Base 8.7.5
- _ZN11neigh_entry9clean_objEv@Base 8.7.5
- _ZN11neigh_entryC1E9neigh_key16transport_type_tb@Base 8.7.5
- _ZN11neigh_entryC2E9neigh_key16transport_type_tb@Base 8.7.5
- _ZN11neigh_entryD0Ev@Base 8.7.5
- _ZN11neigh_entryD1Ev@Base 8.7.5
- _ZN11neigh_entryD2Ev@Base 8.7.5
- _ZN11ring_simple11attach_flowER10flow_tupleP13pkt_rcvr_sink@Base 8.7.5
- _ZN11ring_simple11detach_flowER10flow_tupleP13pkt_rcvr_sink@Base 8.7.5
- _ZN11ring_simple14mem_buf_tx_getEibi@Base 8.7.5
- _ZN11ring_simple15init_tx_buffersEj@Base 8.7.5
- _ZN11ring_simple15is_socketxtremeEv@Base 8.8.1
- _ZN11ring_simple16create_resourcesEv@Base 8.7.5
- _ZN11ring_simple16flow_tcp_del_allEv@Base 8.7.5
- _ZN11ring_simple16flow_udp_del_allEv@Base 8.7.5
- _ZN11ring_simple16modify_ratelimitER16vma_rate_limit_t@Base 8.7.5
- _ZN11ring_simple16send_lwip_bufferEiP11ibv_send_wr21vma_wr_tx_packet_attr@Base 8.7.5
- _ZN11ring_simple16send_ring_bufferEiP11ibv_send_wr21vma_wr_tx_packet_attr@Base 8.7.5
- _ZN11ring_simple17get_max_tx_inlineEv@Base 8.7.5
- _ZN11ring_simple17rx_process_bufferEP14mem_buf_desc_tPv@Base 8.7.5
- _ZN11ring_simple17socketxtreme_pollEP16vma_completion_tji@Base 8.8.1
- _ZN11ring_simple18drain_and_proccessEv@Base 8.7.5
- _ZN11ring_simple18is_available_qp_wrEb@Base 8.7.5
- _ZN11ring_simple18mem_buf_tx_releaseEP14mem_buf_desc_tbb@Base 8.7.5
- _ZN11ring_simple18stop_active_qp_mgrEv@Base 8.7.5
- _ZN11ring_simple19adapt_cq_moderationEv@Base 8.7.5
- _ZN11ring_simple19start_active_qp_mgrEv@Base 8.7.5
- _ZN11ring_simple20get_ring_descriptorsER22vma_mlx_hw_device_data@Base 8.7.5
- _ZN11ring_simple20modify_cq_moderationEjj@Base 8.7.5
- _ZN11ring_simple20reclaim_recv_buffersEP10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEE@Base 8.7.5
- _ZN11ring_simple20reclaim_recv_buffersEP14mem_buf_desc_t@Base 8.8.1
- _ZN11ring_simple20request_notificationE9cq_type_tm@Base 8.7.5
- _ZN11ring_simple23request_more_tx_buffersEj@Base 8.7.5
- _ZN11ring_simple25get_hw_dummy_send_supportEiP11ibv_send_wr@Base 8.7.5
- _ZN11ring_simple26reclaim_recv_single_bufferEP14mem_buf_desc_t@Base 8.8.1
- _ZN11ring_simple27poll_and_process_element_rxEPmPv@Base 8.7.5
- _ZN11ring_simple28reclaim_recv_buffers_no_lockEP14mem_buf_desc_t@Base 8.7.5
- _ZN11ring_simple31mem_buf_desc_return_to_owner_rxEP14mem_buf_desc_tPv@Base 8.7.5
- _ZN11ring_simple31mem_buf_desc_return_to_owner_txEP14mem_buf_desc_t@Base 8.7.5
- _ZN11ring_simple37mem_buf_desc_completion_with_error_rxEP14mem_buf_desc_t@Base 8.7.5
- _ZN11ring_simple37mem_buf_desc_completion_with_error_txEP14mem_buf_desc_t@Base 8.7.5
- _ZN11ring_simple38mem_buf_desc_return_single_to_owner_txEP14mem_buf_desc_t@Base 8.7.5
- _ZN11ring_simple41wait_for_notification_and_process_elementEiPmPv@Base 8.7.5
- _ZN11ring_simple5is_upEv@Base 8.7.5
- _ZN11ring_simple6del_ecEP7ring_ec@Base 8.8.1
- _ZN11ring_simple6put_ecEP7ring_ec@Base 8.8.1
- _ZN11ring_simple8get_compEv@Base 8.8.1
- _ZN11ring_simpleC1EiP4ring11ring_type_t@Base 8.7.5
- _ZN11ring_simpleC2EiP4ring11ring_type_t@Base 8.7.5
- _ZN11ring_simpleD0Ev@Base 8.7.5
- _ZN11ring_simpleD1Ev@Base 8.7.5
- _ZN11ring_simpleD2Ev@Base 8.7.5
- _ZN11route_entry22register_to_net_deviceEv@Base 8.7.5
- _ZN11route_entry24unregister_to_net_deviceEv@Base 8.7.5
- _ZN11route_entry7get_valERP9route_val@Base 8.7.5
- _ZN11route_entry7set_strEv@Base 8.7.5
- _ZN11route_entry7set_valERP9route_val@Base 8.7.5
- _ZN11route_entry9notify_cbEv@Base 8.7.5
- _ZN11route_entryC1E20route_rule_table_key@Base 8.7.5
- _ZN11route_entryC2E20route_rule_table_key@Base 8.7.5
- _ZN11route_entryD0Ev@Base 8.7.5
- _ZN11route_entryD1Ev@Base 8.7.5
- _ZN11route_entryD2Ev@Base 8.7.5
- _ZN11select_call10is_timeoutERK7timeval@Base 8.7.5
- _ZN11select_call13set_efd_readyEii@Base 8.7.5
- _ZN11select_call13set_rfd_readyEi@Base 8.7.5
- _ZN11select_call13set_wfd_readyEi@Base 8.7.5
- _ZN11select_call15prepare_to_pollEv@Base 8.7.5
- _ZN11select_call16prepare_to_blockEv@Base 8.7.5
- _ZN11select_call23set_offloaded_rfd_readyEi@Base 8.7.5
- _ZN11select_call23set_offloaded_wfd_readyEi@Base 8.7.5
- _ZN11select_call4waitERK7timeval@Base 8.7.5
- _ZN11select_call7wait_osEb@Base 8.7.5
- _ZN11select_callC1EPiPN11io_mux_call16offloaded_mode_tEiP6fd_setS5_S5_P7timevalPK10__sigset_t@Base 8.7.5
- _ZN11select_callC2EPiPN11io_mux_call16offloaded_mode_tEiP6fd_setS5_S5_P7timevalPK10__sigset_t@Base 8.7.5
- _ZN11select_callD0Ev@Base 8.7.5
- _ZN11select_callD1Ev@Base 8.7.5
- _ZN11select_callD2Ev@Base 8.7.5
- _ZN11wakeup_pipe12is_wakeup_fdEi@Base 8.7.5
- _ZN11wakeup_pipe14g_wakeup_pipesE@Base 8.7.5
- _ZN11wakeup_pipe16remove_wakeup_fdEv@Base 8.7.5
- _ZN11wakeup_pipe9do_wakeupEv@Base 8.7.5
- _ZN11wakeup_pipe9ref_countE@Base 8.7.5
- _ZN11wakeup_pipeC1Ev@Base 8.7.5
- _ZN11wakeup_pipeC2Ev@Base 8.7.5
- _ZN11wakeup_pipeD0Ev@Base 8.7.5
- _ZN11wakeup_pipeD1Ev@Base 8.7.5
- _ZN11wakeup_pipeD2Ev@Base 8.7.5
- _ZN12chunk_list_tIP14mem_buf_desc_tED1Ev@Base 8.7.5
- _ZN12chunk_list_tIP14mem_buf_desc_tED2Ev@Base 8.7.5
- _ZN12data_updaterD0Ev@Base 8.7.5
- _ZN12data_updaterD1Ev@Base 8.7.5
- _ZN12data_updaterD2Ev@Base 8.7.5
- _ZN12event_data_tD1Ev@Base 8.7.5
- _ZN12event_data_tD2Ev@Base 8.7.5
- _ZN12igmp_handler12handle_queryEh@Base 8.7.5
- _ZN12igmp_handler13handle_reportEv@Base 8.7.5
- _ZN12igmp_handler14tx_igmp_reportEv@Base 8.7.5
- _ZN12igmp_handler15set_ip_igmp_hdrEP25ip_igmp_tx_hdr_template_t@Base 8.7.5
- _ZN12igmp_handler20handle_timer_expiredEPv@Base 8.7.5
- _ZN12igmp_handler25priv_register_timer_eventEP13timer_handler16timer_req_type_tPv@Base 8.7.5
- _ZN12igmp_handler4initERK9neigh_key@Base 8.7.5
- _ZN12igmp_handler9clean_objEv@Base 8.7.5
- _ZN12igmp_handlerC1ERK9neigh_keyh@Base 8.7.5
- _ZN12igmp_handlerC2ERK9neigh_keyh@Base 8.7.5
- _ZN12igmp_handlerD0Ev@Base 8.7.5
- _ZN12igmp_handlerD1Ev@Base 8.7.5
- _ZN12igmp_handlerD2Ev@Base 8.7.5
- _ZN12neigh_ib_val16zero_all_membersEv@Base 8.7.5
- _ZN12neigh_ib_valD0Ev@Base 8.7.5
- _ZN12neigh_ib_valD1Ev@Base 8.7.5
- _ZN12neigh_ib_valD2Ev@Base 8.7.5
- _ZN12neigh_ib_valaSERK9neigh_val@Base 8.7.5
- _ZN12ring_bond_ib12slave_createEi@Base 8.7.5
- _ZN12ring_bond_ibD0Ev@Base 8.7.5
- _ZN12ring_bond_ibD1Ev@Base 8.7.5
- _ZN12ring_bond_ibD2Ev@Base 8.7.5
- _ZN12ring_profile13create_stringEv@Base 8.7.5
- _ZN12ring_profile21get_vma_ring_type_strEv@Base 8.7.5
- _ZN12ring_profileC1EPK18vma_ring_type_attr@Base 8.7.5
- _ZN12ring_profileC1Ev@Base 8.7.5
- _ZN12ring_profileC2EPK18vma_ring_type_attr@Base 8.7.5
- _ZN12ring_profileC2Ev@Base 8.7.5
- _ZN12ring_profileeqERK18vma_ring_type_attr@Base 8.7.5
- _ZN12sockinfo_tcp10free_buffsEt@Base 8.7.5
- _ZN12sockinfo_tcp10getsockoptEiiPvPj@Base 8.7.5
- _ZN12sockinfo_tcp10rx_lwip_cbEPvP7tcp_pcbP4pbufa@Base 8.7.5
- _ZN12sockinfo_tcp10setsockoptEiiPKvj@Base 8.7.5
- _ZN12sockinfo_tcp11err_lwip_cbEPva@Base 8.7.5
- _ZN12sockinfo_tcp11fit_rcv_wndEb@Base 8.7.5
- _ZN12sockinfo_tcp11force_closeEv@Base 8.7.5
- _ZN12sockinfo_tcp11getpeernameEP8sockaddrPj@Base 8.7.5
- _ZN12sockinfo_tcp11getsocknameEP8sockaddrPj@Base 8.7.5
- _ZN12sockinfo_tcp11is_closableEv@Base 8.7.5
- _ZN12sockinfo_tcp11is_readableEPmP10fd_array_t@Base 8.7.5
- _ZN12sockinfo_tcp11post_deqeueEb@Base 8.7.5
- _ZN12sockinfo_tcp11rx_input_cbEP14mem_buf_desc_tPv@Base 8.7.5
- _ZN12sockinfo_tcp11unlock_rx_qEv@Base 8.7.5
- _ZN12sockinfo_tcp12accept_cloneEv@Base 8.7.5
- _ZN12sockinfo_tcp12fit_snd_bufsEj@Base 8.7.5
- _ZN12sockinfo_tcp12free_packetsEP12vma_packet_tm@Base 8.7.5
- _ZN12sockinfo_tcp12is_errorableEPi@Base 8.7.5
- _ZN12sockinfo_tcp12is_writeableEv@Base 8.7.5
- _ZN12sockinfo_tcp12reuse_bufferEP14mem_buf_desc_t@Base 8.7.5
- _ZN12sockinfo_tcp12tcp_seg_freeEPvP7tcp_seg@Base 8.7.5
- _ZN12sockinfo_tcp12zero_copy_rxEP5iovecP14mem_buf_desc_tPi@Base 8.7.5
- _ZN12sockinfo_tcp13accept_helperEP8sockaddrPji@Base 8.7.5
- _ZN12sockinfo_tcp13clone_conn_cbEPvPP7tcp_pcba@Base 8.7.5
- _ZN12sockinfo_tcp13get_next_descEP14mem_buf_desc_t@Base 8.7.5
- _ZN12sockinfo_tcp13get_route_mtuEP7tcp_pcb@Base 8.7.5
- _ZN12sockinfo_tcp13isPassthroughEv@Base 8.7.5
- _ZN12sockinfo_tcp13prepareListenEv@Base 8.7.5
- _ZN12sockinfo_tcp13put_agent_msgEPv@Base 8.7.5
- _ZN12sockinfo_tcp13tcp_seg_allocEPv@Base 8.7.5
- _ZN12sockinfo_tcp14accept_lwip_cbEPvP7tcp_pcba@Base 8.7.5
- _ZN12sockinfo_tcp14register_timerEv@Base 8.7.5
- _ZN12sockinfo_tcp14rx_wait_helperERib@Base 8.7.5
- _ZN12sockinfo_tcp14skip_os_selectEv@Base 8.7.5
- _ZN12sockinfo_tcp14unlock_tcp_conEv@Base 8.7.5
- _ZN12sockinfo_tcp15connect_lwip_cbEPvP7tcp_pcba@Base 8.7.5
- _ZN12sockinfo_tcp15handle_rx_errorEv@Base 8.7.5
- _ZN12sockinfo_tcp15rx_drop_lwip_cbEPvP7tcp_pcbP4pbufa@Base 8.7.5
- _ZN12sockinfo_tcp16abort_connectionEv@Base 8.7.5
- _ZN12sockinfo_tcp16create_dst_entryEv@Base 8.7.5
- _ZN12sockinfo_tcp16handle_child_FINEPS_@Base 8.7.5
- _ZN12sockinfo_tcp16prepare_to_closeEb@Base 8.7.5
- _ZN12sockinfo_tcp16set_sock_optionsEPS_@Base 8.7.5
- _ZN12sockinfo_tcp16statistics_printE13vlog_levels_t@Base 8.7.5
- _ZN12sockinfo_tcp16tcp_tx_pbuf_freeEPvP4pbuf@Base 8.7.5
- _ZN12sockinfo_tcp17ack_recvd_lwip_cbEPvP7tcp_pcbt@Base 8.7.5
- _ZN12sockinfo_tcp17handle_ip_pktinfoEP10cmsg_state@Base 8.7.5
- _ZN12sockinfo_tcp17ip_output_syn_ackEP4pbufPvih@Base 8.7.5
- _ZN12sockinfo_tcp17tcp_tx_pbuf_allocEPv@Base 8.7.5
- _ZN12sockinfo_tcp17try_un_offloadingEv@Base 8.7.5
- _ZN12sockinfo_tcp18get_next_desc_peekEP14mem_buf_desc_tRi@Base 8.7.5
- _ZN12sockinfo_tcp18getsockopt_offloadEiiPvPj@Base 8.7.5
- _ZN12sockinfo_tcp18tcp_state_observerEPv9tcp_state@Base 8.7.5
- _ZN12sockinfo_tcp19prepare_dst_to_sendEb@Base 8.7.5
- _ZN12sockinfo_tcp19queue_rx_ctl_packetEP7tcp_pcbP14mem_buf_desc_t@Base 8.7.5
- _ZN12sockinfo_tcp19update_header_fieldEP12data_updater@Base 8.7.5
- _ZN12sockinfo_tcp19wait_for_conn_readyEv@Base 8.7.5
- _ZN12sockinfo_tcp20get_syn_received_pcbEjtjt@Base 8.7.5
- _ZN12sockinfo_tcp20handle_socket_lingerEv@Base 8.7.5
- _ZN12sockinfo_tcp20handle_timer_expiredEPv@Base 8.7.5
- _ZN12sockinfo_tcp20syn_received_lwip_cbEPvP7tcp_pcba@Base 8.7.5
- _ZN12sockinfo_tcp21fit_snd_bufs_to_nagleEb@Base 8.7.5
- _ZN12sockinfo_tcp21get_socket_timestampsEv@Base 8.7.5
- _ZN12sockinfo_tcp22auto_accept_connectionEPS_S0_@Base 8.8.1
- _ZN12sockinfo_tcp22process_my_ctl_packetsEv@Base 8.7.5
- _ZN12sockinfo_tcp22process_rx_ctl_packetsEv@Base 8.7.5
- _ZN12sockinfo_tcp23prepare_listen_to_closeEv@Base 8.7.5
- _ZN12sockinfo_tcp23rx_request_notificationEm@Base 8.7.5
- _ZN12sockinfo_tcp23set_rx_packet_processorEv@Base 8.7.5
- _ZN12sockinfo_tcp24delay_orig_close_to_dtorEv@Base 8.7.5
- _ZN12sockinfo_tcp24process_peer_ctl_packetsER10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEE@Base 8.7.5
- _ZN12sockinfo_tcp24rx_verify_available_dataEv@Base 8.7.5
- _ZN12sockinfo_tcp24update_socket_timestampsEP12timestamps_t@Base 8.7.5
- _ZN12sockinfo_tcp25process_reuse_ctl_packetsEv@Base 8.7.5
- _ZN12sockinfo_tcp25syn_received_drop_lwip_cbEPvP7tcp_pcba@Base 8.7.5
- _ZN12sockinfo_tcp27check_dummy_send_conditionsEiPK5iovecl@Base 8.7.5
- _ZN12sockinfo_tcp28get_size_m_rx_pkt_ready_listEv@Base 8.7.5
- _ZN12sockinfo_tcp28process_children_ctl_packetsEv@Base 8.7.5
- _ZN12sockinfo_tcp28set_conn_properties_from_pcbEv@Base 8.7.5
- _ZN12sockinfo_tcp29get_front_m_rx_pkt_ready_listEv@Base 8.7.5
- _ZN12sockinfo_tcp29pop_front_m_rx_pkt_ready_listEv@Base 8.7.5
- _ZN12sockinfo_tcp29push_back_m_rx_pkt_ready_listEP14mem_buf_desc_t@Base 8.7.5
- _ZN12sockinfo_tcp2rxE9rx_call_tP5ioveclPiP8sockaddrPjP6msghdr@Base 8.7.5
- _ZN12sockinfo_tcp2txE9tx_call_tPK5iovecliPK8sockaddrj@Base 8.7.5
- _ZN12sockinfo_tcp30create_flow_tuple_key_from_pcbER10flow_tupleP7tcp_pcb@Base 8.7.5
- _ZN12sockinfo_tcp30return_reuse_buffers_postponedEv@Base 8.8.1
- _ZN12sockinfo_tcp4bindEPK8sockaddrj@Base 8.7.5
- _ZN12sockinfo_tcp5fcntlEim@Base 8.7.5
- _ZN12sockinfo_tcp5ioctlEmm@Base 8.7.5
- _ZN12sockinfo_tcp6acceptEP8sockaddrPj@Base 8.7.5
- _ZN12sockinfo_tcp6listenEi@Base 8.7.5
- _ZN12sockinfo_tcp7accept4EP8sockaddrPji@Base 8.7.5
- _ZN12sockinfo_tcp7connectEPK8sockaddrj@Base 8.7.5
- _ZN12sockinfo_tcp7tx_waitERib@Base 8.7.5
- _ZN12sockinfo_tcp8get_typeEv@Base 8.7.5
- _ZN12sockinfo_tcp8shutdownEi@Base 8.7.5
- _ZN12sockinfo_tcp9clean_objEv@Base 8.7.5
- _ZN12sockinfo_tcp9ip_outputEP4pbufPvih@Base 8.7.5
- _ZN12sockinfo_tcp9lock_rx_qEv@Base 8.7.5
- _ZN12sockinfo_tcp9tcp_timerEv@Base 8.7.5
- _ZN12sockinfo_tcpC1Ei@Base 8.7.5
- _ZN12sockinfo_tcpC2Ei@Base 8.7.5
- _ZN12sockinfo_tcpD0Ev@Base 8.7.5
- _ZN12sockinfo_tcpD1Ev@Base 8.7.5
- _ZN12sockinfo_tcpD2Ev@Base 8.7.5
- _ZN12sockinfo_udp10getsockoptEiiPvPj@Base 8.7.5
- _ZN12sockinfo_udp10setsockoptEiiPKvj@Base 8.7.5
- _ZN12sockinfo_udp11getsocknameEP8sockaddrPj@Base 8.7.5
- _ZN12sockinfo_udp11is_readableEPmP10fd_array_t@Base 8.7.5
- _ZN12sockinfo_udp11post_deqeueEb@Base 8.7.5
- _ZN12sockinfo_udp11rx_input_cbEP14mem_buf_desc_tPv@Base 8.7.5
- _ZN12sockinfo_udp12free_packetsEP12vma_packet_tm@Base 8.7.5
- _ZN12sockinfo_udp12reuse_bufferEP14mem_buf_desc_t@Base 8.7.5
- _ZN12sockinfo_udp12set_blockingEb@Base 8.7.5
- _ZN12sockinfo_udp12zero_copy_rxEP5iovecP14mem_buf_desc_tPi@Base 8.7.5
- _ZN12sockinfo_udp13flow_in_reuseEv@Base 8.7.5
- _ZN12sockinfo_udp13get_next_descEP14mem_buf_desc_t@Base 8.7.5
- _ZN12sockinfo_udp13isPassthroughEv@Base 8.7.5
- _ZN12sockinfo_udp13set_ring_attrEP25vma_ring_alloc_logic_attr@Base 8.7.5
- _ZN12sockinfo_udp14rx_add_ring_cbER24flow_tuple_with_local_ifP4ringb@Base 8.7.5
- _ZN12sockinfo_udp14rx_del_ring_cbER24flow_tuple_with_local_ifP4ringb@Base 8.7.5
- _ZN12sockinfo_udp14setPassthroughEv@Base 8.7.5
- _ZN12sockinfo_udp16handle_msg_truncEmmiPi@Base 8.7.5
- _ZN12sockinfo_udp16prepare_to_closeEb@Base 8.7.5
- _ZN12sockinfo_udp16statistics_printE13vlog_levels_t@Base 8.7.5
- _ZN12sockinfo_udp17handle_ip_pktinfoEP10cmsg_state@Base 8.7.5
- _ZN12sockinfo_udp18get_next_desc_peekEP14mem_buf_desc_tRi@Base 8.7.5
- _ZN12sockinfo_udp18on_sockname_changeEP8sockaddrj@Base 8.7.5
- _ZN12sockinfo_udp19handle_pending_mreqEv@Base 8.7.5
- _ZN12sockinfo_udp19update_header_fieldEP12data_updater@Base 8.7.5
- _ZN12sockinfo_udp20mc_change_membershipEPK15mc_pending_pram@Base 8.7.5
- _ZN12sockinfo_udp20set_ring_attr_helperEP21ring_alloc_logic_attrP25vma_ring_alloc_logic_attr@Base 8.7.5
- _ZN12sockinfo_udp21get_socket_timestampsEv@Base 8.7.5
- _ZN12sockinfo_udp21get_socket_tx_ring_fdEP8sockaddrj@Base 8.7.5
- _ZN12sockinfo_udp21save_stats_tx_offloadEib@Base 8.7.5
- _ZN12sockinfo_udp22mc_change_pending_mreqEPK15mc_pending_pram@Base 8.7.5
- _ZN12sockinfo_udp22save_stats_threadid_rxEv@Base 8.7.5
- _ZN12sockinfo_udp22save_stats_threadid_txEv@Base 8.7.5
- _ZN12sockinfo_udp23rx_request_notificationEm@Base 8.7.5
- _ZN12sockinfo_udp23set_immediate_os_sampleEv@Base 8.7.5
- _ZN12sockinfo_udp23set_rx_packet_processorEv@Base 8.7.5
- _ZN12sockinfo_udp24rx_verify_available_dataEv@Base 8.7.5
- _ZN12sockinfo_udp24update_socket_timestampsEP12timestamps_t@Base 8.7.5
- _ZN12sockinfo_udp25unset_immediate_os_sampleEv@Base 8.7.5
- _ZN12sockinfo_udp26rx_process_udp_packet_fullEP14mem_buf_desc_tPv@Base 8.7.5
- _ZN12sockinfo_udp27tx_check_if_would_not_blockEv@Base 8.7.5
- _ZN12sockinfo_udp28get_size_m_rx_pkt_ready_listEv@Base 8.7.5
- _ZN12sockinfo_udp29get_front_m_rx_pkt_ready_listEv@Base 8.7.5
- _ZN12sockinfo_udp29original_os_setsockopt_helperEPvii@Base 8.7.5
- _ZN12sockinfo_udp29pop_front_m_rx_pkt_ready_listEv@Base 8.7.5
- _ZN12sockinfo_udp29push_back_m_rx_pkt_ready_listEP14mem_buf_desc_t@Base 8.7.5
- _ZN12sockinfo_udp29rx_process_udp_packet_partialEP14mem_buf_desc_tPv@Base 8.7.5
- _ZN12sockinfo_udp2rxE9rx_call_tP5ioveclPiP8sockaddrPjP6msghdr@Base 8.7.5
- _ZN12sockinfo_udp2txE9tx_call_tPK5iovecliPK8sockaddrj@Base 8.7.5
- _ZN12sockinfo_udp31mc_change_membership_end_helperEjij@Base 8.7.5
- _ZN12sockinfo_udp32rx_ready_byte_count_limit_updateEm@Base 8.7.5
- _ZN12sockinfo_udp33mc_change_membership_start_helperEji@Base 8.7.5
- _ZN12sockinfo_udp4bindEPK8sockaddrj@Base 8.7.5
- _ZN12sockinfo_udp7connectEPK8sockaddrj@Base 8.7.5
- _ZN12sockinfo_udp7rx_waitEb@Base 8.7.5
- _ZN12sockinfo_udp8get_typeEv@Base 8.7.5
- _ZN12sockinfo_udpC1Ei@Base 8.7.5
- _ZN12sockinfo_udpC2Ei@Base 8.7.5
- _ZN12sockinfo_udpD0Ev@Base 8.7.5
- _ZN12sockinfo_udpD1Ev@Base 8.7.5
- _ZN12sockinfo_udpD2Ev@Base 8.7.5
- _ZN12tcp_seg_pool12get_tcp_segsEi@Base 8.7.5
- _ZN12tcp_seg_pool12put_tcp_segsEP7tcp_seg@Base 8.7.5
- _ZN12tcp_seg_pool18free_tsp_resourcesEv@Base 8.7.5
- _ZN12tcp_seg_poolC1Ei@Base 8.7.5
- _ZN12tcp_seg_poolC2Ei@Base 8.7.5
- _ZN12tcp_seg_poolD0Ev@Base 8.7.5
- _ZN12tcp_seg_poolD1Ev@Base 8.7.5
- _ZN12tcp_seg_poolD2Ev@Base 8.7.5
- _ZN13cleanable_obj9clean_objEv@Base 8.7.5
- _ZN13cleanable_objD0Ev@Base 8.7.5
- _ZN13cleanable_objD1Ev@Base 8.7.5
- _ZN13cleanable_objD2Ev@Base 8.7.5
- _ZN13dst_entry_tcp10get_bufferEb@Base 8.7.5
- _ZN13dst_entry_tcp10put_bufferEP14mem_buf_desc_t@Base 8.7.5
- _ZN13dst_entry_tcp13get_transportE11sockaddr_in@Base 8.7.5
- _ZN13dst_entry_tcp15slow_send_neighEPK5iovecmR16vma_rate_limit_t@Base 8.7.5
- _ZN13dst_entry_tcp17configure_headersEv@Base 8.7.5
- _ZN13dst_entry_tcp18get_inline_sge_numEv@Base 8.7.5
- _ZN13dst_entry_tcp18pass_buff_to_neighEPK5iovecRmt@Base 8.7.5
- _ZN13dst_entry_tcp25get_sge_lst_4_inline_sendEv@Base 8.7.5
- _ZN13dst_entry_tcp29get_sge_lst_4_not_inline_sendEv@Base 8.7.5
- _ZN13dst_entry_tcp9fast_sendEPK5ioveclbbb@Base 8.7.5
- _ZN13dst_entry_tcp9slow_sendEPK5iovecmbR16vma_rate_limit_tbbiP13socket_fd_api9tx_call_t@Base 8.7.5
- _ZN13dst_entry_tcpC1EjttR11socket_dataR21ring_alloc_logic_attr@Base 8.7.5
- _ZN13dst_entry_tcpC2EjttR11socket_dataR21ring_alloc_logic_attr@Base 8.7.5
- _ZN13dst_entry_tcpD0Ev@Base 8.7.5
- _ZN13dst_entry_tcpD1Ev@Base 8.7.5
- _ZN13dst_entry_tcpD2Ev@Base 8.7.5
- _ZN13dst_entry_udp13get_transportE11sockaddr_in@Base 8.7.5
- _ZN13dst_entry_udp17configure_headersEv@Base 8.7.5
- _ZN13dst_entry_udp18get_inline_sge_numEv@Base 8.7.5
- _ZN13dst_entry_udp18pass_buff_to_neighEPK5iovecRmt@Base 8.7.5
- _ZN13dst_entry_udp20fast_send_fragmentedEPK5iovecl21vma_wr_tx_packet_attrml@Base 8.7.5
- _ZN13dst_entry_udp25get_sge_lst_4_inline_sendEv@Base 8.7.5
- _ZN13dst_entry_udp29get_sge_lst_4_not_inline_sendEv@Base 8.7.5
- _ZN13dst_entry_udp8init_sgeEv@Base 8.7.5
- _ZN13dst_entry_udp9fast_sendEPK5ioveclbbb@Base 8.7.5
- _ZN13dst_entry_udp9slow_sendEPK5iovecmbR16vma_rate_limit_tbbiP13socket_fd_api9tx_call_t@Base 8.7.5
- _ZN13dst_entry_udpC1EjttR11socket_dataR21ring_alloc_logic_attr@Base 8.7.5
- _ZN13dst_entry_udpC2EjttR11socket_dataR21ring_alloc_logic_attr@Base 8.7.5
- _ZN13dst_entry_udpD0Ev@Base 8.7.5
- _ZN13dst_entry_udpD1Ev@Base 8.7.5
- _ZN13dst_entry_udpD2Ev@Base 8.7.5
- _ZN13fd_collection10del_sockfdEib@Base 8.7.5
- _ZN13fd_collection16prepare_to_closeEv@Base 8.7.5
- _ZN13fd_collection16statistics_printEi13vlog_levels_t@Base 8.7.5
- _ZN13fd_collection17add_cq_channel_fdEiP4ring@Base 8.7.5
- _ZN13fd_collection17del_cq_channel_fdEib@Base 8.7.5
- _ZN13fd_collection20handle_timer_expiredEPv@Base 8.7.5
- _ZN13fd_collection21remove_epfd_from_listEP9epfd_info@Base 8.7.5
- _ZN13fd_collection21remove_from_all_epfdsEib@Base 8.7.5
- _ZN13fd_collection23statistics_print_helperEi13vlog_levels_t@Base 8.7.5
- _ZN13fd_collection29offloading_rule_change_threadEbm@Base 8.7.5
- _ZN13fd_collection5clearEv@Base 8.7.5
- _ZN13fd_collection7addepfdEii@Base 8.7.5
- _ZN13fd_collection7addpipeEii@Base 8.7.5
- _ZN13fd_collection8addtapfdEiP8ring_tap@Base 8.7.5
- _ZN13fd_collection8del_epfdEib@Base 8.7.5
- _ZN13fd_collection9addsocketEiiib@Base 8.7.5
- _ZN13fd_collection9del_tapfdEi@Base 8.7.5
- _ZN13fd_collectionC1Ev@Base 8.7.5
- _ZN13fd_collectionC2Ev@Base 8.7.5
- _ZN13fd_collectionD0Ev@Base 8.7.5
- _ZN13fd_collectionD1Ev@Base 8.7.5
- _ZN13fd_collectionD2Ev@Base 8.7.5
- _ZN13link_nl_eventC1EP8nlmsghdrP9rtnl_linkPv@Base 8.7.5
- _ZN13link_nl_eventC2EP8nlmsghdrP9rtnl_linkPv@Base 8.7.5
- _ZN13link_nl_eventD0Ev@Base 8.7.5
- _ZN13link_nl_eventD1Ev@Base 8.7.5
- _ZN13link_nl_eventD2Ev@Base 8.7.5
- _ZN13neigh_eth_valD0Ev@Base 8.7.5
- _ZN13neigh_eth_valD1Ev@Base 8.7.5
- _ZN13neigh_eth_valD2Ev@Base 8.7.5
- _ZN13neigh_eth_valaSERK9neigh_val@Base 8.7.5
- _ZN13netlink_eventC1EP8nlmsghdrPv@Base 8.7.5
- _ZN13netlink_eventC2EP8nlmsghdrPv@Base 8.7.5
- _ZN13netlink_eventD0Ev@Base 8.7.5
- _ZN13netlink_eventD1Ev@Base 8.7.5
- _ZN13netlink_eventD2Ev@Base 8.7.5
- _ZN13ring_bond_eth12slave_createEi@Base 8.7.5
- _ZN13ring_bond_ethD0Ev@Base 8.7.5
- _ZN13ring_bond_ethD1Ev@Base 8.7.5
- _ZN13ring_bond_ethD2Ev@Base 8.7.5
- _ZN13socket_fd_api10free_buffsEt@Base 8.7.5
- _ZN13socket_fd_api10getsockoptEiiPvPj@Base 8.7.5
- _ZN13socket_fd_api10setsockoptEiiPKvj@Base 8.7.5
- _ZN13socket_fd_api11check_ringsEv@Base 8.7.5
- _ZN13socket_fd_api11force_closeEv@Base 8.7.5
- _ZN13socket_fd_api11getpeernameEP8sockaddrPj@Base 8.7.5
- _ZN13socket_fd_api11getsocknameEP8sockaddrPj@Base 8.7.5
- _ZN13socket_fd_api11is_closableEv@Base 8.7.5
- _ZN13socket_fd_api11is_readableEPmP10fd_array_t@Base 8.7.5
- _ZN13socket_fd_api12free_packetsEP12vma_packet_tm@Base 8.7.5
- _ZN13socket_fd_api12is_errorableEPi@Base 8.7.5
- _ZN13socket_fd_api12is_writeableEv@Base 8.7.5
- _ZN13socket_fd_api13get_rings_fdsERi@Base 8.7.5
- _ZN13socket_fd_api13get_rings_numEv@Base 8.7.5
- _ZN13socket_fd_api13isPassthroughEv@Base 8.7.5
- _ZN13socket_fd_api13prepareListenEv@Base 8.7.5
- _ZN13socket_fd_api14setPassthroughEv@Base 8.7.5
- _ZN13socket_fd_api14skip_os_selectEv@Base 8.7.5
- _ZN13socket_fd_api16prepare_to_closeEb@Base 8.7.5
- _ZN13socket_fd_api16statistics_printE13vlog_levels_t@Base 8.7.5
- _ZN13socket_fd_api17add_epoll_contextEP9epfd_info@Base 8.7.5
- _ZN13socket_fd_api17destructor_helperEv@Base 8.7.5
- _ZN13socket_fd_api17register_callbackEPF26vma_recv_callback_retval_timP5iovecP10vma_info_tPvES5_@Base 8.7.5
- _ZN13socket_fd_api20get_epoll_context_fdEv@Base 8.7.5
- _ZN13socket_fd_api20notify_epoll_contextEj@Base 8.7.5
- _ZN13socket_fd_api20remove_epoll_contextEP9epfd_info@Base 8.7.5
- _ZN13socket_fd_api21get_socket_tx_ring_fdEP8sockaddrj@Base 8.7.5
- _ZN13socket_fd_api22get_socket_network_ptrEPvRt@Base 8.7.5
- _ZN13socket_fd_api23rx_request_notificationEm@Base 8.7.5
- _ZN13socket_fd_api23set_immediate_os_sampleEv@Base 8.7.5
- _ZN13socket_fd_api24consider_rings_migrationEv@Base 8.7.5
- _ZN13socket_fd_api24delay_orig_close_to_dtorEv@Base 8.7.5
- _ZN13socket_fd_api25unset_immediate_os_sampleEv@Base 8.7.5
- _ZN13socket_fd_api27notify_epoll_context_verifyEP9epfd_info@Base 8.7.5
- _ZN13socket_fd_api29notify_epoll_context_add_ringEP4ring@Base 8.7.5
- _ZN13socket_fd_api32notify_epoll_context_remove_ringEP4ring@Base 8.7.5
- _ZN13socket_fd_api36notify_epoll_context_fd_is_offloadedEv@Base 8.7.5
- _ZN13socket_fd_api4bindEPK8sockaddrj@Base 8.7.5
- _ZN13socket_fd_api5rx_osE9rx_call_tP5iovecliP8sockaddrPjP6msghdr@Base 8.7.5
- _ZN13socket_fd_api5tx_osE9tx_call_tPK5iovecliPK8sockaddrj@Base 8.7.5
- _ZN13socket_fd_api6acceptEP8sockaddrPj@Base 8.7.5
- _ZN13socket_fd_api6listenEi@Base 8.7.5
- _ZN13socket_fd_api7accept4EP8sockaddrPji@Base 8.7.5
- _ZN13socket_fd_api7connectEPK8sockaddrj@Base 8.7.5
- _ZN13socket_fd_api8shutdownEi@Base 8.7.5
- _ZN13socket_fd_apiC1Ei@Base 8.7.5
- _ZN13socket_fd_apiC2Ei@Base 8.7.5
- _ZN13socket_fd_apiD0Ev@Base 8.7.5
- _ZN13socket_fd_apiD1Ev@Base 8.7.5
- _ZN13socket_fd_apiD2Ev@Base 8.7.5
- _ZN13state_machine13process_eventEiPv@Base 8.7.5
- _ZN13state_machine14get_curr_stateEv@Base 8.7.5
- _ZN13state_machine15lock_in_processEiPv@Base 8.7.5
- _ZN13state_machine17unlock_in_processEv@Base 8.7.5
- _ZN13state_machine20process_sparse_tableEP21sm_short_table_line_tPFvRK9sm_info_tES6_S6_@Base 8.7.5
- _ZN13state_machineC1EPviiiP21sm_short_table_line_tPFvRK9sm_info_tES7_S7_PFviiS0_E@Base 8.7.5
- _ZN13state_machineC2EPviiiP21sm_short_table_line_tPFvRK9sm_info_tES7_S7_PFviiS0_E@Base 8.7.5
- _ZN13state_machineD1Ev@Base 8.7.5
- _ZN13state_machineD2Ev@Base 8.7.5
- _ZN13user_params_tD1Ev@Base 8.7.5
- _ZN13user_params_tD2Ev@Base 8.7.5
- _ZN13vma_allocator13hugetlb_allocEm@Base 8.7.5
- _ZN13vma_allocator15register_memoryEmP14ib_ctx_handlerm@Base 8.7.5
- _ZN13vma_allocator16alloc_and_reg_mrEmP14ib_ctx_handlerPv@Base 8.7.5
- _ZN13vma_allocator17deregister_memoryEv@Base 8.7.5
- _ZN13vma_allocator18hugetlb_mmap_allocEv@Base 8.7.5
- _ZN13vma_allocator18hugetlb_sysv_allocEv@Base 8.7.5
- _ZN13vma_allocator19align_simple_mallocEm@Base 8.7.5
- _ZN13vma_allocatorC1Ev@Base 8.7.5
- _ZN13vma_allocatorC2Ev@Base 8.7.5
- _ZN13vma_allocatorD1Ev@Base 8.7.5
- _ZN13vma_allocatorD2Ev@Base 8.7.5
- _ZN13vma_exceptionD0Ev@Base 8.7.5
- _ZN13vma_exceptionD1Ev@Base 8.7.5
- _ZN13vma_exceptionD2Ev@Base 8.7.5
- _ZN14cache_observer9notify_cbEP5event@Base 8.7.5
- _ZN14cache_observerD0Ev@Base 8.7.5
- _ZN14cache_observerD1Ev@Base 8.7.5
- _ZN14cache_observerD2Ev@Base 8.7.5
- _ZN14ib_ctx_handler11get_mem_regEj@Base 8.7.5
- _ZN14ib_ctx_handler11post_umr_wrER15ibv_exp_send_wr@Base 8.7.5
- _ZN14ib_ctx_handler13create_umr_qpEv@Base 8.7.5
- _ZN14ib_ctx_handler23handle_event_ibverbs_cbEPvS0_@Base 8.7.5
- _ZN14ib_ctx_handler23set_flow_tag_capabilityEb@Base 8.7.5
- _ZN14ib_ctx_handler25handle_event_device_fatalEv@Base 8.7.5
- _ZN14ib_ctx_handler29get_ctx_time_converter_statusEv@Base 8.7.5
- _ZN14ib_ctx_handler7mem_regEPvmm@Base 8.7.5
- _ZN14ib_ctx_handler7set_strEv@Base 8.7.5
- _ZN14ib_ctx_handler9is_activeEi@Base 8.7.5
- _ZN14ib_ctx_handler9mem_deregEj@Base 8.7.5
- _ZN14ib_ctx_handler9print_valEv@Base 8.7.5
- _ZN14ib_ctx_handlerC1EPNS_19ib_ctx_handler_descE@Base 8.7.5
- _ZN14ib_ctx_handlerC2EPNS_19ib_ctx_handler_descE@Base 8.7.5
- _ZN14ib_ctx_handlerD0Ev@Base 8.7.5
- _ZN14ib_ctx_handlerD1Ev@Base 8.7.5
- _ZN14ib_ctx_handlerD2Ev@Base 8.7.5
- _ZN14neigh_nl_eventC1EP8nlmsghdrP10rtnl_neighPv@Base 8.7.5
- _ZN14neigh_nl_eventC2EP8nlmsghdrP10rtnl_neighPv@Base 8.7.5
- _ZN14neigh_nl_eventD0Ev@Base 8.7.5
- _ZN14neigh_nl_eventD1Ev@Base 8.7.5
- _ZN14neigh_nl_eventD2Ev@Base 8.7.5
- _ZN14net_device_val12release_ringEP21ring_alloc_logic_attr@Base 8.7.5
- _ZN14net_device_val12reserve_ringEP21ring_alloc_logic_attr@Base 8.7.5
- _ZN14net_device_val12set_ip_arrayEv@Base 8.7.5
- _ZN14net_device_val15set_slave_arrayEv@Base 8.7.5
- _ZN14net_device_val18verify_qp_creationEPKc11ibv_qp_type@Base 8.7.5
- _ZN14net_device_val19verify_bonding_modeEv@Base 8.7.5
- _ZN14net_device_val19verify_enable_ipoibEPKc@Base 8.7.5
- _ZN14net_device_val20update_active_slavesEv@Base 8.7.5
- _ZN14net_device_val20update_netvsc_slavesEii@Base 8.7.5
- _ZN14net_device_val23ring_drain_and_proccessEv@Base 8.7.5
- _ZN14net_device_val24get_priority_by_tc_classEj@Base 8.7.5
- _ZN14net_device_val24get_ring_key_redirectionEP21ring_alloc_logic_attr@Base 8.8.1
- _ZN14net_device_val24get_up_and_active_slavesEPbm@Base 8.7.5
- _ZN14net_device_val24ring_adapt_cq_moderationEv@Base 8.7.5
- _ZN14net_device_val26register_to_ibverbs_eventsEP21event_handler_ibverbs@Base 8.7.5
- _ZN14net_device_val27update_active_backup_slavesEv@Base 8.7.5
- _ZN14net_device_val28ring_key_redirection_releaseEP21ring_alloc_logic_attr@Base 8.7.5
- _ZN14net_device_val28ring_key_redirection_reserveEP21ring_alloc_logic_attr@Base 8.7.5
- _ZN14net_device_val28unregister_to_ibverbs_eventsEP21event_handler_ibverbs@Base 8.7.5
- _ZN14net_device_val31verify_ipoib_or_eth_qp_creationEPKc@Base 8.7.5
- _ZN14net_device_val32global_ring_request_notificationEm@Base 8.7.5
- _ZN14net_device_val36global_ring_poll_and_process_elementEPmPv@Base 8.7.5
- _ZN14net_device_val36verify_bond_ipoib_or_eth_qp_creationEv@Base 8.7.5
- _ZN14net_device_val6to_strB5cxx11Ev@Base 8.7.5
- _ZN14net_device_val7set_strEv@Base 8.7.5
- _ZN14net_device_val9get_slaveEi@Base 8.7.5
- _ZN14net_device_val9print_valEv@Base 8.7.5
- _ZN14net_device_valC1EPNS_19net_device_val_descE@Base 8.7.5
- _ZN14net_device_valC2EPNS_19net_device_val_descE@Base 8.7.5
- _ZN14net_device_valD0Ev@Base 8.7.5
- _ZN14net_device_valD1Ev@Base 8.7.5
- _ZN14net_device_valD2Ev@Base 8.7.5
- _ZN14rfs_uc_tcp_gro18rx_dispatch_packetEP14mem_buf_desc_tPv@Base 8.7.5
- _ZN14rfs_uc_tcp_gro5flushEPv@Base 8.7.5
- _ZN14rfs_uc_tcp_groC1EP10flow_tupleP10ring_slaveP15rfs_rule_filterj@Base 8.7.5
- _ZN14rfs_uc_tcp_groC2EP10flow_tupleP10ring_slaveP15rfs_rule_filterj@Base 8.7.5
- _ZN14rfs_uc_tcp_groD0Ev@Base 8.7.5
- _ZN14rfs_uc_tcp_groD1Ev@Base 8.7.5
- _ZN14rfs_uc_tcp_groD2Ev@Base 8.7.5
- _ZN14route_nl_eventC1EP8nlmsghdrP10rtnl_routePv@Base 8.7.5
- _ZN14route_nl_eventC2EP8nlmsghdrP10rtnl_routePv@Base 8.7.5
- _ZN14route_nl_eventD0Ev@Base 8.7.5
- _ZN14route_nl_eventD1Ev@Base 8.7.5
- _ZN14route_nl_eventD2Ev@Base 8.7.5
- _ZN14rule_table_mgr10parse_attrEP6rtattrP8rule_val@Base 8.7.5
- _ZN14rule_table_mgr10update_tblEv@Base 8.7.5
- _ZN14rule_table_mgr11parse_enrtyEP8nlmsghdrP8rule_val@Base 8.7.5
- _ZN14rule_table_mgr12rule_resolveE20route_rule_table_keyRSt5dequeIhSaIhEE@Base 8.7.5
- _ZN14rule_table_mgr12update_entryEP10rule_entry@Base 8.7.5
- _ZN14rule_table_mgr13find_rule_valE20route_rule_table_keyRPSt5dequeIP8rule_valSaIS3_EE@Base 8.7.5
- _ZN14rule_table_mgr16create_new_entryE20route_rule_table_keyPK8observer@Base 8.7.5
- _ZN14rule_table_mgr16is_matching_ruleE20route_rule_table_keyP8rule_val@Base 8.7.5
- _ZN14rule_table_mgrC1Ev@Base 8.7.5
- _ZN14rule_table_mgrC2Ev@Base 8.7.5
- _ZN14rule_table_mgrD0Ev@Base 8.7.5
- _ZN14rule_table_mgrD1Ev@Base 8.7.5
- _ZN14rule_table_mgrD2Ev@Base 8.7.5
- _ZN14time_converter27get_single_converter_statusEP11ibv_context@Base 8.7.5
- _ZN14time_converter28get_devices_converter_statusEPP10ibv_devicei@Base 8.7.5
- _ZN14time_converter9clean_objEv@Base 8.7.5
- _ZN15cache_table_mgrI10ip_addressP14net_device_valE16get_data_from_dbEv@Base 8.7.5
- _ZN15cache_table_mgrI10ip_addressP14net_device_valE17get_entry_from_dbES0_@Base 8.7.5
- _ZN15cache_table_mgrI10ip_addressP14net_device_valE17register_observerES0_PK14cache_observerPP19cache_entry_subjectIS0_S2_E@Base 8.7.5
- _ZN15cache_table_mgrI10ip_addressP14net_device_valE19unregister_observerES0_PK14cache_observer@Base 8.7.5
- _ZN15cache_table_mgrI10ip_addressP14net_device_valE20handle_timer_expiredEPv@Base 8.7.5
- _ZN15cache_table_mgrI10ip_addressP14net_device_valE21run_garbage_collectorEv@Base 8.7.5
- _ZN15cache_table_mgrI10ip_addressP14net_device_valE22stop_garbage_collectorEv@Base 8.7.5
- _ZN15cache_table_mgrI10ip_addressP14net_device_valE23start_garbage_collectorEi@Base 8.7.5
- _ZN15cache_table_mgrI10ip_addressP14net_device_valE25try_to_remove_cache_entryERNSt3tr18__detail19_Hashtable_iteratorISt4pairIKS0_P19cache_entry_subjectIS0_S2_EELb0ELb0EEE@Base 8.7.5
- _ZN15cache_table_mgrI10ip_addressP14net_device_valED0Ev@Base 8.7.5
- _ZN15cache_table_mgrI10ip_addressP14net_device_valED1Ev@Base 8.7.5
- _ZN15cache_table_mgrI10ip_addressP14net_device_valED2Ev@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyP9route_valE16get_data_from_dbEv@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyP9route_valE17get_entry_from_dbES0_@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyP9route_valE17register_observerES0_PK14cache_observerPP19cache_entry_subjectIS0_S2_E@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyP9route_valE19unregister_observerES0_PK14cache_observer@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyP9route_valE20handle_timer_expiredEPv@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyP9route_valE21run_garbage_collectorEv@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyP9route_valE22stop_garbage_collectorEv@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyP9route_valE23start_garbage_collectorEi@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyP9route_valE25try_to_remove_cache_entryERNSt3tr18__detail19_Hashtable_iteratorISt4pairIKS0_P19cache_entry_subjectIS0_S2_EELb0ELb0EEE@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyP9route_valED0Ev@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyP9route_valED1Ev@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyP9route_valED2Ev@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE16get_data_from_dbEv@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE17get_entry_from_dbES0_@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE17register_observerES0_PK14cache_observerPP19cache_entry_subjectIS0_S6_E@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE19unregister_observerES0_PK14cache_observer@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE20handle_timer_expiredEPv@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE21run_garbage_collectorEv@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE22stop_garbage_collectorEv@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE23start_garbage_collectorEi@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE25try_to_remove_cache_entryERNSt3tr18__detail19_Hashtable_iteratorISt4pairIKS0_P19cache_entry_subjectIS0_S6_EELb0ELb0EEE@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEED0Ev@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEED1Ev@Base 8.7.5
- _ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEED2Ev@Base 8.7.5
- _ZN15cache_table_mgrI9neigh_keyP9neigh_valE16get_data_from_dbEv@Base 8.7.5
- _ZN15cache_table_mgrI9neigh_keyP9neigh_valE17get_entry_from_dbES0_@Base 8.7.5
- _ZN15cache_table_mgrI9neigh_keyP9neigh_valE19unregister_observerES0_PK14cache_observer@Base 8.7.5
- _ZN15cache_table_mgrI9neigh_keyP9neigh_valE20handle_timer_expiredEPv@Base 8.7.5
- _ZN15cache_table_mgrI9neigh_keyP9neigh_valE21run_garbage_collectorEv@Base 8.7.5
- _ZN15cache_table_mgrI9neigh_keyP9neigh_valE22stop_garbage_collectorEv@Base 8.7.5
- _ZN15cache_table_mgrI9neigh_keyP9neigh_valE23start_garbage_collectorEi@Base 8.7.5
- _ZN15cache_table_mgrI9neigh_keyP9neigh_valE25try_to_remove_cache_entryERNSt3tr18__detail19_Hashtable_iteratorISt4pairIKS0_P19cache_entry_subjectIS0_S2_EELb0ELb0EEE@Base 8.7.5
- _ZN15cache_table_mgrI9neigh_keyP9neigh_valE9get_entryES0_@Base 8.7.5
- _ZN15cache_table_mgrI9neigh_keyP9neigh_valED0Ev@Base 8.7.5
- _ZN15cache_table_mgrI9neigh_keyP9neigh_valED1Ev@Base 8.7.5
- _ZN15cache_table_mgrI9neigh_keyP9neigh_valED2Ev@Base 8.7.5
- _ZN15command_netlink20handle_timer_expiredEPv@Base 8.7.5
- _ZN15command_netlink7executeEv@Base 8.7.5
- _ZN15command_netlinkD0Ev@Base 8.7.5
- _ZN15command_netlinkD1Ev@Base 8.7.5
- _ZN15command_netlinkD2Ev@Base 8.7.5
- _ZN15cq_channel_infoD0Ev@Base 8.7.5
- _ZN15cq_channel_infoD1Ev@Base 8.7.5
- _ZN15cq_channel_infoD2Ev@Base 8.7.5
- _ZN15epoll_wait_call10is_timeoutERK7timeval@Base 8.7.5
- _ZN15epoll_wait_call13set_efd_readyEii@Base 8.7.5
- _ZN15epoll_wait_call13set_rfd_readyEi@Base 8.7.5
- _ZN15epoll_wait_call13set_wfd_readyEi@Base 8.7.5
- _ZN15epoll_wait_call16immidiate_returnERi@Base 8.7.5
- _ZN15epoll_wait_call16prepare_to_blockEv@Base 8.7.5
- _ZN15epoll_wait_call18get_current_eventsEv@Base 8.7.5
- _ZN15epoll_wait_call18handle_epoll_eventEbjP13socket_fd_apii@Base 8.7.5
- _ZN15epoll_wait_call18init_offloaded_fdsEv@Base 8.7.5
- _ZN15epoll_wait_call19handle_os_countdownERi@Base 8.7.5
- _ZN15epoll_wait_call23set_offloaded_rfd_readyEi@Base 8.7.5
- _ZN15epoll_wait_call23set_offloaded_wfd_readyEi@Base 8.7.5
- _ZN15epoll_wait_call25ring_request_notificationEv@Base 8.7.5
- _ZN15epoll_wait_call27check_all_offloaded_socketsEv@Base 8.7.5
- _ZN15epoll_wait_call29ring_poll_and_process_elementEv@Base 8.7.5
- _ZN15epoll_wait_call46ring_wait_for_notification_and_process_elementEPv@Base 8.7.5
- _ZN15epoll_wait_call4lockEv@Base 8.7.5
- _ZN15epoll_wait_call4waitERK7timeval@Base 8.7.5
- _ZN15epoll_wait_call5_waitEi@Base 8.7.5
- _ZN15epoll_wait_call6unlockEv@Base 8.7.5
- _ZN15epoll_wait_call7wait_osEb@Base 8.7.5
- _ZN15epoll_wait_callC1EP11epoll_eventPN11io_mux_call16offloaded_mode_tEiS1_iiPK10__sigset_t@Base 8.7.5
- _ZN15epoll_wait_callC2EP11epoll_eventPN11io_mux_call16offloaded_mode_tEiS1_iiPK10__sigset_t@Base 8.7.5
- _ZN15epoll_wait_callD0Ev@Base 8.7.5
- _ZN15epoll_wait_callD1Ev@Base 8.7.5
- _ZN15epoll_wait_callD2Ev@Base 8.7.5
- _ZN15ip_frag_manager13new_frag_descER13ip_frag_key_t@Base 8.7.5
- _ZN15ip_frag_manager14free_frag_descEP12ip_frag_desc@Base 8.7.5
- _ZN15ip_frag_manager14free_hole_descEP17ip_frag_hole_desc@Base 8.7.5
- _ZN15ip_frag_manager15alloc_frag_descEv@Base 8.7.5
- _ZN15ip_frag_manager15alloc_hole_descEv@Base 8.7.5
- _ZN15ip_frag_manager16print_statisticsEv@Base 8.7.5
- _ZN15ip_frag_manager17destroy_frag_descEP12ip_frag_desc@Base 8.7.5
- _ZN15ip_frag_manager19free_frag_resourcesEv@Base 8.7.5
- _ZN15ip_frag_manager20handle_timer_expiredEPv@Base 8.7.5
- _ZN15ip_frag_manager24return_buffers_to_ownersERKSt3mapIP10ring_slaveP14mem_buf_desc_tSt4lessIS2_ESaISt4pairIKS2_S4_EEE@Base 8.7.5
- _ZN15ip_frag_manager8add_fragEP5iphdrP14mem_buf_desc_tPS3_@Base 8.7.5
- _ZN15ip_frag_manager9free_fragEP14mem_buf_desc_t@Base 8.7.5
- _ZN15ip_frag_managerC1Ev@Base 8.7.5
- _ZN15ip_frag_managerC2Ev@Base 8.7.5
- _ZN15ip_frag_managerD0Ev@Base 8.7.5
- _ZN15ip_frag_managerD1Ev@Base 8.7.5
- _ZN15ip_frag_managerD2Ev@Base 8.7.5
- _ZN15neigh_send_dataD0Ev@Base 8.7.5
- _ZN15neigh_send_dataD1Ev@Base 8.7.5
- _ZN15neigh_send_dataD2Ev@Base 8.7.5
- _ZN15neigh_send_infoD0Ev@Base 8.7.5
- _ZN15neigh_send_infoD1Ev@Base 8.7.5
- _ZN15neigh_send_infoD2Ev@Base 8.7.5
- _ZN15neigh_table_mgr16create_new_entryE9neigh_keyPK8observer@Base 8.7.5
- _ZN15neigh_table_mgr17register_observerE9neigh_keyPK14cache_observerPP19cache_entry_subjectIS0_P9neigh_valE@Base 8.7.5
- _ZN15neigh_table_mgr9notify_cbEP5event@Base 8.7.5
- _ZN15neigh_table_mgrC1Ev@Base 8.7.5
- _ZN15neigh_table_mgrC2Ev@Base 8.7.5
- _ZN15neigh_table_mgrD0Ev@Base 8.7.5
- _ZN15neigh_table_mgrD1Ev@Base 8.7.5
- _ZN15neigh_table_mgrD2Ev@Base 8.7.5
- _ZN15netlink_wrapper10unregisterE20e_netlink_event_typePK8observer@Base 8.7.5
- _ZN15netlink_wrapper11get_channelEv@Base 8.7.5
- _ZN15netlink_wrapper12open_channelEv@Base 8.7.5
- _ZN15netlink_wrapper13handle_eventsEv@Base 8.7.5
- _ZN15netlink_wrapper14register_eventE20e_netlink_event_typePK8observer@Base 8.7.5
- _ZN15netlink_wrapper16notify_observersEP13netlink_event20e_netlink_event_type@Base 8.7.5
- _ZN15netlink_wrapper19link_cache_callbackEP9nl_object@Base 8.7.5
- _ZN15netlink_wrapper19neigh_timer_expiredEv@Base 8.7.5
- _ZN15netlink_wrapper20neigh_cache_callbackEP9nl_object@Base 8.7.5
- _ZN15netlink_wrapper20route_cache_callbackEP9nl_object@Base 8.7.5
- _ZN15netlink_wrapper26notify_neigh_cache_entriesEv@Base 8.7.5
- _ZN15netlink_wrapper9get_neighEPKciP18netlink_neigh_info@Base 8.7.5
- _ZN15netlink_wrapperC1Ev@Base 8.7.5
- _ZN15netlink_wrapperC2Ev@Base 8.7.5
- _ZN15netlink_wrapperD0Ev@Base 8.7.5
- _ZN15netlink_wrapperD1Ev@Base 8.7.5
- _ZN15netlink_wrapperD2Ev@Base 8.7.5
- _ZN15pkt_sndr_sourceD0Ev@Base 8.7.5
- _ZN15pkt_sndr_sourceD1Ev@Base 8.7.5
- _ZN15pkt_sndr_sourceD2Ev@Base 8.7.5
- _ZN15qp_mgr_eth_mlx512send_to_wireEP11ibv_send_wr21vma_wr_tx_packet_attrb@Base 8.7.5
- _ZN15qp_mgr_eth_mlx514init_rx_cq_mgrEP16ibv_comp_channel@Base 8.7.5
- _ZN15qp_mgr_eth_mlx514init_tx_cq_mgrEv@Base 8.7.5
- _ZN15qp_mgr_eth_mlx515dm_release_dataEP14mem_buf_desc_t@Base 8.7.5
- _ZN15qp_mgr_eth_mlx516post_recv_bufferEP14mem_buf_desc_t@Base 8.7.5
- _ZN15qp_mgr_eth_mlx518is_completion_needEv@Base 8.7.5
- _ZN15qp_mgr_eth_mlx52upEv@Base 8.7.5
- _ZN15qp_mgr_eth_mlx539trigger_completion_for_all_sent_packetsEv@Base 8.7.5
- _ZN15qp_mgr_eth_mlx54downEv@Base 8.7.5
- _ZN15qp_mgr_eth_mlx57init_sqEv@Base 8.7.5
- _ZN15qp_mgr_eth_mlx5C1EPK11ring_simplePK14ib_ctx_handlerhP16ibv_comp_channeljtb@Base 8.7.5
- _ZN15qp_mgr_eth_mlx5C2EPK11ring_simplePK14ib_ctx_handlerhP16ibv_comp_channeljtb@Base 8.7.5
- _ZN15qp_mgr_eth_mlx5D0Ev@Base 8.7.5
- _ZN15qp_mgr_eth_mlx5D1Ev@Base 8.7.5
- _ZN15qp_mgr_eth_mlx5D2Ev@Base 8.7.5
- _ZN15route_table_mgr10parse_attrEP6rtattrP9route_val@Base 8.7.5
- _ZN15route_table_mgr10update_tblEv@Base 8.7.5
- _ZN15route_table_mgr11parse_enrtyEP8nlmsghdrP9route_val@Base 8.7.5
- _ZN15route_table_mgr12update_entryEP11route_entryb@Base 8.7.5
- _ZN15route_table_mgr13route_resolveE20route_rule_table_keyR12route_result@Base 8.7.5
- _ZN15route_table_mgr14find_route_valERjhRP9route_val@Base 8.7.5
- _ZN15route_table_mgr15new_route_eventEP9route_val@Base 8.7.5
- _ZN15route_table_mgr16create_new_entryE20route_rule_table_keyPK8observer@Base 8.7.5
- _ZN15route_table_mgr22update_invalid_entriesEv@Base 8.7.5
- _ZN15route_table_mgr23rt_mgr_update_source_ipEv@Base 8.7.5
- _ZN15route_table_mgr9notify_cbEP5event@Base 8.7.5
- _ZN15route_table_mgrC1Ev@Base 8.7.5
- _ZN15route_table_mgrC2Ev@Base 8.7.5
- _ZN15route_table_mgrD0Ev@Base 8.7.5
- _ZN15route_table_mgrD1Ev@Base 8.7.5
- _ZN15route_table_mgrD2Ev@Base 8.7.5
- _ZN15sysctl_reader_t11sysctl_readEPKciS1_z@Base 8.7.5
- _ZN16dst_entry_udp_mc12set_src_addrEv@Base 8.7.5
- _ZN16dst_entry_udp_mc15get_net_dev_valEv@Base 8.7.5
- _ZN16dst_entry_udp_mc15resolve_net_devEb@Base 8.7.5
- _ZN16dst_entry_udp_mc26conf_l2_hdr_and_snd_wqe_ibEv@Base 8.7.5
- _ZN16dst_entry_udp_mcC1EjttjbR11socket_dataR21ring_alloc_logic_attr@Base 8.7.5
- _ZN16dst_entry_udp_mcC2EjttjbR11socket_dataR21ring_alloc_logic_attr@Base 8.7.5
- _ZN16dst_entry_udp_mcD0Ev@Base 8.7.5
- _ZN16dst_entry_udp_mcD1Ev@Base 8.7.5
- _ZN16dst_entry_udp_mcD2Ev@Base 8.7.5
- _ZN16net_device_entry20handle_timer_expiredEPv@Base 8.7.5
- _ZN16net_device_entry23handle_event_ibverbs_cbEPvS0_@Base 8.7.5
- _ZN16net_device_entry7get_valERP14net_device_val@Base 8.7.5
- _ZN16net_device_entryC1EjP14net_device_val@Base 8.7.5
- _ZN16net_device_entryC2EjP14net_device_val@Base 8.7.5
- _ZN16net_device_entryD0Ev@Base 8.7.5
- _ZN16net_device_entryD1Ev@Base 8.7.5
- _ZN16net_device_entryD2Ev@Base 8.7.5
- _ZN16ring_bond_netvsc12slave_createEi@Base 8.7.5
- _ZN16ring_bond_netvscC1Ei@Base 8.7.5
- _ZN16ring_bond_netvscC2Ei@Base 8.7.5
- _ZN16ring_bond_netvscD0Ev@Base 8.7.5
- _ZN16ring_bond_netvscD1Ev@Base 8.7.5
- _ZN16ring_bond_netvscD2Ev@Base 8.7.5
- _ZN16wqe_send_handler15init_inline_wqeER11ibv_send_wrP7ibv_sgej@Base 8.7.5
- _ZN16wqe_send_handler19init_not_inline_wqeER11ibv_send_wrP7ibv_sgej@Base 8.7.5
- _ZN16wqe_send_handler8init_wqeER11ibv_send_wrP7ibv_sgej@Base 8.7.5
- _ZN16wqe_send_handlerC1Ev@Base 8.7.5
- _ZN16wqe_send_handlerC2Ev@Base 8.7.5
- _ZN16wqe_send_handlerD0Ev@Base 8.7.5
- _ZN16wqe_send_handlerD1Ev@Base 8.7.5
- _ZN16wqe_send_handlerD2Ev@Base 8.7.5
- _ZN17net_device_val_ib11create_ringEP21ring_alloc_logic_attr@Base 8.7.5
- _ZN17net_device_val_ib17create_L2_addressEPKc@Base 8.7.5
- _ZN17net_device_val_ib17create_br_addressEPKc@Base 8.7.5
- _ZN17net_device_val_ib6to_strB5cxx11Ev@Base 8.7.5
- _ZN17net_device_val_ib9configureEv@Base 8.7.5
- _ZN17net_device_val_ibD0Ev@Base 8.7.5
- _ZN17net_device_val_ibD1Ev@Base 8.7.5
- _ZN17net_device_val_ibD2Ev@Base 8.7.5
- _ZN17netlink_link_info4fillEP9rtnl_link@Base 8.7.5
- _ZN17netlink_link_infoC1EP9rtnl_link@Base 8.7.5
- _ZN17netlink_link_infoC2EP9rtnl_link@Base 8.7.5
- _ZN17netlink_link_infoD0Ev@Base 8.7.5
- _ZN17netlink_link_infoD1Ev@Base 8.7.5
- _ZN17netlink_link_infoD2Ev@Base 8.7.5
- _ZN17stats_data_reader15add_data_readerEPvS0_i@Base 8.7.5
- _ZN17stats_data_reader15pop_data_readerEPv@Base 8.7.5
- _ZN17stats_data_reader17register_to_timerEv@Base 8.7.5
- _ZN17stats_data_reader20handle_timer_expiredEPv@Base 8.7.5
- _ZN17stats_data_readerC1Ev@Base 8.7.5
- _ZN17stats_data_readerC2Ev@Base 8.7.5
- _ZN17stats_data_readerD0Ev@Base 8.7.5
- _ZN17stats_data_readerD1Ev@Base 8.7.5
- _ZN17stats_data_readerD2Ev@Base 8.7.5
- _ZN18header_pcp_updater12update_fieldER9dst_entry@Base 8.7.5
- _ZN18header_pcp_updaterC1Eh@Base 8.7.5
- _ZN18header_pcp_updaterC2Eh@Base 8.7.5
- _ZN18header_pcp_updaterD0Ev@Base 8.7.5
- _ZN18header_pcp_updaterD1Ev@Base 8.7.5
- _ZN18header_pcp_updaterD2Ev@Base 8.7.5
- _ZN18header_tos_updater12update_fieldER9dst_entry@Base 8.7.5
- _ZN18header_tos_updaterC1Eh@Base 8.7.5
- _ZN18header_tos_updaterC2Eh@Base 8.7.5
- _ZN18header_tos_updaterD0Ev@Base 8.7.5
- _ZN18header_tos_updaterD1Ev@Base 8.7.5
- _ZN18header_tos_updaterD2Ev@Base 8.7.5
- _ZN18header_ttl_updater12update_fieldER9dst_entry@Base 8.7.5
- _ZN18header_ttl_updaterC1Ehb@Base 8.7.5
- _ZN18header_ttl_updaterC2Ehb@Base 8.7.5
- _ZN18header_ttl_updaterD0Ev@Base 8.7.5
- _ZN18header_ttl_updaterD1Ev@Base 8.7.5
- _ZN18header_ttl_updaterD2Ev@Base 8.7.5
- _ZN18neigh_ib_broadcast12is_deletableEv@Base 8.7.5
- _ZN18neigh_ib_broadcast13get_peer_infoEP9neigh_val@Base 8.7.5
- _ZN18neigh_ib_broadcast18build_mc_neigh_valEv@Base 8.7.5
- _ZN18neigh_ib_broadcast4sendER15neigh_send_info@Base 8.7.5
- _ZN18neigh_ib_broadcast8send_arpEv@Base 8.7.5
- _ZN18neigh_ib_broadcastC1E9neigh_key@Base 8.7.5
- _ZN18neigh_ib_broadcastC2E9neigh_key@Base 8.7.5
- _ZN18neigh_ib_broadcastD0Ev@Base 8.7.5
- _ZN18neigh_ib_broadcastD1Ev@Base 8.7.5
- _ZN18neigh_ib_broadcastD2Ev@Base 8.7.5
- _ZN18net_device_val_eth11create_ringEP21ring_alloc_logic_attr@Base 8.7.5
- _ZN18net_device_val_eth17create_L2_addressEPKc@Base 8.7.5
- _ZN18net_device_val_eth17create_br_addressEPKc@Base 8.7.5
- _ZN18net_device_val_eth21parse_prio_egress_mapEv@Base 8.7.5
- _ZN18net_device_val_eth6to_strB5cxx11Ev@Base 8.7.5
- _ZN18net_device_val_eth9configureEv@Base 8.7.5
- _ZN18net_device_val_ethD0Ev@Base 8.7.5
- _ZN18net_device_val_ethD1Ev@Base 8.7.5
- _ZN18net_device_val_ethD2Ev@Base 8.7.5
- _ZN18netlink_neigh_info4fillEP10rtnl_neigh@Base 8.7.5
- _ZN18netlink_neigh_infoC1EP10rtnl_neigh@Base 8.7.5
- _ZN18netlink_neigh_infoC2EP10rtnl_neigh@Base 8.7.5
- _ZN18netlink_neigh_infoD0Ev@Base 8.7.5
- _ZN18netlink_neigh_infoD1Ev@Base 8.7.5
- _ZN18netlink_neigh_infoD2Ev@Base 8.7.5
- _ZN18netlink_route_info4fillEP10rtnl_route@Base 8.7.5
- _ZN18netlink_route_infoC1EP10rtnl_route@Base 8.7.5
- _ZN18netlink_route_infoC2EP10rtnl_route@Base 8.7.5
- _ZN18netlink_route_infoD1Ev@Base 8.7.5
- _ZN18netlink_route_infoD2Ev@Base 8.7.5
- _ZN18netlink_socket_mgrI8rule_valE10update_tblEv@Base 8.7.5
- _ZN18netlink_socket_mgrI8rule_valE13print_val_tblEv@Base 8.7.5
- _ZN18netlink_socket_mgrI8rule_valE9recv_infoEv@Base 8.7.5
- _ZN18netlink_socket_mgrI8rule_valEC1E9nl_data_t@Base 8.7.5
- _ZN18netlink_socket_mgrI8rule_valEC2E9nl_data_t@Base 8.7.5
- _ZN18netlink_socket_mgrI8rule_valED0Ev@Base 8.7.5
- _ZN18netlink_socket_mgrI8rule_valED1Ev@Base 8.7.5
- _ZN18netlink_socket_mgrI8rule_valED2Ev@Base 8.7.5
- _ZN18netlink_socket_mgrI9route_valE10update_tblEv@Base 8.7.5
- _ZN18netlink_socket_mgrI9route_valE13print_val_tblEv@Base 8.7.5
- _ZN18netlink_socket_mgrI9route_valE9recv_infoEv@Base 8.7.5
- _ZN18netlink_socket_mgrI9route_valEC1E9nl_data_t@Base 8.7.5
- _ZN18netlink_socket_mgrI9route_valEC2E9nl_data_t@Base 8.7.5
- _ZN18netlink_socket_mgrI9route_valED0Ev@Base 8.7.5
- _ZN18netlink_socket_mgrI9route_valED1Ev@Base 8.7.5
- _ZN18netlink_socket_mgrI9route_valED2Ev@Base 8.7.5
- _ZN19cache_entry_subjectI10ip_addressP14net_device_valE12is_deletableEv@Base 8.7.5
- _ZN19cache_entry_subjectI20route_rule_table_keyP9route_valE12is_deletableEv@Base 8.7.5
- _ZN19cache_entry_subjectI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE12is_deletableEv@Base 8.7.5
- _ZN19lock_spin_recursive4lockEv@Base 8.7.5
- _ZN19lock_spin_recursive6unlockEv@Base 8.7.5
- _ZN19lock_spin_recursive7trylockEv@Base 8.7.5
- _ZN19lock_spin_recursiveD0Ev@Base 8.7.5
- _ZN19lock_spin_recursiveD1Ev@Base 8.7.5
- _ZN19lock_spin_recursiveD2Ev@Base 8.7.5
- _ZN19vma_unsupported_apiD0Ev@Base 8.7.5
- _ZN19vma_unsupported_apiD1Ev@Base 8.7.5
- _ZN19vma_unsupported_apiD2Ev@Base 8.7.5
- _ZN19wqe_send_ib_handler11init_ib_wqeER11ibv_send_wrP7ibv_sgejP6ibv_ahjj@Base 8.7.5
- _ZN19wqe_send_ib_handler16init_path_recordER11ibv_send_wrP6ibv_ahjj@Base 8.7.5
- _ZN19wqe_send_ib_handler18init_inline_ib_wqeER11ibv_send_wrP7ibv_sgejP6ibv_ahjj@Base 8.7.5
- _ZN19wqe_send_ib_handler22init_not_inline_ib_wqeER11ibv_send_wrP7ibv_sgejP6ibv_ahjj@Base 8.7.5
- _ZN19wqe_send_ib_handlerC1Ev@Base 8.7.5
- _ZN19wqe_send_ib_handlerC2Ev@Base 8.7.5
- _ZN19wqe_send_ib_handlerD0Ev@Base 8.7.5
- _ZN19wqe_send_ib_handlerD1Ev@Base 8.7.5
- _ZN19wqe_send_ib_handlerD2Ev@Base 8.7.5
- _ZN20lock_mutex_recursiveD0Ev@Base 8.7.5
- _ZN20lock_mutex_recursiveD1Ev@Base 8.7.5
- _ZN20lock_mutex_recursiveD2Ev@Base 8.7.5
- _ZN20net_device_table_mgr10update_tblEv@Base 8.7.5
- _ZN20net_device_table_mgr11get_ip_listB5cxx11Ei@Base 8.7.5
- _ZN20net_device_table_mgr11get_max_mtuEv@Base 8.7.5
- _ZN20net_device_table_mgr11set_max_mtuEj@Base 8.7.5
- _ZN20net_device_table_mgr13print_val_tblEv@Base 8.7.5
- _ZN20net_device_table_mgr14del_link_eventEPK17netlink_link_info@Base 8.7.5
- _ZN20net_device_table_mgr14new_link_eventEPK17netlink_link_info@Base 8.7.5
- _ZN20net_device_table_mgr16create_new_entryE10ip_addressPK8observer@Base 8.7.5
- _ZN20net_device_table_mgr18get_net_device_valEi@Base 8.7.5
- _ZN20net_device_table_mgr18get_net_device_valEj@Base 8.7.5
- _ZN20net_device_table_mgr18global_ring_wakeupEv@Base 8.7.5
- _ZN20net_device_table_mgr19free_ndtm_resourcesEv@Base 8.7.5
- _ZN20net_device_table_mgr20global_ring_epfd_getEv@Base 8.7.5
- _ZN20net_device_table_mgr20handle_timer_expiredEPv@Base 8.7.5
- _ZN20net_device_table_mgr29global_ring_drain_and_proccesEv@Base 8.7.5
- _ZN20net_device_table_mgr31global_ring_adapt_cq_moderationEv@Base 8.7.5
- _ZN20net_device_table_mgr32global_ring_request_notificationEm@Base 8.7.5
- _ZN20net_device_table_mgr36global_ring_poll_and_process_elementEPmPv@Base 8.7.5
- _ZN20net_device_table_mgr53global_ring_wait_for_notification_and_process_elementEPmPv@Base 8.7.5
- _ZN20net_device_table_mgr6to_strB5cxx11Ev@Base 8.7.5
- _ZN20net_device_table_mgr9notify_cbEP5event@Base 8.7.5
- _ZN20net_device_table_mgrC1Ev@Base 8.7.5
- _ZN20net_device_table_mgrC2Ev@Base 8.7.5
- _ZN20net_device_table_mgrD0Ev@Base 8.7.5
- _ZN20net_device_table_mgrD1Ev@Base 8.7.5
- _ZN20net_device_table_mgrD2Ev@Base 8.7.5
- _ZN20route_rule_table_keyD0Ev@Base 8.7.5
- _ZN20route_rule_table_keyD1Ev@Base 8.7.5
- _ZN20route_rule_table_keyD2Ev@Base 8.7.5
- _ZN21event_handler_manager11stop_threadEv@Base 8.7.5
- _ZN21event_handler_manager11thread_loopEv@Base 8.7.5
- _ZN21event_handler_manager11update_epfdEiii@Base 8.7.5
- _ZN21event_handler_manager12start_threadEv@Base 8.7.5
- _ZN21event_handler_manager14reg_action_strE19event_action_type_e@Base 8.7.5
- _ZN21event_handler_manager16statistics_printEi13vlog_levels_t@Base 8.8.1
- _ZN21event_handler_manager18free_evh_resourcesEv@Base 8.7.5
- _ZN21event_handler_manager18wakeup_timer_eventEP13timer_handlerPv@Base 8.7.5
- _ZN21event_handler_manager19post_new_reg_actionER12reg_action_t@Base 8.7.5
- _ZN21event_handler_manager20register_timer_eventEiP13timer_handler16timer_req_type_tPvP12timers_group@Base 8.7.5
- _ZN21event_handler_manager21process_ibverbs_eventERSt17_Rb_tree_iteratorISt4pairIKi12event_data_tEE@Base 8.7.5
- _ZN21event_handler_manager21process_rdma_cm_eventERSt17_Rb_tree_iteratorISt4pairIKi12event_data_tEE@Base 8.7.5
- _ZN21event_handler_manager22register_command_eventEiP7command@Base 8.7.5
- _ZN21event_handler_manager22register_ibverbs_eventEiP21event_handler_ibverbsPvS2_@Base 8.7.5
- _ZN21event_handler_manager22register_rdma_cm_eventEiPvS0_P21event_handler_rdma_cm@Base 8.7.5
- _ZN21event_handler_manager22unregister_timer_eventEP13timer_handlerPv@Base 8.7.5
- _ZN21event_handler_manager23query_for_ibverbs_eventEi@Base 8.7.5
- _ZN21event_handler_manager24unregister_command_eventEi@Base 8.7.5
- _ZN21event_handler_manager24unregister_ibverbs_eventEiP21event_handler_ibverbs@Base 8.7.5
- _ZN21event_handler_manager24unregister_rdma_cm_eventEiPv@Base 8.7.5
- _ZN21event_handler_manager25priv_wakeup_timer_handlerER16timer_reg_info_t@Base 8.7.5
- _ZN21event_handler_manager26handle_registration_actionER12reg_action_t@Base 8.7.5
- _ZN21event_handler_manager27priv_register_timer_handlerER16timer_reg_info_t@Base 8.7.5
- _ZN21event_handler_manager28priv_register_command_eventsER18command_reg_info_t@Base 8.7.5
- _ZN21event_handler_manager28priv_register_ibverbs_eventsER18ibverbs_reg_info_t@Base 8.7.5
- _ZN21event_handler_manager28priv_register_rdma_cm_eventsER18rdma_cm_reg_info_t@Base 8.7.5
- _ZN21event_handler_manager29priv_unregister_timer_handlerER16timer_reg_info_t@Base 8.7.5
- _ZN21event_handler_manager30priv_unregister_command_eventsER18command_reg_info_t@Base 8.7.5
- _ZN21event_handler_manager30priv_unregister_ibverbs_eventsER18ibverbs_reg_info_t@Base 8.7.5
- _ZN21event_handler_manager30priv_unregister_rdma_cm_eventsER18rdma_cm_reg_info_t@Base 8.7.5
- _ZN21event_handler_manager34priv_unregister_all_handler_timersER16timer_reg_info_t@Base 8.7.5
- _ZN21event_handler_manager34unregister_timers_event_and_deleteEP13timer_handler@Base 8.7.5
- _ZN21event_handler_manager38priv_prepare_ibverbs_async_event_queueERSt17_Rb_tree_iteratorISt4pairIKi12event_data_tEE@Base 8.7.5
- _ZN21event_handler_managerC1Ev@Base 8.7.5
- _ZN21event_handler_managerC2Ev@Base 8.7.5
- _ZN21event_handler_managerD0Ev@Base 8.7.5
- _ZN21event_handler_managerD1Ev@Base 8.7.5
- _ZN21event_handler_managerD2Ev@Base 8.7.5
- _ZN21ring_alloc_logic_attr15set_user_id_keyEm@Base 8.7.5
- _ZN21ring_alloc_logic_attr20set_ring_alloc_logicE12ring_logic_t@Base 8.7.5
- _ZN21ring_alloc_logic_attr20set_ring_profile_keyEi@Base 8.7.5
- _ZN21ring_alloc_logic_attr21set_memory_descriptorER5iovec@Base 8.7.5
- _ZN21ring_alloc_logic_attr4initEv@Base 8.7.5
- _ZN21ring_alloc_logic_attrC1E12ring_logic_t@Base 8.7.5
- _ZN21ring_alloc_logic_attrC1ERKS_@Base 8.7.5
- _ZN21ring_alloc_logic_attrC1Ev@Base 8.7.5
- _ZN21ring_alloc_logic_attrC2E12ring_logic_t@Base 8.7.5
- _ZN21ring_alloc_logic_attrC2ERKS_@Base 8.7.5
- _ZN21ring_alloc_logic_attrC2Ev@Base 8.7.5
- _ZN21ring_allocation_logic14create_new_keyEji@Base 8.7.5
- _ZN21ring_allocation_logic19should_migrate_ringEv@Base 8.7.5
- _ZN21ring_allocation_logic21calc_res_key_by_logicEv@Base 8.7.5
- _ZN21ring_allocation_logicC1E12ring_logic_ti8source_tR21ring_alloc_logic_attr@Base 8.7.5
- _ZN21ring_allocation_logicC1Ev@Base 8.7.5
- _ZN21ring_allocation_logicC2E12ring_logic_ti8source_tR21ring_alloc_logic_attr@Base 8.7.5
- _ZN21ring_allocation_logicC2Ev@Base 8.7.5
- _ZN21tcp_timers_collection12remove_timerEP12timer_node_t@Base 8.7.5
- _ZN21tcp_timers_collection13add_new_timerEP12timer_node_tP13timer_handlerPv@Base 8.7.5
- _ZN21tcp_timers_collection18free_tta_resourcesEv@Base 8.7.5
- _ZN21tcp_timers_collection20handle_timer_expiredEPv@Base 8.7.5
- _ZN21tcp_timers_collection9clean_objEv@Base 8.7.5
- _ZN21tcp_timers_collectionC1Eii@Base 8.7.5
- _ZN21tcp_timers_collectionC2Eii@Base 8.7.5
- _ZN21tcp_timers_collectionD0Ev@Base 8.7.5
- _ZN21tcp_timers_collectionD1Ev@Base 8.7.5
- _ZN21tcp_timers_collectionD2Ev@Base 8.7.5
- _ZN21time_converter_ib_ctx11sync_clocksEP8timespecPm@Base 8.7.5
- _ZN21time_converter_ib_ctx18get_hca_core_clockEv@Base 8.7.5
- _ZN21time_converter_ib_ctx20handle_timer_expiredEPv@Base 8.7.5
- _ZN21time_converter_ib_ctx22fix_hw_clock_deviationEv@Base 8.7.5
- _ZN21time_converter_ib_ctx30convert_hw_time_to_system_timeEmP8timespec@Base 8.7.5
- _ZN21time_converter_ib_ctxC1EP11ibv_context20ts_conversion_mode_tm@Base 8.7.5
- _ZN21time_converter_ib_ctxC2EP11ibv_context20ts_conversion_mode_tm@Base 8.7.5
- _ZN21time_converter_ib_ctxD0Ev@Base 8.7.5
- _ZN21time_converter_ib_ctxD1Ev@Base 8.7.5
- _ZN21time_converter_ib_ctxD2Ev@Base 8.7.5
- _ZN21vlogger_timer_handler20handle_timer_expiredEPv@Base 8.7.5
- _ZN21vlogger_timer_handlerC1Ev@Base 8.7.5
- _ZN21vlogger_timer_handlerC2Ev@Base 8.7.5
- _ZN21vlogger_timer_handlerD0Ev@Base 8.7.5
- _ZN21vlogger_timer_handlerD1Ev@Base 8.7.5
- _ZN21vlogger_timer_handlerD2Ev@Base 8.7.5
- _ZN24flow_tuple_with_local_if4hashEv@Base 8.7.5
- _ZN24flow_tuple_with_local_if7set_strEv@Base 8.7.5
- _ZN24flow_tuple_with_local_ifD0Ev@Base 8.7.5
- _ZN24flow_tuple_with_local_ifD1Ev@Base 8.7.5
- _ZN24flow_tuple_with_local_ifD2Ev@Base 8.7.5
- _ZN24ring_profiles_collection11add_profileEP18vma_ring_type_attr@Base 8.7.5
- _ZN24ring_profiles_collection11get_profileEi@Base 8.7.5
- _ZN24ring_profiles_collectionC1Ev@Base 8.7.5
- _ZN24ring_profiles_collectionC2Ev@Base 8.7.5
- _ZN24ring_profiles_collectionD1Ev@Base 8.7.5
- _ZN24ring_profiles_collectionD2Ev@Base 8.7.5
- _ZN25ib_ctx_handler_collection10del_ib_ctxEP14ib_ctx_handler@Base 8.7.5
- _ZN25ib_ctx_handler_collection10get_ib_ctxEPKc@Base 8.7.5
- _ZN25ib_ctx_handler_collection10update_tblEPKc@Base 8.7.5
- _ZN25ib_ctx_handler_collection13print_val_tblEv@Base 8.7.5
- _ZN25ib_ctx_handler_collectionC1Ev@Base 8.7.5
- _ZN25ib_ctx_handler_collectionC2Ev@Base 8.7.5
- _ZN25ib_ctx_handler_collectionD1Ev@Base 8.7.5
- _ZN25ib_ctx_handler_collectionD2Ev@Base 8.7.5
- _ZN3rfs11attach_flowEP13pkt_rcvr_sink@Base 8.7.5
- _ZN3rfs11detach_flowEP13pkt_rcvr_sink@Base 8.7.5
- _ZN3rfs15create_ibv_flowEv@Base 8.7.5
- _ZN3rfs16destroy_ibv_flowEv@Base 8.7.5
- _ZN3rfs6to_strEv@Base 8.7.5
- _ZN3rfs8add_sinkEP13pkt_rcvr_sink@Base 8.7.5
- _ZN3rfs8del_sinkEP13pkt_rcvr_sink@Base 8.7.5
- _ZN3rfsC1EP10flow_tupleP10ring_slaveP15rfs_rule_filterj@Base 8.7.5
- _ZN3rfsC2EP10flow_tupleP10ring_slaveP15rfs_rule_filterj@Base 8.7.5
- _ZN3rfsD0Ev@Base 8.7.5
- _ZN3rfsD1Ev@Base 8.7.5
- _ZN3rfsD2Ev@Base 8.7.5
- _ZN4ring6reg_mrEPvmRj@Base 8.7.5
- _ZN4ring8dereg_mrEPvm@Base 8.7.5
- _ZN4ring9print_valEv@Base 8.7.5
- _ZN4ringC1Ev@Base 8.7.5
- _ZN4ringC2Ev@Base 8.7.5
- _ZN4ringD0Ev@Base 8.7.5
- _ZN4ringD1Ev@Base 8.7.5
- _ZN4ringD2Ev@Base 8.7.5
- _ZN5agent10check_linkEv@Base 8.7.5
- _ZN5agent11progress_cbEv@Base 8.7.5
- _ZN5agent11register_cbEPFvPvES0_@Base 8.7.5
- _ZN5agent13send_msg_exitEv@Base 8.7.5
- _ZN5agent13send_msg_flowEP12vma_msg_flow@Base 8.7.5
- _ZN5agent13send_msg_initEv@Base 8.7.5
- _ZN5agent13unregister_cbEPFvPvES0_@Base 8.7.5
- _ZN5agent19create_agent_socketEv@Base 8.7.5
- _ZN5agent3putEPKvml@Base 8.7.5
- _ZN5agent4sendEP9agent_msg@Base 8.7.5
- _ZN5agent8progressEv@Base 8.7.5
- _ZN5agentC1Ev@Base 8.7.5
- _ZN5agentC2Ev@Base 8.7.5
- _ZN5agentD0Ev@Base 8.7.5
- _ZN5agentD1Ev@Base 8.7.5
- _ZN5agentD2Ev@Base 8.7.5
- _ZN5timer12remove_timerEP12timer_node_tP13timer_handler@Base 8.7.5
- _ZN5timer12wakeup_timerEP12timer_node_t@Base 8.7.5
- _ZN5timer13add_new_timerEjP12timer_node_tP13timer_handlerPv16timer_req_type_t@Base 8.7.5
- _ZN5timer14insert_to_listEP12timer_node_t@Base 8.7.5
- _ZN5timer14update_timeoutEv@Base 8.7.5
- _ZN5timer16remove_from_listEP12timer_node_t@Base 8.7.5
- _ZN5timer17remove_all_timersEP13timer_handler@Base 8.7.5
- _ZN5timer25process_registered_timersEv@Base 8.7.5
- _ZN5timerC1Ev@Base 8.7.5
- _ZN5timerC2Ev@Base 8.7.5
- _ZN5timerD1Ev@Base 8.7.5
- _ZN5timerD2Ev@Base 8.7.5
- _ZN6cq_mgr12get_cq_eventEv@Base 8.7.5
- _ZN6cq_mgr13m_n_global_snE@Base 8.7.5
- _ZN6cq_mgr13req_notify_cqEv@Base 8.7.5
- _ZN6cq_mgr14get_channel_fdEv@Base 8.7.5
- _ZN6cq_mgr15get_ibv_cq_hndlEv@Base 8.7.5
- _ZN6cq_mgr16statistics_printEv@Base 8.7.5
- _ZN6cq_mgr17m_n_cq_id_counterE@Base 8.7.5
- _ZN6cq_mgr18drain_and_proccessEPm@Base 8.7.5
- _ZN6cq_mgr20reclaim_recv_buffersEP10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEE@Base 8.7.5
- _ZN6cq_mgr20reclaim_recv_buffersEP14mem_buf_desc_t@Base 8.7.5
- _ZN6cq_mgr20request_more_buffersEv@Base 8.7.5
- _ZN6cq_mgr20request_notificationEm@Base 8.7.5
- _ZN6cq_mgr20return_extra_buffersEv@Base 8.7.5
- _ZN6cq_mgr21process_cq_element_rxEP6ibv_wc@Base 8.7.5
- _ZN6cq_mgr21process_cq_element_txEP6ibv_wc@Base 8.7.5
- _ZN6cq_mgr22fill_cq_hw_descriptorsER10hw_cq_data@Base 8.7.5
- _ZN6cq_mgr22process_tx_buffer_listEP14mem_buf_desc_t@Base 8.7.5
- _ZN6cq_mgr26compensate_qp_poll_successEP14mem_buf_desc_t@Base 8.7.5
- _ZN6cq_mgr26reclaim_recv_buffer_helperEP14mem_buf_desc_t@Base 8.7.5
- _ZN6cq_mgr26reclaim_recv_single_bufferEP14mem_buf_desc_t@Base 8.8.1
- _ZN6cq_mgr27poll_and_process_element_rxEPP14mem_buf_desc_t@Base 8.8.1
- _ZN6cq_mgr27poll_and_process_element_rxEPmPv@Base 8.7.5
- _ZN6cq_mgr27poll_and_process_element_txEPm@Base 8.7.5
- _ZN6cq_mgr28mem_buf_desc_return_to_ownerEP14mem_buf_desc_tPv@Base 8.7.5
- _ZN6cq_mgr28reclaim_recv_buffers_no_lockEP14mem_buf_desc_t@Base 8.8.1
- _ZN6cq_mgr29process_cq_element_log_helperEP14mem_buf_desc_tP6ibv_wc@Base 8.7.5
- _ZN6cq_mgr34mem_buf_desc_completion_with_errorEP14mem_buf_desc_t@Base 8.7.5
- _ZN6cq_mgr41wait_for_notification_and_process_elementEPmPv@Base 8.7.5
- _ZN6cq_mgr4pollEP6ibv_wciPm@Base 8.7.5
- _ZN6cq_mgr8clean_cqEv@Base 8.7.5
- _ZN6cq_mgr9add_qp_rxEP6qp_mgr@Base 8.7.5
- _ZN6cq_mgr9add_qp_txEP6qp_mgr@Base 8.7.5
- _ZN6cq_mgr9configureEi@Base 8.7.5
- _ZN6cq_mgr9del_qp_rxEP6qp_mgr@Base 8.7.5
- _ZN6cq_mgrC1EP11ring_simpleP14ib_ctx_handleriP16ibv_comp_channelbb@Base 8.7.5
- _ZN6cq_mgrC2EP11ring_simpleP14ib_ctx_handleriP16ibv_comp_channelbb@Base 8.7.5
- _ZN6cq_mgrD0Ev@Base 8.7.5
- _ZN6cq_mgrD1Ev@Base 8.7.5
- _ZN6cq_mgrD2Ev@Base 8.7.5
- _ZN6header10set_ip_tosEh@Base 8.7.5
- _ZN6header10set_ip_ttlEh@Base 8.7.5
- _ZN6header12set_vlan_pcpEh@Base 8.7.5
- _ZN6header19configure_ip_headerEhjjhht@Base 8.7.5
- _ZN6header19configure_tcp_portsEtt@Base 8.7.5
- _ZN6header20configure_udp_headerEtt@Base 8.7.5
- _ZN6header21configure_eth_headersERK10L2_addressS2_t@Base 8.7.5
- _ZN6header21set_mac_to_eth_headerERK10L2_addressS2_R6ethhdr@Base 8.7.5
- _ZN6header22update_actual_hdr_addrEv@Base 8.7.5
- _ZN6header23configure_ipoib_headersEj@Base 8.7.5
- _ZN6header26configure_vlan_eth_headersERK10L2_addressS2_tt@Base 8.7.5
- _ZN6header4initEv@Base 8.7.5
- _ZN6headerC1ERKS_@Base 8.7.5
- _ZN6headerC1Ev@Base 8.7.5
- _ZN6headerC2ERKS_@Base 8.7.5
- _ZN6headerC2Ev@Base 8.7.5
- _ZN6headerD0Ev@Base 8.7.5
- _ZN6headerD1Ev@Base 8.7.5
- _ZN6headerD2Ev@Base 8.7.5
- _ZN6qp_mgr12send_to_wireEP11ibv_send_wr21vma_wr_tx_packet_attrb@Base 8.7.5
- _ZN6qp_mgr14init_rx_cq_mgrEP16ibv_comp_channel@Base 8.7.5
- _ZN6qp_mgr14init_tx_cq_mgrEv@Base 8.7.5
- _ZN6qp_mgr14post_qp_createEv@Base 8.7.5
- _ZN6qp_mgr15dm_release_dataEP14mem_buf_desc_t@Base 8.7.5
- _ZN6qp_mgr16post_recv_bufferEP14mem_buf_desc_t@Base 8.7.5
- _ZN6qp_mgr17get_rx_max_wr_numEv@Base 8.7.5
- _ZN6qp_mgr17post_recv_buffersEP10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEEm@Base 8.7.5
- _ZN6qp_mgr18is_completion_needEv@Base 8.7.5
- _ZN6qp_mgr18release_rx_buffersEv@Base 8.7.5
- _ZN6qp_mgr18release_tx_buffersEv@Base 8.7.5
- _ZN6qp_mgr19fill_hw_descriptorsER22vma_mlx_hw_device_data@Base 8.7.5
- _ZN6qp_mgr19is_ratelimit_changeER16vma_rate_limit_t@Base 8.7.5
- _ZN6qp_mgr19modify_qp_ratelimitER16vma_rate_limit_tj@Base 8.7.5
- _ZN6qp_mgr22is_ratelimit_supportedEP15ibv_device_attrR16vma_rate_limit_t@Base 8.7.5
- _ZN6qp_mgr24handle_cq_initializationEPjP16ibv_comp_channelb@Base 8.7.5
- _ZN6qp_mgr24modify_qp_to_error_stateEv@Base 8.7.5
- _ZN6qp_mgr2upEv@Base 8.7.5
- _ZN6qp_mgr39trigger_completion_for_all_sent_packetsEv@Base 8.7.5
- _ZN6qp_mgr4downEv@Base 8.7.5
- _ZN6qp_mgr4sendEP11ibv_send_wr21vma_wr_tx_packet_attr@Base 8.7.5
- _ZN6qp_mgr9configureEP16ibv_comp_channel@Base 8.7.5
- _ZN6qp_mgrC1EPK11ring_simplePK14ib_ctx_handlerhj@Base 8.7.5
- _ZN6qp_mgrC2EPK11ring_simplePK14ib_ctx_handlerhj@Base 8.7.5
- _ZN6qp_mgrD0Ev@Base 8.7.5
- _ZN6qp_mgrD1Ev@Base 8.7.5
- _ZN6qp_mgrD2Ev@Base 8.7.5
- _ZN6rfs_mc17prepare_flow_specEv@Base 8.7.5
- _ZN6rfs_mc18rx_dispatch_packetEP14mem_buf_desc_tPv@Base 8.7.5
- _ZN6rfs_mcC1EP10flow_tupleP10ring_slaveP15rfs_rule_filteri@Base 8.7.5
- _ZN6rfs_mcC2EP10flow_tupleP10ring_slaveP15rfs_rule_filteri@Base 8.7.5
- _ZN6rfs_mcD0Ev@Base 8.7.5
- _ZN6rfs_mcD1Ev@Base 8.7.5
- _ZN6rfs_mcD2Ev@Base 8.7.5
- _ZN6rfs_uc17prepare_flow_specEv@Base 8.7.5
- _ZN6rfs_uc18rx_dispatch_packetEP14mem_buf_desc_tPv@Base 8.7.5
- _ZN6rfs_ucC1EP10flow_tupleP10ring_slaveP15rfs_rule_filterj@Base 8.7.5
- _ZN6rfs_ucC2EP10flow_tupleP10ring_slaveP15rfs_rule_filterj@Base 8.7.5
- _ZN6rfs_ucD0Ev@Base 8.7.5
- _ZN6rfs_ucD1Ev@Base 8.7.5
- _ZN6rfs_ucD2Ev@Base 8.7.5
- _ZN6wakeup14going_to_sleepEv@Base 8.7.5
- _ZN6wakeup19wakeup_set_epoll_fdEi@Base 8.7.5
- _ZN6wakeupC1Ev@Base 8.7.5
- _ZN6wakeupC2Ev@Base 8.7.5
- _ZN7gro_mgr13is_stream_maxEv@Base 8.7.5
- _ZN7gro_mgr14reserve_streamEP14rfs_uc_tcp_gro@Base 8.7.5
- _ZN7gro_mgr9flush_allEPv@Base 8.7.5
- _ZN7gro_mgrC1Ejj@Base 8.7.5
- _ZN7gro_mgrC2Ejj@Base 8.7.5
- _ZN7gro_mgrD0Ev@Base 8.7.5
- _ZN7gro_mgrD1Ev@Base 8.7.5
- _ZN7gro_mgrD2Ev@Base 8.7.5
- _ZN7ring_ib13create_qp_mgrEPK14ib_ctx_handlerhP16ibv_comp_channel@Base 8.7.5
- _ZN7ring_ib22is_ratelimit_supportedER16vma_rate_limit_t@Base 8.7.5
- _ZN7ring_ibD0Ev@Base 8.7.5
- _ZN7ring_ibD1Ev@Base 8.7.5
- _ZN7ring_ibD2Ev@Base 8.7.5
- _ZN7sm_fifo8is_emptyEv@Base 8.7.5
- _ZN7sm_fifo9pop_frontEv@Base 8.7.5
- _ZN7sm_fifo9push_backEiPv@Base 8.7.5
- _ZN7subject16notify_observersEP5event@Base 8.7.5
- _ZN7subject17register_observerEPK8observer@Base 8.7.5
- _ZN7subject19unregister_observerEPK8observer@Base 8.7.5
- _ZN7subjectD0Ev@Base 8.7.5
- _ZN7subjectD1Ev@Base 8.7.5
- _ZN7subjectD2Ev@Base 8.7.5
- _ZN8ETH_addrD0Ev@Base 8.7.5
- _ZN8ETH_addrD1Ev@Base 8.7.5
- _ZN8ETH_addrD2Ev@Base 8.7.5
- _ZN8hash_mapI19flow_spec_tcp_key_tP3rfsE3setERKS0_S2_@Base 8.7.5
- _ZN8hash_mapI19flow_spec_tcp_key_tP3rfsED0Ev@Base 8.7.5
- _ZN8hash_mapI19flow_spec_tcp_key_tP3rfsED1Ev@Base 8.7.5
- _ZN8hash_mapI19flow_spec_tcp_key_tP3rfsED2Ev@Base 8.7.5
- _ZN8hash_mapI19flow_spec_udp_key_tP3rfsE3setERKS0_S2_@Base 8.7.5
- _ZN8hash_mapI19flow_spec_udp_key_tP3rfsED0Ev@Base 8.7.5
- _ZN8hash_mapI19flow_spec_udp_key_tP3rfsED1Ev@Base 8.7.5
- _ZN8hash_mapI19flow_spec_udp_key_tP3rfsED2Ev@Base 8.7.5
- _ZN8hash_mapI7ibv_gidjED0Ev@Base 8.7.5
- _ZN8hash_mapI7ibv_gidjED1Ev@Base 8.7.5
- _ZN8hash_mapI7ibv_gidjED2Ev@Base 8.7.5
- _ZN8igmp_mgr16get_igmp_handlerERK9neigh_keyh@Base 8.7.5
- _ZN8igmp_mgr19process_igmp_packetEP5iphdrj@Base 8.7.5
- _ZN8igmp_mgrD0Ev@Base 8.7.5
- _ZN8igmp_mgrD1Ev@Base 8.7.5
- _ZN8igmp_mgrD2Ev@Base 8.7.5
- _ZN8neigh_ib10destroy_ahEv@Base 8.7.5
- _ZN8neigh_ib13post_send_arpEb@Base 8.7.5
- _ZN8neigh_ib16priv_enter_errorEv@Base 8.7.5
- _ZN8neigh_ib16priv_enter_readyEv@Base 8.7.5
- _ZN8neigh_ib18build_mc_neigh_valEP13rdma_cm_eventRj@Base 8.7.5
- _ZN8neigh_ib18build_uc_neigh_valEP13rdma_cm_eventRj@Base 8.7.5
- _ZN8neigh_ib20handle_timer_expiredEPv@Base 8.7.5
- _ZN8neigh_ib21ibverbs_event_mappingEPv@Base 8.7.5
- _ZN8neigh_ib21priv_enter_not_activeEv@Base 8.7.5
- _ZN8neigh_ib22prepare_to_send_packetEP6header@Base 8.7.5
- _ZN8neigh_ib23handle_event_ibverbs_cbEPvS0_@Base 8.7.5
- _ZN8neigh_ib23priv_enter_arp_resolvedEv@Base 8.7.5
- _ZN8neigh_ib24priv_enter_path_resolvedEP13rdma_cm_eventRj@Base 8.7.5
- _ZN8neigh_ib25dofunc_enter_arp_resolvedERK9sm_info_t@Base 8.7.5
- _ZN8neigh_ib26dofunc_enter_path_resolvedERK9sm_info_t@Base 8.7.5
- _ZN8neigh_ib28handle_enter_arp_resolved_mcEv@Base 8.7.5
- _ZN8neigh_ib28handle_enter_arp_resolved_ucEv@Base 8.7.5
- _ZN8neigh_ib31priv_handle_neigh_is_l2_changedEPh@Base 8.7.5
- _ZN8neigh_ib7find_pdEv@Base 8.7.5
- _ZN8neigh_ib9create_ahEv@Base 8.7.5
- _ZN8neigh_ibC1E9neigh_keyb@Base 8.7.5
- _ZN8neigh_ibC2E9neigh_keyb@Base 8.7.5
- _ZN8neigh_ibD0Ev@Base 8.7.5
- _ZN8neigh_ibD1Ev@Base 8.7.5
- _ZN8neigh_ibD2Ev@Base 8.7.5
- _ZN8observer9notify_cbEP5event@Base 8.7.5
- _ZN8observer9notify_cbEv@Base 8.7.5
- _ZN8pipeinfo16save_stats_rx_osEi@Base 8.7.5
- _ZN8pipeinfo16save_stats_tx_osEi@Base 8.7.5
- _ZN8pipeinfo16statistics_printEv@Base 8.7.5
- _ZN8pipeinfo20handle_timer_expiredEPv@Base 8.7.5
- _ZN8pipeinfo22write_lbm_pipe_enhanceEv@Base 8.7.5
- _ZN8pipeinfo2rxE9rx_call_tP5ioveclPiP8sockaddrPjP6msghdr@Base 8.7.5
- _ZN8pipeinfo2txE9tx_call_tPK5iovecliPK8sockaddrj@Base 8.7.5
- _ZN8pipeinfo5fcntlEim@Base 8.7.5
- _ZN8pipeinfo5ioctlEmm@Base 8.7.5
- _ZN8pipeinfo8get_typeEv@Base 8.7.5
- _ZN8pipeinfo9clean_objEv@Base 8.7.5
- _ZN8pipeinfoC1Ei@Base 8.7.5
- _ZN8pipeinfoC2Ei@Base 8.7.5
- _ZN8pipeinfoD0Ev@Base 8.7.5
- _ZN8pipeinfoD1Ev@Base 8.7.5
- _ZN8pipeinfoD2Ev@Base 8.7.5
- _ZN8ring_eth13create_qp_mgrEPK14ib_ctx_handlerhP16ibv_comp_channel@Base 8.7.5
- _ZN8ring_eth22is_ratelimit_supportedER16vma_rate_limit_t@Base 8.7.5
- _ZN8ring_ethD0Ev@Base 8.7.5
- _ZN8ring_ethD1Ev@Base 8.7.5
- _ZN8ring_ethD2Ev@Base 8.7.5
- _ZN8ring_tap10tap_createEP14net_device_val@Base 8.7.5
- _ZN8ring_tap11attach_flowER10flow_tupleP13pkt_rcvr_sink@Base 8.7.5
- _ZN8ring_tap11detach_flowER10flow_tupleP13pkt_rcvr_sink@Base 8.7.5
- _ZN8ring_tap11send_bufferEP11ibv_send_wr21vma_wr_tx_packet_attr@Base 8.7.5
- _ZN8ring_tap11tap_destroyEv@Base 8.7.5
- _ZN8ring_tap14mem_buf_tx_getEibi@Base 8.7.5
- _ZN8ring_tap15is_socketxtremeEv@Base 8.8.1
- _ZN8ring_tap16flow_tcp_del_allEv@Base 8.7.5
- _ZN8ring_tap16flow_udp_del_allEv@Base 8.7.5
- _ZN8ring_tap16modify_ratelimitER16vma_rate_limit_t@Base 8.7.5
- _ZN8ring_tap16send_lwip_bufferEiP11ibv_send_wr21vma_wr_tx_packet_attr@Base 8.7.5
- _ZN8ring_tap16send_ring_bufferEiP11ibv_send_wr21vma_wr_tx_packet_attr@Base 8.7.5
- _ZN8ring_tap17get_max_tx_inlineEv@Base 8.7.5
- _ZN8ring_tap17rx_process_bufferEP14mem_buf_desc_tPv@Base 8.7.5
- _ZN8ring_tap17socketxtreme_pollEP16vma_completion_tji@Base 8.8.1
- _ZN8ring_tap18drain_and_proccessEv@Base 8.7.5
- _ZN8ring_tap18mem_buf_tx_releaseEP14mem_buf_desc_tbb@Base 8.7.5
- _ZN8ring_tap18process_element_rxEPv@Base 8.7.5
- _ZN8ring_tap19adapt_cq_moderationEv@Base 8.7.5
- _ZN8ring_tap19send_status_handlerEiP11ibv_send_wr@Base 8.7.5
- _ZN8ring_tap20prepare_flow_messageER12vma_msg_flow10msg_flow_t@Base 8.7.5
- _ZN8ring_tap20prepare_flow_messageER12vma_msg_flow10msg_flow_tR10flow_tuple@Base 8.7.5
- _ZN8ring_tap20reclaim_recv_buffersEP10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEE@Base 8.7.5
- _ZN8ring_tap20reclaim_recv_buffersEP14mem_buf_desc_t@Base 8.7.5
- _ZN8ring_tap20request_notificationE9cq_type_tm@Base 8.7.5
- _ZN8ring_tap22is_ratelimit_supportedER16vma_rate_limit_t@Base 8.7.5
- _ZN8ring_tap23request_more_rx_buffersEv@Base 8.7.5
- _ZN8ring_tap23request_more_tx_buffersEv@Base 8.7.5
- _ZN8ring_tap25get_hw_dummy_send_supportEiP11ibv_send_wr@Base 8.7.5
- _ZN8ring_tap26reclaim_recv_single_bufferEP14mem_buf_desc_t@Base 8.8.1
- _ZN8ring_tap27poll_and_process_element_rxEPmPv@Base 8.7.5
- _ZN8ring_tap38mem_buf_desc_return_single_to_owner_txEP14mem_buf_desc_t@Base 8.7.5
- _ZN8ring_tap41wait_for_notification_and_process_elementEiPmPv@Base 8.7.5
- _ZN8ring_tap5is_upEv@Base 8.7.5
- _ZN8ring_tap6del_ecEP7ring_ec@Base 8.8.1
- _ZN8ring_tap6put_ecEP7ring_ec@Base 8.8.1
- _ZN8ring_tap8get_compEv@Base 8.8.1
- _ZN8ring_tapC1EiP4ring@Base 8.7.5
- _ZN8ring_tapC2EiP4ring@Base 8.7.5
- _ZN8ring_tapD0Ev@Base 8.7.5
- _ZN8ring_tapD1Ev@Base 8.7.5
- _ZN8ring_tapD2Ev@Base 8.7.5
- _ZN8rule_val7set_strEv@Base 8.7.5
- _ZN8rule_val9print_valEv@Base 8.7.5
- _ZN8rule_valC1Ev@Base 8.7.5
- _ZN8rule_valC2Ev@Base 8.7.5
- _ZN8rule_valD0Ev@Base 8.7.5
- _ZN8rule_valD1Ev@Base 8.7.5
- _ZN8rule_valD2Ev@Base 8.7.5
- _ZN8sockinfo10getsockoptEiiPvPj@Base 8.7.5
- _ZN8sockinfo10set_eventsEm@Base 8.8.1
- _ZN8sockinfo10setsockoptEiiPKvj@Base 8.7.5
- _ZN8sockinfo11check_ringsEv@Base 8.7.5
- _ZN8sockinfo11handle_cmsgEP6msghdr@Base 8.7.5
- _ZN8sockinfo11insert_cmsgEP10cmsg_stateiiPvi@Base 8.7.5
- _ZN8sockinfo11unlock_rx_qEv@Base 8.7.5
- _ZN8sockinfo12set_blockingEb@Base 8.7.5
- _ZN8sockinfo13flow_in_reuseEv@Base 8.7.5
- _ZN8sockinfo13get_rings_fdsERi@Base 8.7.5
- _ZN8sockinfo13get_rings_numEv@Base 8.7.5
- _ZN8sockinfo14rx_add_ring_cbER24flow_tuple_with_local_ifP4ringb@Base 8.7.5
- _ZN8sockinfo14rx_del_ring_cbER24flow_tuple_with_local_ifP4ringb@Base 8.7.5
- _ZN8sockinfo14rx_wait_helperERib@Base 8.7.5
- _ZN8sockinfo15attach_receiverER24flow_tuple_with_local_if@Base 8.7.5
- _ZN8sockinfo15detach_receiverER24flow_tuple_with_local_if@Base 8.7.5
- _ZN8sockinfo16handle_msg_truncEmmiPi@Base 8.7.5
- _ZN8sockinfo16modify_ratelimitEP9dst_entryR16vma_rate_limit_t@Base 8.7.5
- _ZN8sockinfo16save_stats_rx_osEi@Base 8.7.5
- _ZN8sockinfo16save_stats_tx_osEi@Base 8.7.5
- _ZN8sockinfo16set_sockopt_prioEPKvj@Base 8.7.5
- _ZN8sockinfo16statistics_printE13vlog_levels_t@Base 8.7.5
- _ZN8sockinfo17add_epoll_contextEP9epfd_info@Base 8.7.5
- _ZN8sockinfo17destructor_helperEv@Base 8.7.5
- _ZN8sockinfo17get_sock_by_L3_L4E13in_protocol_tjt@Base 8.7.5
- _ZN8sockinfo17register_callbackEPF26vma_recv_callback_retval_timP5iovecP10vma_info_tPvES5_@Base 8.7.5
- _ZN8sockinfo17setsockopt_kernelEiiPKvjib@Base 8.7.5
- _ZN8sockinfo17try_un_offloadingEv@Base 8.7.5
- _ZN8sockinfo18do_rings_migrationEv@Base 8.7.5
- _ZN8sockinfo18find_target_familyE6role_tP8sockaddrS2_@Base 8.7.5
- _ZN8sockinfo18process_timestampsEP14mem_buf_desc_t@Base 8.7.5
- _ZN8sockinfo19create_nd_resourcesE10ip_address@Base 8.7.5
- _ZN8sockinfo20destroy_nd_resourcesE10ip_address@Base 8.7.5
- _ZN8sockinfo20remove_epoll_contextEP9epfd_info@Base 8.7.5
- _ZN8sockinfo21attach_as_uc_receiverE6role_tb@Base 8.7.5
- _ZN8sockinfo21save_stats_rx_offloadEi@Base 8.7.5
- _ZN8sockinfo22get_socket_network_ptrEPvRt@Base 8.7.5
- _ZN8sockinfo24consider_rings_migrationEv@Base 8.7.5
- _ZN8sockinfo24setsockopt_so_opt_to_strEi@Base 8.7.5
- _ZN8sockinfo25move_owned_rx_ready_descsEP4ringP10vma_list_tI14mem_buf_desc_tXadL_ZNS3_18buffer_node_offsetEvEEE@Base 8.7.5
- _ZN8sockinfo5fcntlEim@Base 8.7.5
- _ZN8sockinfo5ioctlEmm@Base 8.7.5
- _ZN8sockinfo7rx_waitERib@Base 8.7.5
- _ZN8sockinfo9do_wakeupEv@Base 8.8.1
- _ZN8sockinfo9lock_rx_qEv@Base 8.7.5
- _ZN8sockinfoC1Ei@Base 8.7.5
- _ZN8sockinfoC2Ei@Base 8.7.5
- _ZN8sockinfoD0Ev@Base 8.7.5
- _ZN8sockinfoD1Ev@Base 8.7.5
- _ZN8sockinfoD2Ev@Base 8.7.5
- _ZN8vma_lwip15sockaddr2ipaddrEPK8sockaddrjR7ip_addrRt@Base 8.7.5
- _ZN8vma_lwip19free_lwip_resourcesEv@Base 8.7.5
- _ZN8vma_lwip20handle_timer_expiredEPv@Base 8.7.5
- _ZN8vma_lwip25read_tcp_timestamp_optionEv@Base 8.7.5
- _ZN8vma_lwip7sys_nowEv@Base 8.7.5
- _ZN8vma_lwipC1Ev@Base 8.7.5
- _ZN8vma_lwipC2Ev@Base 8.7.5
- _ZN8vma_lwipD0Ev@Base 8.7.5
- _ZN8vma_lwipD1Ev@Base 8.7.5
- _ZN8vma_lwipD2Ev@Base 8.7.5
- _ZN8vma_spec6to_strE10vma_spec_t@Base 8.7.5
- _ZN8vma_spec8from_intEi10vma_spec_t@Base 8.7.5
- _ZN8vma_spec8from_strEPKc10vma_spec_t@Base 8.7.5
- _ZN9dst_entry12get_dst_addrEv@Base 8.7.5
- _ZN9dst_entry12get_dst_portEv@Base 8.7.5
- _ZN9dst_entry12init_membersEv@Base 8.7.5
- _ZN9dst_entry12release_ringEv@Base 8.7.5
- _ZN9dst_entry12resolve_ringEv@Base 8.7.5
- _ZN9dst_entry12set_src_addrEv@Base 8.7.5
- _ZN9dst_entry13get_route_mtuEv@Base 8.7.5
- _ZN9dst_entry13resolve_neighEv@Base 8.7.5
- _ZN9dst_entry13update_rt_valEv@Base 8.7.5
- _ZN9dst_entry14set_bound_addrEj@Base 8.7.5
- _ZN9dst_entry15alloc_neigh_valE16transport_type_t@Base 8.7.5
- _ZN9dst_entry15get_net_dev_valEv@Base 8.7.5
- _ZN9dst_entry15prepare_to_sendER16vma_rate_limit_tbb@Base 8.7.5
- _ZN9dst_entry15resolve_net_devEb@Base 8.7.5
- _ZN9dst_entry16modify_ratelimitER16vma_rate_limit_t@Base 8.7.5
- _ZN9dst_entry16try_migrate_ringER9lock_base@Base 8.7.5
- _ZN9dst_entry17configure_headersEv@Base 8.7.5
- _ZN9dst_entry17do_ring_migrationER9lock_base@Base 8.7.5
- _ZN9dst_entry18pass_buff_to_neighEPK5iovecRmt@Base 8.7.5
- _ZN9dst_entry18update_net_dev_valEv@Base 8.7.5
- _ZN9dst_entry19configure_ip_headerEP6headert@Base 8.7.5
- _ZN9dst_entry19return_buffers_poolEv@Base 8.7.5
- _ZN9dst_entry21conf_hdrs_and_snd_wqeEv@Base 8.7.5
- _ZN9dst_entry23alloc_transport_dep_resEv@Base 8.7.5
- _ZN9dst_entry24get_priority_by_tc_classEj@Base 8.7.5
- _ZN9dst_entry24set_so_bindtodevice_addrEj@Base 8.7.5
- _ZN9dst_entry26conf_l2_hdr_and_snd_wqe_ibEv@Base 8.7.5
- _ZN9dst_entry27conf_l2_hdr_and_snd_wqe_ethEv@Base 8.7.5
- _ZN9dst_entry28offloaded_according_to_rulesEv@Base 8.7.5
- _ZN9dst_entry8init_sgeEv@Base 8.7.5
- _ZN9dst_entry9notify_cbEv@Base 8.7.5
- _ZN9dst_entryC1EjttR11socket_dataR21ring_alloc_logic_attr@Base 8.7.5
- _ZN9dst_entryC2EjttR11socket_dataR21ring_alloc_logic_attr@Base 8.7.5
- _ZN9dst_entryD0Ev@Base 8.7.5
- _ZN9dst_entryD1Ev@Base 8.7.5
- _ZN9dst_entryD2Ev@Base 8.7.5
- _ZN9epfd_info10get_fd_recEi@Base 8.7.5
- _ZN9epfd_info16statistics_printE13vlog_levels_t@Base 8.7.5
- _ZN9epfd_info18insert_epoll_eventEP13socket_fd_apij@Base 8.7.5
- _ZN9epfd_info18remove_epoll_eventEP13socket_fd_apij@Base 8.7.5
- _ZN9epfd_info21insert_epoll_event_cbEP13socket_fd_apij@Base 8.7.5
- _ZN9epfd_info21set_os_data_availableEv@Base 8.7.5
- _ZN9epfd_info23decrease_ring_ref_countEP4ring@Base 8.7.5
- _ZN9epfd_info23increase_ring_ref_countEP4ring@Base 8.7.5
- _ZN9epfd_info23remove_fd_from_epoll_osEi@Base 8.7.5
- _ZN9epfd_info25ring_request_notificationEm@Base 8.7.5
- _ZN9epfd_info27register_to_internal_threadEv@Base 8.7.5
- _ZN9epfd_info29ring_poll_and_process_elementEPmPv@Base 8.7.5
- _ZN9epfd_info30get_offloaded_fds_arr_and_sizeEPPiS1_@Base 8.7.5
- _ZN9epfd_info31get_and_unset_os_data_availableEv@Base 8.7.5
- _ZN9epfd_info3ctlEiiP11epoll_event@Base 8.7.5
- _ZN9epfd_info46ring_wait_for_notification_and_process_elementEPmPv@Base 8.7.5
- _ZN9epfd_info5statsEv@Base 8.7.5
- _ZN9epfd_info6add_fdEiP11epoll_event@Base 8.7.5
- _ZN9epfd_info6del_fdEib@Base 8.7.5
- _ZN9epfd_info6mod_fdEiP11epoll_event@Base 8.7.5
- _ZN9epfd_info8is_cq_fdEm@Base 8.7.5
- _ZN9epfd_info9clean_objEv@Base 8.7.5
- _ZN9epfd_info9fd_closedEib@Base 8.7.5
- _ZN9epfd_infoC1Eii@Base 8.7.5
- _ZN9epfd_infoC2Eii@Base 8.7.5
- _ZN9epfd_infoD0Ev@Base 8.7.5
- _ZN9epfd_infoD1Ev@Base 8.7.5
- _ZN9epfd_infoD2Ev@Base 8.7.5
- _ZN9lock_spin4lockEv@Base 8.7.5
- _ZN9lock_spin6unlockEv@Base 8.7.5
- _ZN9lock_spin7trylockEv@Base 8.7.5
- _ZN9lock_spinD0Ev@Base 8.7.5
- _ZN9lock_spinD1Ev@Base 8.7.5
- _ZN9lock_spinD2Ev@Base 8.7.5
- _ZN9neigh_eth12is_deletableEv@Base 8.7.5
- _ZN9neigh_eth13get_peer_infoEP9neigh_val@Base 8.7.5
- _ZN9neigh_eth13post_send_arpEb@Base 8.7.5
- _ZN9neigh_eth15priv_enter_initEv@Base 8.7.5
- _ZN9neigh_eth16priv_enter_readyEv@Base 8.7.5
- _ZN9neigh_eth17register_observerEPK8observer@Base 8.7.5
- _ZN9neigh_eth21generate_ring_user_idEP6header@Base 8.7.5
- _ZN9neigh_eth22prepare_to_send_packetEP6header@Base 8.7.5
- _ZN9neigh_eth26priv_enter_init_resolutionEv@Base 8.7.5
- _ZN9neigh_eth31priv_handle_neigh_is_l2_changedEPh@Base 8.7.5
- _ZN9neigh_ethC1E9neigh_key@Base 8.7.5
- _ZN9neigh_ethC2E9neigh_key@Base 8.7.5
- _ZN9neigh_ethD0Ev@Base 8.7.5
- _ZN9neigh_ethD1Ev@Base 8.7.5
- _ZN9neigh_ethD2Ev@Base 8.7.5
- _ZN9neigh_key4hashEv@Base 8.7.5
- _ZN9neigh_keyD0Ev@Base 8.7.5
- _ZN9neigh_keyD1Ev@Base 8.7.5
- _ZN9neigh_keyD2Ev@Base 8.7.5
- _ZN9neigh_val16zero_all_membersEv@Base 8.7.5
- _ZN9poll_call10is_timeoutERK7timeval@Base 8.7.5
- _ZN9poll_call13set_efd_readyEii@Base 8.7.5
- _ZN9poll_call13set_rfd_readyEi@Base 8.7.5
- _ZN9poll_call13set_wfd_readyEi@Base 8.7.5
- _ZN9poll_call16copy_to_orig_fdsEv@Base 8.7.5
- _ZN9poll_call16prepare_to_blockEv@Base 8.7.5
- _ZN9poll_call23set_offloaded_efd_readyEii@Base 8.7.5
- _ZN9poll_call23set_offloaded_rfd_readyEi@Base 8.7.5
- _ZN9poll_call23set_offloaded_wfd_readyEi@Base 8.7.5
- _ZN9poll_call4waitERK7timeval@Base 8.7.5
- _ZN9poll_call7wait_osEb@Base 8.7.5
- _ZN9poll_callC1EPiPN11io_mux_call16offloaded_mode_tES0_P6pollfdS5_miPK10__sigset_t@Base 8.7.5
- _ZN9poll_callC2EPiPN11io_mux_call16offloaded_mode_tES0_P6pollfdS5_miPK10__sigset_t@Base 8.7.5
- _ZN9poll_callD0Ev@Base 8.7.5
- _ZN9poll_callD1Ev@Base 8.7.5
- _ZN9poll_callD2Ev@Base 8.7.5
- _ZN9qp_mgr_ib14prepare_ibv_qpER19ibv_qp_init_attr_ex@Base 8.7.5
- _ZN9qp_mgr_ib17update_pkey_indexEv@Base 8.7.5
- _ZN9qp_mgr_ib24modify_qp_to_ready_stateEv@Base 8.7.5
- _ZN9qp_mgr_ibD0Ev@Base 8.7.5
- _ZN9qp_mgr_ibD1Ev@Base 8.7.5
- _ZN9qp_mgr_ibD2Ev@Base 8.7.5
- _ZN9ring_bond11attach_flowER10flow_tupleP13pkt_rcvr_sink@Base 8.7.5
- _ZN9ring_bond11detach_flowER10flow_tupleP13pkt_rcvr_sink@Base 8.7.5
- _ZN9ring_bond11generate_idEPhS0_ttjjtt@Base 8.7.5
- _ZN9ring_bond13slave_destroyEi@Base 8.7.5
- _ZN9ring_bond14mem_buf_tx_getEibi@Base 8.7.5
- _ZN9ring_bond15is_socketxtremeEv@Base 8.8.1
- _ZN9ring_bond16is_active_memberEP10ring_slavei@Base 8.7.5
- _ZN9ring_bond16modify_ratelimitER16vma_rate_limit_t@Base 8.7.5
- _ZN9ring_bond16send_lwip_bufferEiP11ibv_send_wr21vma_wr_tx_packet_attr@Base 8.7.5
- _ZN9ring_bond16send_ring_bufferEiP11ibv_send_wr21vma_wr_tx_packet_attr@Base 8.7.5
- _ZN9ring_bond17get_max_tx_inlineEv@Base 8.7.5
- _ZN9ring_bond17socketxtreme_pollEP16vma_completion_tji@Base 8.8.1
- _ZN9ring_bond18drain_and_proccessEv@Base 8.7.5
- _ZN9ring_bond18mem_buf_tx_releaseEP14mem_buf_desc_tbb@Base 8.7.5
- _ZN9ring_bond18popup_active_ringsEv@Base 8.7.5
- _ZN9ring_bond19adapt_cq_moderationEv@Base 8.7.5
- _ZN9ring_bond20reclaim_recv_buffersEP10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEE@Base 8.7.5
- _ZN9ring_bond20reclaim_recv_buffersEP14mem_buf_desc_t@Base 8.8.1
- _ZN9ring_bond20request_notificationE9cq_type_tm@Base 8.7.5
- _ZN9ring_bond20update_max_tx_inlineEP10ring_slave@Base 8.7.5
- _ZN9ring_bond21devide_buffers_helperEP10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEES3_@Base 8.7.5
- _ZN9ring_bond21devide_buffers_helperEP14mem_buf_desc_tPS1_@Base 8.7.5
- _ZN9ring_bond21update_rx_channel_fdsEv@Base 8.7.5
- _ZN9ring_bond22inc_tx_retransmissionsEi@Base 8.7.5
- _ZN9ring_bond22is_ratelimit_supportedER16vma_rate_limit_t@Base 8.7.5
- _ZN9ring_bond25get_hw_dummy_send_supportEiP11ibv_send_wr@Base 8.7.5
- _ZN9ring_bond27poll_and_process_element_rxEPmPv@Base 8.7.5
- _ZN9ring_bond38mem_buf_desc_return_single_to_owner_txEP14mem_buf_desc_t@Base 8.7.5
- _ZN9ring_bond41wait_for_notification_and_process_elementEiPmPv@Base 8.7.5
- _ZN9ring_bond6del_ecEP7ring_ec@Base 8.8.1
- _ZN9ring_bond6put_ecEP7ring_ec@Base 8.8.1
- _ZN9ring_bond7restartEv@Base 8.7.5
- _ZN9ring_bond8get_compEv@Base 8.8.1
- _ZN9ring_bond9is_memberEP10ring_slave@Base 8.7.5
- _ZN9ring_bond9print_valEv@Base 8.7.5
- _ZN9ring_bondC1Ei@Base 8.7.5
- _ZN9ring_bondC2Ei@Base 8.7.5
- _ZN9ring_bondD0Ev@Base 8.7.5
- _ZN9ring_bondD1Ev@Base 8.7.5
- _ZN9ring_bondD2Ev@Base 8.7.5
- _ZN9route_val7set_mtuEj@Base 8.7.5
- _ZN9route_val7set_strEv@Base 8.7.5
- _ZN9route_val9print_valEv@Base 8.7.5
- _ZN9route_valC1Ev@Base 8.7.5
- _ZN9route_valC2Ev@Base 8.7.5
- _ZN9route_valD0Ev@Base 8.7.5
- _ZN9route_valD1Ev@Base 8.7.5
- _ZN9route_valD2Ev@Base 8.7.5
- _ZN9send_dataC1EPK9send_info@Base 8.7.5
- _ZN9send_dataC2EPK9send_info@Base 8.7.5
- _ZN9send_dataD0Ev@Base 8.7.5
- _ZN9send_dataD1Ev@Base 8.7.5
- _ZN9send_dataD2Ev@Base 8.7.5
- _ZN9vma_errorC1EPKcS1_S1_ii@Base 8.7.5
- _ZN9vma_errorC2EPKcS1_S1_ii@Base 8.7.5
- _ZN9vma_errorD0Ev@Base 8.7.5
- _ZN9vma_errorD1Ev@Base 8.7.5
- _ZN9vma_errorD2Ev@Base 8.7.5
- _ZNK10IPoIB_addr5cloneEv@Base 8.7.5
- _ZNK10IPoIB_addr6to_strB5cxx11Ev@Base 8.7.5
- _ZNK10L2_address7compareERKS_@Base 8.7.5
- _ZNK10flow_tupleeqERKS_@Base 8.7.5
- _ZNK10flow_tupleltERKS_@Base 8.7.5
- _ZNK10ip_address6to_strB5cxx11Ev@Base 8.7.5
- _ZNK10qp_mgr_eth12get_partitonEv@Base 8.7.5
- _ZNK10ring_slave17get_num_resourcesEv@Base 8.7.5
- _ZNK10rule_entry6to_strB5cxx11Ev@Base 8.7.5
- _ZNK11neigh_entry12event_to_strENS_7event_tE@Base 8.7.5
- _ZNK11neigh_entry12state_to_strENS_7state_tE@Base 8.7.5
- _ZNK11neigh_entry6to_strB5cxx11Ev@Base 8.7.5
- _ZNK11ring_simple17get_tx_channel_fdEv@Base 8.7.5
- _ZNK11route_entry6to_strB5cxx11Ev@Base 8.7.5
- _ZNK12igmp_handler22get_obs_transport_typeEv@Base 8.7.5
- _ZNK12sockinfo_tcp20get_syn_received_pcbERK10flow_tuple@Base 8.7.5
- _ZNK13dst_entry_tcp17get_protocol_typeEv@Base 8.7.5
- _ZNK13dst_entry_udp17get_protocol_typeEv@Base 8.7.5
- _ZNK13link_nl_event6to_strB5cxx11Ev@Base 8.7.5
- _ZNK13netlink_event6to_strB5cxx11Ev@Base 8.7.5
- _ZNK13socket_fd_api6get_fdEv@Base 8.7.5
- _ZNK13vma_allocator19find_lkey_by_ib_ctxEP14ib_ctx_handler@Base 8.7.5
- _ZNK13vma_allocator21find_ibv_mr_by_ib_ctxEP14ib_ctx_handler@Base 8.7.5
- _ZNK14neigh_nl_event6to_strB5cxx11Ev@Base 8.7.5
- _ZNK14route_nl_event6to_strB5cxx11Ev@Base 8.7.5
- _ZNK15command_netlink6to_strB5cxx11Ev@Base 8.7.5
- _ZNK17net_device_val_ib22get_obs_transport_typeEv@Base 8.7.5
- _ZNK17netlink_link_info17get_operstate2strB5cxx11Ev@Base 8.7.5
- _ZNK20net_device_table_mgr6to_strB5cxx11Ev@Base 8.7.5
- _ZNK20route_rule_table_key6to_strB5cxx11Ev@Base 8.7.5
- _ZNK24flow_tuple_with_local_ifeqERKS_@Base 8.7.5
- _ZNK24flow_tuple_with_local_ifltERKS_@Base 8.7.5
- _ZNK4ring17get_tx_channel_fdEv@Base 8.7.5
- _ZNK5tostr6to_strB5cxx11Ev@Base 8.7.5
- _ZNK6cq_mgr11prep_ibv_cqERi@Base 8.7.5
- _ZNK6qp_mgr12get_partitonEv@Base 8.7.5
- _ZNK6qp_mgr14get_pkey_indexEv@Base 8.7.5
- _ZNK6qp_mgr15get_underly_qpnEv@Base 8.7.5
- _ZNK8ETH_addr5cloneEv@Base 8.7.5
- _ZNK8ETH_addr6to_strB5cxx11Ev@Base 8.7.5
- _ZNK9dst_entry14get_flow_tupleEv@Base 8.7.5
- _ZNK9dst_entry22get_obs_transport_typeEv@Base 8.7.5
- _ZNK9neigh_key6to_strB5cxx11Ev@Base 8.7.5
- _ZNK9neigh_keyeqERKS_@Base 8.7.5
- _ZNK9qp_mgr_ib12get_partitonEv@Base 8.7.5
- _ZNK9qp_mgr_ib14get_pkey_indexEv@Base 8.7.5
- _ZNK9qp_mgr_ib15get_underly_qpnEv@Base 8.7.5
- _ZNK9ring_bond17get_num_resourcesEv@Base 8.7.5
- _ZNK9vma_error4whatEv@Base 8.7.5
- _ZNSt3tr110_HashtableI10ip_addressSt4pairIKS1_P19cache_entry_subjectIS1_P14net_device_valEESaIS9_ESt10_Select1stIS9_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSH_20_Default_ranged_hashENSH_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS9_mm@Base 8.7.5
- _ZNSt3tr110_HashtableI20route_rule_table_keySt4pairIKS1_P19cache_entry_subjectIS1_P9route_valEESaIS9_ESt10_Select1stIS9_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSH_20_Default_ranged_hashENSH_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS9_mm@Base 8.7.5
- _ZNSt3tr110_HashtableI20route_rule_table_keySt4pairIKS1_P19cache_entry_subjectIS1_P9route_valEESaIS9_ESt10_Select1stIS9_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSH_20_Default_ranged_hashENSH_20_Prime_rehash_policyELb0ELb0ELb1EE5eraseERS3_@Base 8.7.5
- _ZNSt3tr110_HashtableI20route_rule_table_keySt4pairIKS1_P19cache_entry_subjectIS1_P9route_valEESaIS9_ESt10_Select1stIS9_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSH_20_Default_ranged_hashENSH_20_Prime_rehash_policyELb0ELb0ELb1EE9_M_rehashEm@Base 8.7.5
- _ZNSt3tr110_HashtableI20route_rule_table_keySt4pairIKS1_P19cache_entry_subjectIS1_PSt5dequeIP8rule_valSaIS7_EEEESaISD_ESt10_Select1stISD_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSL_20_Default_ranged_hashENSL_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKSD_mm@Base 8.7.5
- _ZNSt3tr110_HashtableI20route_rule_table_keySt4pairIKS1_P19cache_entry_subjectIS1_PSt5dequeIP8rule_valSaIS7_EEEESaISD_ESt10_Select1stISD_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSL_20_Default_ranged_hashENSL_20_Prime_rehash_policyELb0ELb0ELb1EE5eraseERS3_@Base 8.7.5
- _ZNSt3tr110_HashtableI20route_rule_table_keySt4pairIKS1_P19cache_entry_subjectIS1_PSt5dequeIP8rule_valSaIS7_EEEESaISD_ESt10_Select1stISD_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSL_20_Default_ranged_hashENSL_20_Prime_rehash_policyELb0ELb0ELb1EE9_M_rehashEm@Base 8.7.5
- _ZNSt3tr110_HashtableI24flow_tuple_with_local_ifSt4pairIKS1_P4ringESaIS6_ESt10_Select1stIS6_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSE_20_Default_ranged_hashENSE_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS6_mm@Base 8.7.5
- _ZNSt3tr110_HashtableI24flow_tuple_with_local_ifSt4pairIKS1_P4ringESaIS6_ESt10_Select1stIS6_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSE_20_Default_ranged_hashENSE_20_Prime_rehash_policyELb0ELb0ELb1EE4findERS3_@Base 8.7.5
- _ZNSt3tr110_HashtableI24flow_tuple_with_local_ifSt4pairIKS1_P4ringESaIS6_ESt10_Select1stIS6_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSE_20_Default_ranged_hashENSE_20_Prime_rehash_policyELb0ELb0ELb1EE9_M_rehashEm@Base 8.7.5
- _ZNSt3tr110_HashtableI9neigh_keySt4pairIKS1_P12igmp_handlerESaIS6_ESt10_Select1stIS6_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSE_20_Default_ranged_hashENSE_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS6_mm@Base 8.7.5
- _ZNSt3tr110_HashtableI9neigh_keySt4pairIKS1_P12igmp_handlerESaIS6_ESt10_Select1stIS6_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSE_20_Default_ranged_hashENSE_20_Prime_rehash_policyELb0ELb0ELb1EE9_M_rehashEm@Base 8.7.5
- _ZNSt3tr110_HashtableI9neigh_keySt4pairIKS1_P19cache_entry_subjectIS1_P9neigh_valEESaIS9_ESt10_Select1stIS9_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSH_20_Default_ranged_hashENSH_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS9_mm@Base 8.7.5
- _ZNSt3tr110_HashtableI9neigh_keySt4pairIKS1_P19cache_entry_subjectIS1_P9neigh_valEESaIS9_ESt10_Select1stIS9_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSH_20_Default_ranged_hashENSH_20_Prime_rehash_policyELb0ELb0ELb1EE9_M_rehashEm@Base 8.7.5
- _ZNSt3tr110_HashtableI9sock_addrSt4pairIKS1_P9dst_entryESaIS6_ESt10_Select1stIS6_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSE_20_Default_ranged_hashENSE_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS6_mm@Base 8.7.5
- _ZNSt3tr110_HashtableI9sock_addrSt4pairIKS1_P9dst_entryESaIS6_ESt10_Select1stIS6_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSE_20_Default_ranged_hashENSE_20_Prime_rehash_policyELb0ELb0ELb1EE4findERS3_@Base 8.7.5
- _ZNSt3tr110_HashtableIP10ibv_deviceSt4pairIKS2_P14ib_ctx_handlerESaIS7_ESt10_Select1stIS7_ESt8equal_toIS2_ENS_4hashIS2_EENS_8__detail18_Mod_range_hashingENSF_20_Default_ranged_hashENSF_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS7_mm@Base 8.7.5
- _ZNSt3tr110_HashtableIP14ib_ctx_handlerSt4pairIKS2_jESaIS5_ESt10_Select1stIS5_ESt8equal_toIS2_ENS_4hashIS2_EENS_8__detail18_Mod_range_hashingENSD_20_Default_ranged_hashENSD_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS5_mm@Base 8.7.5
- _ZNSt3tr110_HashtableIP21ring_alloc_logic_attrSt4pairIKS2_S3_IP4ringiEESaIS8_ESt10_Select1stIS8_ES1_S1_NS_8__detail18_Mod_range_hashingENSC_20_Default_ranged_hashENSC_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS8_mm@Base 8.7.5
- _ZNSt3tr110_HashtableIP21ring_alloc_logic_attrSt4pairIKS2_S3_IS2_iEESaIS6_ESt10_Select1stIS6_ES1_S1_NS_8__detail18_Mod_range_hashingENSA_20_Default_ranged_hashENSA_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS6_mm@Base 8.7.5
- _ZNSt3tr110_HashtableIP21ring_alloc_logic_attrSt4pairIKS2_S3_IS2_iEESaIS6_ESt10_Select1stIS6_ES1_S1_NS_8__detail18_Mod_range_hashingENSA_20_Default_ranged_hashENSA_20_Prime_rehash_policyELb0ELb0ELb1EE5eraseERS4_@Base 8.7.5
- _ZNSt3tr110_HashtableIP4ringSt4pairIKS2_P11ring_info_tESaIS7_ESt10_Select1stIS7_ESt8equal_toIS2_ENS_4hashIS2_EENS_8__detail18_Mod_range_hashingENSF_20_Default_ranged_hashENSF_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS7_mm@Base 8.7.5
- _ZNSt3tr110_HashtableIP4ringSt4pairIKS2_iESaIS5_ESt10_Select1stIS5_ESt8equal_toIS2_ENS_4hashIS2_EENS_8__detail18_Mod_range_hashingENSD_20_Default_ranged_hashENSD_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS5_mm@Base 8.7.5
- _ZNSt3tr110_HashtableIP8observerS2_SaIS2_ESt9_IdentityIS2_ESt8equal_toIS2_ENS_4hashIS2_EENS_8__detail18_Mod_range_hashingENSA_20_Default_ranged_hashENSA_20_Prime_rehash_policyELb0ELb1ELb1EE16_M_insert_bucketERKS2_mm@Base 8.7.5
- _ZNSt3tr110_HashtableIiSt4pairIKi12epoll_fd_recESaIS4_ESt10_Select1stIS4_ESt8equal_toIiENS_4hashIiEENS_8__detail18_Mod_range_hashingENSC_20_Default_ranged_hashENSC_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS4_mm@Base 8.7.5
- _ZNSt3tr110_HashtableIiSt4pairIKiP12ring_profileESaIS5_ESt10_Select1stIS5_ESt8equal_toIiENS_4hashIiEENS_8__detail18_Mod_range_hashingENSD_20_Default_ranged_hashENSD_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS5_mm@Base 8.7.5
- _ZNSt3tr110_HashtableIiSt4pairIKiP14net_device_valESaIS5_ESt10_Select1stIS5_ESt8equal_toIiENS_4hashIiEENS_8__detail18_Mod_range_hashingENSD_20_Default_ranged_hashENSD_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS5_mm@Base 8.7.5
- _ZNSt3tr110_HashtableIjSt4pairIKj22net_device_resources_tESaIS4_ESt10_Select1stIS4_ESt8equal_toIjENS_4hashIjEENS_8__detail18_Mod_range_hashingENSC_20_Default_ranged_hashENSC_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS4_mm@Base 8.7.5
- _ZNSt3tr110_HashtableIjSt4pairIKjNS_13unordered_mapIjiNS_4hashIjEESt8equal_toIjESaIS1_IS2_iEEEEESaISB_ESt10_Select1stISB_ES7_S5_NS_8__detail18_Mod_range_hashingENSF_20_Default_ranged_hashENSF_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKSB_mm@Base 8.7.5
- _ZNSt3tr110_HashtableIjSt4pairIKjNS_13unordered_mapIjiNS_4hashIjEESt8equal_toIjESaIS1_IS2_iEEEEESaISB_ESt10_Select1stISB_ES7_S5_NS_8__detail18_Mod_range_hashingENSF_20_Default_ranged_hashENSF_20_Prime_rehash_policyELb0ELb0ELb1EE5eraseERS2_@Base 8.7.5
- _ZNSt3tr110_HashtableIjSt4pairIKjP11route_entryESaIS5_ESt10_Select1stIS5_ESt8equal_toIjENS_4hashIjEENS_8__detail18_Mod_range_hashingENSD_20_Default_ranged_hashENSD_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS5_mm@Base 8.7.5
- _ZNSt3tr110_HashtableIjSt4pairIKjP14net_device_valESaIS5_ESt10_Select1stIS5_ESt8equal_toIjENS_4hashIjEENS_8__detail18_Mod_range_hashingENSD_20_Default_ranged_hashENSD_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS5_mm@Base 8.7.5
- _ZNSt3tr110_HashtableIjSt4pairIKjP6ibv_mrESaIS5_ESt10_Select1stIS5_ESt8equal_toIjENS_4hashIjEENS_8__detail18_Mod_range_hashingENSD_20_Default_ranged_hashENSD_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS5_mm@Base 8.7.5
- _ZNSt3tr110_HashtableIjSt4pairIKjiESaIS3_ESt10_Select1stIS3_ESt8equal_toIjENS_4hashIjEENS_8__detail18_Mod_range_hashingENSB_20_Default_ranged_hashENSB_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS3_mm@Base 8.7.5
- _ZNSt3tr110_HashtableIjSt4pairIKjiESaIS3_ESt10_Select1stIS3_ESt8equal_toIjENS_4hashIjEENS_8__detail18_Mod_range_hashingENSB_20_Default_ranged_hashENSB_20_Prime_rehash_policyELb0ELb0ELb1EEC1ERKSF_@Base 8.7.5
- _ZNSt3tr110_HashtableIjSt4pairIKjiESaIS3_ESt10_Select1stIS3_ESt8equal_toIjENS_4hashIjEENS_8__detail18_Mod_range_hashingENSB_20_Default_ranged_hashENSB_20_Prime_rehash_policyELb0ELb0ELb1EEC2ERKSF_@Base 8.7.5
- _ZNSt3tr110_HashtableIjSt4pairIKjiESaIS3_ESt10_Select1stIS3_ESt8equal_toIjENS_4hashIjEENS_8__detail18_Mod_range_hashingENSB_20_Default_ranged_hashENSB_20_Prime_rehash_policyELb0ELb0ELb1EED1Ev@Base 8.7.5
- _ZNSt3tr110_HashtableIjSt4pairIKjiESaIS3_ESt10_Select1stIS3_ESt8equal_toIjENS_4hashIjEENS_8__detail18_Mod_range_hashingENSB_20_Default_ranged_hashENSB_20_Prime_rehash_policyELb0ELb0ELb1EED2Ev@Base 8.7.5
- _ZNSt3tr110_HashtableIjSt4pairIKjjESaIS3_ESt10_Select1stIS3_ESt8equal_toIjENS_4hashIjEENS_8__detail18_Mod_range_hashingENSB_20_Default_ranged_hashENSB_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS3_mm@Base 8.7.5
- _ZNSt3tr110_HashtableImSt4pairIKm21counter_and_ibv_flowsESaIS4_ESt10_Select1stIS4_ESt8equal_toImENS_4hashImEENS_8__detail18_Mod_range_hashingENSC_20_Default_ranged_hashENSC_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS4_mm@Base 8.7.5
- _ZNSt3tr110_HashtableImSt4pairIKm21counter_and_ibv_flowsESaIS4_ESt10_Select1stIS4_ESt8equal_toImENS_4hashImEENS_8__detail18_Mod_range_hashingENSC_20_Default_ranged_hashENSC_20_Prime_rehash_policyELb0ELb0ELb1EE5eraseENSC_19_Hashtable_iteratorIS4_Lb0ELb0EEE@Base 8.7.5
- _ZNSt3tr110_HashtableImSt4pairIKm21counter_and_ibv_flowsESaIS4_ESt10_Select1stIS4_ESt8equal_toImENS_4hashImEENS_8__detail18_Mod_range_hashingENSC_20_Default_ranged_hashENSC_20_Prime_rehash_policyELb0ELb0ELb1EED1Ev@Base 8.7.5
- _ZNSt3tr110_HashtableImSt4pairIKm21counter_and_ibv_flowsESaIS4_ESt10_Select1stIS4_ESt8equal_toImENS_4hashImEENS_8__detail18_Mod_range_hashingENSC_20_Default_ranged_hashENSC_20_Prime_rehash_policyELb0ELb0ELb1EED2Ev@Base 8.7.5
- _ZNSt3tr110_HashtableImSt4pairIKmiESaIS3_ESt10_Select1stIS3_ESt8equal_toImENS_4hashImEENS_8__detail18_Mod_range_hashingENSB_20_Default_ranged_hashENSB_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS3_mm@Base 8.7.5
- _ZNSt3tr18__detail9_Map_baseI20route_rule_table_keySt4pairIKS2_P19cache_entry_subjectIS2_P9route_valEESt10_Select1stISA_ELb1ENS_10_HashtableIS2_SA_SaISA_ESC_St8equal_toIS2_ENS_4hashIS2_EENS0_18_Mod_range_hashingENS0_20_Default_ranged_hashENS0_20_Prime_rehash_policyELb0ELb0ELb1EEEEixERS4_@Base 8.7.5
- _ZNSt3tr18__detail9_Map_baseI20route_rule_table_keySt4pairIKS2_P19cache_entry_subjectIS2_PSt5dequeIP8rule_valSaIS8_EEEESt10_Select1stISE_ELb1ENS_10_HashtableIS2_SE_SaISE_ESG_St8equal_toIS2_ENS_4hashIS2_EENS0_18_Mod_range_hashingENS0_20_Default_ranged_hashENS0_20_Prime_rehash_policyELb0ELb0ELb1EEEEixERS4_@Base 8.7.5
- _ZNSt3tr18__detail9_Map_baseI24flow_tuple_with_local_ifSt4pairIKS2_P4ringESt10_Select1stIS7_ELb1ENS_10_HashtableIS2_S7_SaIS7_ES9_St8equal_toIS2_ENS_4hashIS2_EENS0_18_Mod_range_hashingENS0_20_Default_ranged_hashENS0_20_Prime_rehash_policyELb0ELb0ELb1EEEEixERS4_@Base 8.7.5
- _ZNSt3tr18__detail9_Map_baseI9sock_addrSt4pairIKS2_P9dst_entryESt10_Select1stIS7_ELb1ENS_10_HashtableIS2_S7_SaIS7_ES9_St8equal_toIS2_ENS_4hashIS2_EENS0_18_Mod_range_hashingENS0_20_Default_ranged_hashENS0_20_Prime_rehash_policyELb0ELb0ELb1EEEEixERS4_@Base 8.7.5
- _ZNSt3tr18__detail9_Map_baseIP21ring_alloc_logic_attrSt4pairIKS3_S4_IP4ringiEESt10_Select1stIS9_ELb1ENS_10_HashtableIS3_S9_SaIS9_ESB_S2_S2_NS0_18_Mod_range_hashingENS0_20_Default_ranged_hashENS0_20_Prime_rehash_policyELb0ELb0ELb1EEEEixERS5_@Base 8.7.5
- _ZNSt3tr18__detail9_Map_baseIP21ring_alloc_logic_attrSt4pairIKS3_S4_IS3_iEESt10_Select1stIS7_ELb1ENS_10_HashtableIS3_S7_SaIS7_ES9_S2_S2_NS0_18_Mod_range_hashingENS0_20_Default_ranged_hashENS0_20_Prime_rehash_policyELb0ELb0ELb1EEEEixERS5_@Base 8.7.5
- _ZNSt3tr18__detail9_Map_baseIiSt4pairIKi12epoll_fd_recESt10_Select1stIS5_ELb1ENS_10_HashtableIiS5_SaIS5_ES7_St8equal_toIiENS_4hashIiEENS0_18_Mod_range_hashingENS0_20_Default_ranged_hashENS0_20_Prime_rehash_policyELb0ELb0ELb1EEEEixERS3_@Base 8.7.5
- _ZNSt3tr18__detail9_Map_baseIjSt4pairIKjNS_13unordered_mapIjiNS_4hashIjEESt8equal_toIjESaIS2_IS3_iEEEEESt10_Select1stISC_ELb1ENS_10_HashtableIjSC_SaISC_ESE_S8_S6_NS0_18_Mod_range_hashingENS0_20_Default_ranged_hashENS0_20_Prime_rehash_policyELb0ELb0ELb1EEEEixERS3_@Base 8.7.5
- _ZNSt3tr18__detail9_Map_baseImSt4pairIKm21counter_and_ibv_flowsESt10_Select1stIS5_ELb1ENS_10_HashtableImS5_SaIS5_ES7_St8equal_toImENS_4hashImEENS0_18_Mod_range_hashingENS0_20_Default_ranged_hashENS0_20_Prime_rehash_policyELb0ELb0ELb1EEEEixERS3_@Base 8.7.5
- _ZNSt5dequeI12reg_action_tSaIS0_EE16_M_push_back_auxIJRKS0_EEEvDpOT_@Base 8.7.5
- _ZNSt5dequeIP15neigh_send_dataSaIS1_EE16_M_push_back_auxIJRKS1_EEEvDpOT_@Base 8.7.5
- _ZNSt5dequeIP15socket_option_tSaIS1_EE16_M_push_back_auxIJS1_EEEvDpOT_@Base 8.7.5
- _ZNSt5dequeIiSaIiEE16_M_push_back_auxIJiEEEvDpOT_@Base 8.7.5
- _ZNSt6vectorI11flow_sink_tSaIS0_EE17_M_realloc_insertIJRKS0_EEEvN9__gnu_cxx17__normal_iteratorIPS0_S2_EEDpOT_@Base 8.7.5
- _ZNSt6vectorIN12sockinfo_udp13port_socket_tESaIS1_EE17_M_realloc_insertIJRKS1_EEEvN9__gnu_cxx17__normal_iteratorIPS1_S3_EEDpOT_@Base 8.7.5
- _ZNSt6vectorIP10ring_slaveSaIS1_EE17_M_realloc_insertIJRKS1_EEEvN9__gnu_cxx17__normal_iteratorIPS1_S3_EEDpOT_@Base 8.7.5
- _ZNSt6vectorIP10slave_dataSaIS1_EE17_M_realloc_insertIJRKS1_EEEvN9__gnu_cxx17__normal_iteratorIPS1_S3_EEDpOT_@Base 8.7.5
- _ZNSt6vectorIP18attach_flow_data_tSaIS1_EE17_M_realloc_insertIJRKS1_EEEvN9__gnu_cxx17__normal_iteratorIPS1_S3_EEDpOT_@Base 8.7.5
- _ZNSt6vectorIP7ip_dataSaIS1_EE17_M_realloc_insertIJRKS1_EEEvN9__gnu_cxx17__normal_iteratorIPS1_S3_EEDpOT_@Base 8.7.5
- _ZNSt6vectorIP8ibv_flowSaIS1_EE17_M_realloc_insertIJRKS1_EEEvN9__gnu_cxx17__normal_iteratorIPS1_S3_EEDpOT_@Base 8.7.5
- _ZNSt8_Rb_treeI10flow_tupleSt4pairIKS0_P7tcp_pcbESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE24_M_get_insert_unique_posERS2_@Base 8.7.5
- _ZNSt8_Rb_treeI10flow_tupleSt4pairIKS0_P7tcp_pcbESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS5_ERS2_@Base 8.7.5
- _ZNSt8_Rb_treeI10flow_tupleSt4pairIKS0_P7tcp_pcbESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE8_M_eraseEPSt13_Rb_tree_nodeIS5_E@Base 8.7.5
- _ZNSt8_Rb_treeI13ip_frag_key_tSt4pairIKS0_P12ip_frag_descESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE24_M_get_insert_unique_posERS2_@Base 8.7.5
- _ZNSt8_Rb_treeI13ip_frag_key_tSt4pairIKS0_P12ip_frag_descESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS5_ERS2_@Base 8.7.5
- _ZNSt8_Rb_treeI13ip_frag_key_tSt4pairIKS0_P12ip_frag_descESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE4findERS2_@Base 8.7.5
- _ZNSt8_Rb_treeI13ip_frag_key_tSt4pairIKS0_P12ip_frag_descESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE8_M_eraseEPSt13_Rb_tree_nodeIS5_E@Base 8.7.5
- _ZNSt8_Rb_treeI20e_netlink_event_typeSt4pairIKS0_P7subjectESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE8_M_eraseEPSt13_Rb_tree_nodeIS5_E@Base 8.7.5
- _ZNSt8_Rb_treeI8peer_keySt4pairIKS0_10vma_list_tI14mem_buf_desc_tXadL_ZNS4_18buffer_node_offsetEvEEEESt10_Select1stIS6_ESt4lessIS0_ESaIS6_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS6_ERS2_@Base 8.7.5
- _ZNSt8_Rb_treeI8peer_keySt4pairIKS0_10vma_list_tI14mem_buf_desc_tXadL_ZNS4_18buffer_node_offsetEvEEEESt10_Select1stIS6_ESt4lessIS0_ESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E@Base 8.7.5
- _ZNSt8_Rb_treeIP10ring_slaveSt4pairIKS1_P14mem_buf_desc_tESt10_Select1stIS6_ESt4lessIS1_ESaIS6_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS6_ERS3_@Base 8.7.5
- _ZNSt8_Rb_treeIP10ring_slaveSt4pairIKS1_P14mem_buf_desc_tESt10_Select1stIS6_ESt4lessIS1_ESaIS6_EE7_M_copyINSC_11_Alloc_nodeEEEPSt13_Rb_tree_nodeIS6_EPKSG_PSt18_Rb_tree_node_baseRT_@Base 8.7.5
- _ZNSt8_Rb_treeIP10ring_slaveSt4pairIKS1_P14mem_buf_desc_tESt10_Select1stIS6_ESt4lessIS1_ESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E@Base 8.7.5
- _ZNSt8_Rb_treeIP21event_handler_ibverbsSt4pairIKS1_15ibverbs_event_tESt10_Select1stIS5_ESt4lessIS1_ESaIS5_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS5_ERS3_@Base 8.7.5
- _ZNSt8_Rb_treeIP21event_handler_ibverbsSt4pairIKS1_15ibverbs_event_tESt10_Select1stIS5_ESt4lessIS1_ESaIS5_EE7_M_copyINSB_20_Reuse_or_alloc_nodeEEEPSt13_Rb_tree_nodeIS5_EPKSF_PSt18_Rb_tree_node_baseRT_@Base 8.7.5
- _ZNSt8_Rb_treeIP21event_handler_ibverbsSt4pairIKS1_15ibverbs_event_tESt10_Select1stIS5_ESt4lessIS1_ESaIS5_EE8_M_eraseEPSt13_Rb_tree_nodeIS5_E@Base 8.7.5
- _ZNSt8_Rb_treeIP21event_handler_ibverbsSt4pairIKS1_15ibverbs_event_tESt10_Select1stIS5_ESt4lessIS1_ESaIS5_EEaSERKSB_@Base 8.7.5
- _ZNSt8_Rb_treeIP7tcp_pcbSt4pairIKS1_iESt10_Select1stIS4_ESt4lessIS1_ESaIS4_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS4_ERS3_@Base 8.7.5
- _ZNSt8_Rb_treeIP7tcp_pcbSt4pairIKS1_iESt10_Select1stIS4_ESt4lessIS1_ESaIS4_EE5eraseERS3_@Base 8.7.5
- _ZNSt8_Rb_treeIP7tcp_pcbSt4pairIKS1_iESt10_Select1stIS4_ESt4lessIS1_ESaIS4_EE8_M_eraseEPSt13_Rb_tree_nodeIS4_E@Base 8.7.5
- _ZNSt8_Rb_treeIPvSt4pairIKS0_P21event_handler_rdma_cmESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS5_ERS2_@Base 8.7.5
- _ZNSt8_Rb_treeIPvSt4pairIKS0_P21event_handler_rdma_cmESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE7_M_copyINSB_20_Reuse_or_alloc_nodeEEEPSt13_Rb_tree_nodeIS5_EPKSF_PSt18_Rb_tree_node_baseRT_@Base 8.7.5
- _ZNSt8_Rb_treeIPvSt4pairIKS0_P21event_handler_rdma_cmESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE8_M_eraseEPSt13_Rb_tree_nodeIS5_E@Base 8.7.5
- _ZNSt8_Rb_treeIPvSt4pairIKS0_P21event_handler_rdma_cmESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EEaSERKSB_@Base 8.7.5
- _ZNSt8_Rb_treeIPvSt4pairIKS0_S1_IS0_iEESt10_Select1stIS4_ESt4lessIS0_ESaIS4_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS4_ERS2_@Base 8.7.5
- _ZNSt8_Rb_treeIPvSt4pairIKS0_S1_IS0_iEESt10_Select1stIS4_ESt4lessIS0_ESaIS4_EE8_M_eraseEPSt13_Rb_tree_nodeIS4_E@Base 8.7.5
- _ZNSt8_Rb_treeIiSt4pairIKi12event_data_tESt10_Select1stIS3_ESt4lessIiESaIS3_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS3_ERS1_@Base 8.7.5
- _ZNSt8_Rb_treeIiSt4pairIKi12event_data_tESt10_Select1stIS3_ESt4lessIiESaIS3_EE8_M_eraseEPSt13_Rb_tree_nodeIS3_E@Base 8.7.5
- _ZTI10IPoIB_addr@Base 8.7.5
- _ZTI10L2_address@Base 8.7.5
- _ZTI10flow_tuple@Base 8.7.5
- _ZTI10ip_address@Base 8.7.5
- _ZTI10lock_mutex@Base 8.7.5
- _ZTI10qp_mgr_eth@Base 8.7.5
- _ZTI10ring_slave@Base 8.7.5
- _ZTI10rule_entry@Base 8.7.5
- _ZTI11cpu_manager@Base 8.7.5
- _ZTI11cq_mgr_mlx5@Base 8.7.5
- _ZTI11io_mux_call@Base 8.7.5
- _ZTI11neigh_entry@Base 8.7.5
- _ZTI11ring_simple@Base 8.7.5
- _ZTI11route_entry@Base 8.7.5
- _ZTI11select_call@Base 8.7.5
- _ZTI11wakeup_pipe@Base 8.7.5
- _ZTI12data_updater@Base 8.7.5
- _ZTI12igmp_handler@Base 8.7.5
- _ZTI12neigh_ib_val@Base 8.7.5
- _ZTI12ring_bond_ib@Base 8.7.5
- _ZTI12sockinfo_tcp@Base 8.7.5
- _ZTI12sockinfo_udp@Base 8.7.5
- _ZTI12tcp_seg_pool@Base 8.7.5
- _ZTI12timers_group@Base 8.7.5
- _ZTI13cleanable_obj@Base 8.7.5
- _ZTI13dst_entry_tcp@Base 8.7.5
- _ZTI13dst_entry_udp@Base 8.7.5
- _ZTI13fd_collection@Base 8.7.5
- _ZTI13link_nl_event@Base 8.7.5
- _ZTI13neigh_eth_val@Base 8.7.5
- _ZTI13netlink_event@Base 8.7.5
- _ZTI13pkt_rcvr_sink@Base 8.7.5
- _ZTI13ring_bond_eth@Base 8.7.5
- _ZTI13socket_fd_api@Base 8.7.5
- _ZTI13timer_handler@Base 8.7.5
- _ZTI13vma_exception@Base 8.7.5
- _ZTI14cache_observer@Base 8.7.5
- _ZTI14ib_ctx_handler@Base 8.7.5
- _ZTI14neigh_nl_event@Base 8.7.5
- _ZTI14neigh_observer@Base 8.7.5
- _ZTI14net_device_val@Base 8.7.5
- _ZTI14rfs_uc_tcp_gro@Base 8.7.5
- _ZTI14route_nl_event@Base 8.7.5
- _ZTI14rule_table_mgr@Base 8.7.5
- _ZTI14time_converter@Base 8.7.5
- _ZTI15cache_table_mgrI10ip_addressP14net_device_valE@Base 8.7.5
- _ZTI15cache_table_mgrI20route_rule_table_keyP9route_valE@Base 8.7.5
- _ZTI15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE@Base 8.7.5
- _ZTI15cache_table_mgrI9neigh_keyP9neigh_valE@Base 8.7.5
- _ZTI15command_netlink@Base 8.7.5
- _ZTI15cq_channel_info@Base 8.7.5
- _ZTI15epoll_wait_call@Base 8.7.5
- _ZTI15ip_frag_manager@Base 8.7.5
- _ZTI15neigh_send_data@Base 8.7.5
- _ZTI15neigh_send_info@Base 8.7.5
- _ZTI15neigh_table_mgr@Base 8.7.5
- _ZTI15netlink_wrapper@Base 8.7.5
- _ZTI15pkt_sndr_source@Base 8.7.5
- _ZTI15qp_mgr_eth_mlx5@Base 8.7.5
- _ZTI15route_table_mgr@Base 8.7.5
- _ZTI16dst_entry_udp_mc@Base 8.7.5
- _ZTI16net_device_entry@Base 8.7.5
- _ZTI16ring_bond_netvsc@Base 8.7.5
- _ZTI16wqe_send_handler@Base 8.7.5
- _ZTI17net_device_val_ib@Base 8.7.5
- _ZTI17netlink_link_info@Base 8.7.5
- _ZTI17stats_data_reader@Base 8.7.5
- _ZTI18header_pcp_updater@Base 8.7.5
- _ZTI18header_tos_updater@Base 8.7.5
- _ZTI18header_ttl_updater@Base 8.7.5
- _ZTI18neigh_ib_broadcast@Base 8.7.5
- _ZTI18net_device_val_eth@Base 8.7.5
- _ZTI18netlink_neigh_info@Base 8.7.5
- _ZTI18netlink_socket_mgrI8rule_valE@Base 8.7.5
- _ZTI18netlink_socket_mgrI9route_valE@Base 8.7.5
- _ZTI19cache_entry_subjectI10ip_addressP14net_device_valE@Base 8.7.5
- _ZTI19cache_entry_subjectI20route_rule_table_keyP9route_valE@Base 8.7.5
- _ZTI19cache_entry_subjectI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE@Base 8.7.5
- _ZTI19cache_entry_subjectI9neigh_keyP9neigh_valE@Base 8.7.5
- _ZTI19lock_spin_recursive@Base 8.7.5
- _ZTI19vma_unsupported_api@Base 8.7.5
- _ZTI19wqe_send_ib_handler@Base 8.7.5
- _ZTI20lock_mutex_recursive@Base 8.7.5
- _ZTI20net_device_table_mgr@Base 8.7.5
- _ZTI20route_rule_table_key@Base 8.7.5
- _ZTI21event_handler_ibverbs@Base 8.7.5
- _ZTI21event_handler_manager@Base 8.7.5
- _ZTI21event_handler_rdma_cm@Base 8.7.5
- _ZTI21tcp_timers_collection@Base 8.7.5
- _ZTI21time_converter_ib_ctx@Base 8.7.5
- _ZTI21vlogger_timer_handler@Base 8.7.5
- _ZTI24flow_tuple_with_local_if@Base 8.7.5
- _ZTI3rfs@Base 8.7.5
- _ZTI4ring@Base 8.7.5
- _ZTI5agent@Base 8.7.5
- _ZTI5event@Base 8.7.5
- _ZTI5tostr@Base 8.7.5
- _ZTI6cq_mgr@Base 8.7.5
- _ZTI6header@Base 8.7.5
- _ZTI6qp_mgr@Base 8.7.5
- _ZTI6rfs_mc@Base 8.7.5
- _ZTI6rfs_uc@Base 8.7.5
- _ZTI6wakeup@Base 8.7.5
- _ZTI7command@Base 8.7.5
- _ZTI7gro_mgr@Base 8.7.5
- _ZTI7ring_ib@Base 8.7.5
- _ZTI7subject@Base 8.7.5
- _ZTI8ETH_addr@Base 8.7.5
- _ZTI8hash_mapI19flow_spec_tcp_key_tP3rfsE@Base 8.7.5
- _ZTI8hash_mapI19flow_spec_udp_key_tP3rfsE@Base 8.7.5
- _ZTI8hash_mapI7ibv_gidjE@Base 8.7.5
- _ZTI8igmp_mgr@Base 8.7.5
- _ZTI8neigh_ib@Base 8.7.5
- _ZTI8observer@Base 8.7.5
- _ZTI8pipeinfo@Base 8.7.5
- _ZTI8ring_eth@Base 8.7.5
- _ZTI8ring_tap@Base 8.7.5
- _ZTI8rule_val@Base 8.7.5
- _ZTI8sockinfo@Base 8.7.5
- _ZTI8vma_lwip@Base 8.7.5
- _ZTI9dst_entry@Base 8.7.5
- _ZTI9epfd_info@Base 8.7.5
- _ZTI9lock_base@Base 8.7.5
- _ZTI9lock_spin@Base 8.7.5
- _ZTI9neigh_eth@Base 8.7.5
- _ZTI9neigh_key@Base 8.7.5
- _ZTI9neigh_val@Base 8.7.5
- _ZTI9poll_call@Base 8.7.5
- _ZTI9qp_mgr_ib@Base 8.7.5
- _ZTI9ring_bond@Base 8.7.5
- _ZTI9route_val@Base 8.7.5
- _ZTI9send_data@Base 8.7.5
- _ZTI9send_info@Base 8.7.5
- _ZTI9vma_error@Base 8.7.5
- _ZTIN11io_mux_call8io_errorE@Base 8.7.5
- _ZTS10IPoIB_addr@Base 8.7.5
- _ZTS10L2_address@Base 8.7.5
- _ZTS10flow_tuple@Base 8.7.5
- _ZTS10ip_address@Base 8.7.5
- _ZTS10lock_mutex@Base 8.7.5
- _ZTS10qp_mgr_eth@Base 8.7.5
- _ZTS10ring_slave@Base 8.7.5
- _ZTS10rule_entry@Base 8.7.5
- _ZTS11cpu_manager@Base 8.7.5
- _ZTS11cq_mgr_mlx5@Base 8.7.5
- _ZTS11io_mux_call@Base 8.7.5
- _ZTS11neigh_entry@Base 8.7.5
- _ZTS11ring_simple@Base 8.7.5
- _ZTS11route_entry@Base 8.7.5
- _ZTS11select_call@Base 8.7.5
- _ZTS11wakeup_pipe@Base 8.7.5
- _ZTS12data_updater@Base 8.7.5
- _ZTS12igmp_handler@Base 8.7.5
- _ZTS12neigh_ib_val@Base 8.7.5
- _ZTS12ring_bond_ib@Base 8.7.5
- _ZTS12sockinfo_tcp@Base 8.7.5
- _ZTS12sockinfo_udp@Base 8.7.5
- _ZTS12tcp_seg_pool@Base 8.7.5
- _ZTS12timers_group@Base 8.7.5
- _ZTS13cleanable_obj@Base 8.7.5
- _ZTS13dst_entry_tcp@Base 8.7.5
- _ZTS13dst_entry_udp@Base 8.7.5
- _ZTS13fd_collection@Base 8.7.5
- _ZTS13link_nl_event@Base 8.7.5
- _ZTS13neigh_eth_val@Base 8.7.5
- _ZTS13netlink_event@Base 8.7.5
- _ZTS13pkt_rcvr_sink@Base 8.7.5
- _ZTS13ring_bond_eth@Base 8.7.5
- _ZTS13socket_fd_api@Base 8.7.5
- _ZTS13timer_handler@Base 8.7.5
- _ZTS13vma_exception@Base 8.7.5
- _ZTS14cache_observer@Base 8.7.5
- _ZTS14ib_ctx_handler@Base 8.7.5
- _ZTS14neigh_nl_event@Base 8.7.5
- _ZTS14neigh_observer@Base 8.7.5
- _ZTS14net_device_val@Base 8.7.5
- _ZTS14rfs_uc_tcp_gro@Base 8.7.5
- _ZTS14route_nl_event@Base 8.7.5
- _ZTS14rule_table_mgr@Base 8.7.5
- _ZTS14time_converter@Base 8.7.5
- _ZTS15cache_table_mgrI10ip_addressP14net_device_valE@Base 8.7.5
- _ZTS15cache_table_mgrI20route_rule_table_keyP9route_valE@Base 8.7.5
- _ZTS15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE@Base 8.7.5
- _ZTS15cache_table_mgrI9neigh_keyP9neigh_valE@Base 8.7.5
- _ZTS15command_netlink@Base 8.7.5
- _ZTS15cq_channel_info@Base 8.7.5
- _ZTS15epoll_wait_call@Base 8.7.5
- _ZTS15ip_frag_manager@Base 8.7.5
- _ZTS15neigh_send_data@Base 8.7.5
- _ZTS15neigh_send_info@Base 8.7.5
- _ZTS15neigh_table_mgr@Base 8.7.5
- _ZTS15netlink_wrapper@Base 8.7.5
- _ZTS15pkt_sndr_source@Base 8.7.5
- _ZTS15qp_mgr_eth_mlx5@Base 8.7.5
- _ZTS15route_table_mgr@Base 8.7.5
- _ZTS16dst_entry_udp_mc@Base 8.7.5
- _ZTS16net_device_entry@Base 8.7.5
- _ZTS16ring_bond_netvsc@Base 8.7.5
- _ZTS16wqe_send_handler@Base 8.7.5
- _ZTS17net_device_val_ib@Base 8.7.5
- _ZTS17netlink_link_info@Base 8.7.5
- _ZTS17stats_data_reader@Base 8.7.5
- _ZTS18header_pcp_updater@Base 8.7.5
- _ZTS18header_tos_updater@Base 8.7.5
- _ZTS18header_ttl_updater@Base 8.7.5
- _ZTS18neigh_ib_broadcast@Base 8.7.5
- _ZTS18net_device_val_eth@Base 8.7.5
- _ZTS18netlink_neigh_info@Base 8.7.5
- _ZTS18netlink_socket_mgrI8rule_valE@Base 8.7.5
- _ZTS18netlink_socket_mgrI9route_valE@Base 8.7.5
- _ZTS19cache_entry_subjectI10ip_addressP14net_device_valE@Base 8.7.5
- _ZTS19cache_entry_subjectI20route_rule_table_keyP9route_valE@Base 8.7.5
- _ZTS19cache_entry_subjectI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE@Base 8.7.5
- _ZTS19cache_entry_subjectI9neigh_keyP9neigh_valE@Base 8.7.5
- _ZTS19lock_spin_recursive@Base 8.7.5
- _ZTS19vma_unsupported_api@Base 8.7.5
- _ZTS19wqe_send_ib_handler@Base 8.7.5
- _ZTS20lock_mutex_recursive@Base 8.7.5
- _ZTS20net_device_table_mgr@Base 8.7.5
- _ZTS20route_rule_table_key@Base 8.7.5
- _ZTS21event_handler_ibverbs@Base 8.7.5
- _ZTS21event_handler_manager@Base 8.7.5
- _ZTS21event_handler_rdma_cm@Base 8.7.5
- _ZTS21tcp_timers_collection@Base 8.7.5
- _ZTS21time_converter_ib_ctx@Base 8.7.5
- _ZTS21vlogger_timer_handler@Base 8.7.5
- _ZTS24flow_tuple_with_local_if@Base 8.7.5
- _ZTS3rfs@Base 8.7.5
- _ZTS4ring@Base 8.7.5
- _ZTS5agent@Base 8.7.5
- _ZTS5event@Base 8.7.5
- _ZTS5tostr@Base 8.7.5
- _ZTS6cq_mgr@Base 8.7.5
- _ZTS6header@Base 8.7.5
- _ZTS6qp_mgr@Base 8.7.5
- _ZTS6rfs_mc@Base 8.7.5
- _ZTS6rfs_uc@Base 8.7.5
- _ZTS6wakeup@Base 8.7.5
- _ZTS7command@Base 8.7.5
- _ZTS7gro_mgr@Base 8.7.5
- _ZTS7ring_ib@Base 8.7.5
- _ZTS7subject@Base 8.7.5
- _ZTS8ETH_addr@Base 8.7.5
- _ZTS8hash_mapI19flow_spec_tcp_key_tP3rfsE@Base 8.7.5
- _ZTS8hash_mapI19flow_spec_udp_key_tP3rfsE@Base 8.7.5
- _ZTS8hash_mapI7ibv_gidjE@Base 8.7.5
- _ZTS8igmp_mgr@Base 8.7.5
- _ZTS8neigh_ib@Base 8.7.5
- _ZTS8observer@Base 8.7.5
- _ZTS8pipeinfo@Base 8.7.5
- _ZTS8ring_eth@Base 8.7.5
- _ZTS8ring_tap@Base 8.7.5
- _ZTS8rule_val@Base 8.7.5
- _ZTS8sockinfo@Base 8.7.5
- _ZTS8vma_lwip@Base 8.7.5
- _ZTS9dst_entry@Base 8.7.5
- _ZTS9epfd_info@Base 8.7.5
- _ZTS9lock_base@Base 8.7.5
- _ZTS9lock_spin@Base 8.7.5
- _ZTS9neigh_eth@Base 8.7.5
- _ZTS9neigh_key@Base 8.7.5
- _ZTS9neigh_val@Base 8.7.5
- _ZTS9poll_call@Base 8.7.5
- _ZTS9qp_mgr_ib@Base 8.7.5
- _ZTS9ring_bond@Base 8.7.5
- _ZTS9route_val@Base 8.7.5
- _ZTS9send_data@Base 8.7.5
- _ZTS9send_info@Base 8.7.5
- _ZTS9vma_error@Base 8.7.5
- _ZTSN11io_mux_call8io_errorE@Base 8.7.5
- _ZTV10IPoIB_addr@Base 8.7.5
- _ZTV10L2_address@Base 8.7.5
- _ZTV10flow_tuple@Base 8.7.5
- _ZTV10ip_address@Base 8.7.5
- _ZTV10lock_mutex@Base 8.7.5
- _ZTV10qp_mgr_eth@Base 8.7.5
- _ZTV10ring_slave@Base 8.7.5
- _ZTV10rule_entry@Base 8.7.5
- _ZTV11cpu_manager@Base 8.7.5
- _ZTV11cq_mgr_mlx5@Base 8.7.5
- _ZTV11io_mux_call@Base 8.7.5
- _ZTV11neigh_entry@Base 8.7.5
- _ZTV11ring_simple@Base 8.7.5
- _ZTV11route_entry@Base 8.7.5
- _ZTV11select_call@Base 8.7.5
- _ZTV11wakeup_pipe@Base 8.7.5
- _ZTV12igmp_handler@Base 8.7.5
- _ZTV12neigh_ib_val@Base 8.7.5
- _ZTV12ring_bond_ib@Base 8.7.5
- _ZTV12sockinfo_tcp@Base 8.7.5
- _ZTV12sockinfo_udp@Base 8.7.5
- _ZTV12tcp_seg_pool@Base 8.7.5
- _ZTV13cleanable_obj@Base 8.7.5
- _ZTV13dst_entry_tcp@Base 8.7.5
- _ZTV13dst_entry_udp@Base 8.7.5
- _ZTV13fd_collection@Base 8.7.5
- _ZTV13link_nl_event@Base 8.7.5
- _ZTV13neigh_eth_val@Base 8.7.5
- _ZTV13netlink_event@Base 8.7.5
- _ZTV13pkt_rcvr_sink@Base 8.7.5
- _ZTV13ring_bond_eth@Base 8.7.5
- _ZTV13socket_fd_api@Base 8.7.5
- _ZTV13timer_handler@Base 8.7.5
- _ZTV13vma_exception@Base 8.7.5
- _ZTV14cache_observer@Base 8.7.5
- _ZTV14ib_ctx_handler@Base 8.7.5
- _ZTV14neigh_nl_event@Base 8.7.5
- _ZTV14net_device_val@Base 8.7.5
- _ZTV14rfs_uc_tcp_gro@Base 8.7.5
- _ZTV14route_nl_event@Base 8.7.5
- _ZTV14rule_table_mgr@Base 8.7.5
- _ZTV14time_converter@Base 8.7.5
- _ZTV15cache_table_mgrI10ip_addressP14net_device_valE@Base 8.7.5
- _ZTV15cache_table_mgrI20route_rule_table_keyP9route_valE@Base 8.7.5
- _ZTV15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE@Base 8.7.5
- _ZTV15cache_table_mgrI9neigh_keyP9neigh_valE@Base 8.7.5
- _ZTV15command_netlink@Base 8.7.5
- _ZTV15cq_channel_info@Base 8.7.5
- _ZTV15epoll_wait_call@Base 8.7.5
- _ZTV15ip_frag_manager@Base 8.7.5
- _ZTV15neigh_send_data@Base 8.7.5
- _ZTV15neigh_send_info@Base 8.7.5
- _ZTV15neigh_table_mgr@Base 8.7.5
- _ZTV15netlink_wrapper@Base 8.7.5
- _ZTV15pkt_sndr_source@Base 8.7.5
- _ZTV15qp_mgr_eth_mlx5@Base 8.7.5
- _ZTV15route_table_mgr@Base 8.7.5
- _ZTV16dst_entry_udp_mc@Base 8.7.5
- _ZTV16net_device_entry@Base 8.7.5
- _ZTV16ring_bond_netvsc@Base 8.7.5
- _ZTV16wqe_send_handler@Base 8.7.5
- _ZTV17net_device_val_ib@Base 8.7.5
- _ZTV17netlink_link_info@Base 8.7.5
- _ZTV17stats_data_reader@Base 8.7.5
- _ZTV18header_pcp_updater@Base 8.7.5
- _ZTV18header_tos_updater@Base 8.7.5
- _ZTV18header_ttl_updater@Base 8.7.5
- _ZTV18neigh_ib_broadcast@Base 8.7.5
- _ZTV18net_device_val_eth@Base 8.7.5
- _ZTV18netlink_neigh_info@Base 8.7.5
- _ZTV18netlink_socket_mgrI8rule_valE@Base 8.7.5
- _ZTV18netlink_socket_mgrI9route_valE@Base 8.7.5
- _ZTV19lock_spin_recursive@Base 8.7.5
- _ZTV19vma_unsupported_api@Base 8.7.5
- _ZTV19wqe_send_ib_handler@Base 8.7.5
- _ZTV20lock_mutex_recursive@Base 8.7.5
- _ZTV20net_device_table_mgr@Base 8.7.5
- _ZTV20route_rule_table_key@Base 8.7.5
- _ZTV21event_handler_manager@Base 8.7.5
- _ZTV21tcp_timers_collection@Base 8.7.5
- _ZTV21time_converter_ib_ctx@Base 8.7.5
- _ZTV21vlogger_timer_handler@Base 8.7.5
- _ZTV24flow_tuple_with_local_if@Base 8.7.5
- _ZTV3rfs@Base 8.7.5
- _ZTV4ring@Base 8.7.5
- _ZTV5agent@Base 8.7.5
- _ZTV6cq_mgr@Base 8.7.5
- _ZTV6header@Base 8.7.5
- _ZTV6qp_mgr@Base 8.7.5
- _ZTV6rfs_mc@Base 8.7.5
- _ZTV6rfs_uc@Base 8.7.5
- _ZTV6wakeup@Base 8.7.5
- _ZTV7gro_mgr@Base 8.7.5
- _ZTV7ring_ib@Base 8.7.5
- _ZTV7subject@Base 8.7.5
- _ZTV8ETH_addr@Base 8.7.5
- _ZTV8hash_mapI19flow_spec_tcp_key_tP3rfsE@Base 8.7.5
- _ZTV8hash_mapI19flow_spec_udp_key_tP3rfsE@Base 8.7.5
- _ZTV8hash_mapI7ibv_gidjE@Base 8.7.5
- _ZTV8igmp_mgr@Base 8.7.5
- _ZTV8neigh_ib@Base 8.7.5
- _ZTV8pipeinfo@Base 8.7.5
- _ZTV8ring_eth@Base 8.7.5
- _ZTV8ring_tap@Base 8.7.5
- _ZTV8rule_val@Base 8.7.5
- _ZTV8sockinfo@Base 8.7.5
- _ZTV8vma_lwip@Base 8.7.5
- _ZTV9dst_entry@Base 8.7.5
- _ZTV9epfd_info@Base 8.7.5
- _ZTV9lock_spin@Base 8.7.5
- _ZTV9neigh_eth@Base 8.7.5
- _ZTV9neigh_key@Base 8.7.5
- _ZTV9poll_call@Base 8.7.5
- _ZTV9qp_mgr_ib@Base 8.7.5
- _ZTV9ring_bond@Base 8.7.5
- _ZTV9route_val@Base 8.7.5
- _ZTV9send_data@Base 8.7.5
- _ZTV9vma_error@Base 8.7.5
- _ZTVN11io_mux_call8io_errorE@Base 8.7.5
- _ZThn1000_N18neigh_ib_broadcastD0Ev@Base 8.7.5
- _ZThn1000_N18neigh_ib_broadcastD1Ev@Base 8.7.5
- _ZThn1000_N8neigh_ib23handle_event_ibverbs_cbEPvS0_@Base 8.7.5
- _ZThn1000_N8neigh_ibD0Ev@Base 8.7.5
- _ZThn1000_N8neigh_ibD1Ev@Base 8.7.5
- _ZThn104_N12igmp_handlerD0Ev@Base 8.7.5
- _ZThn104_N12igmp_handlerD1Ev@Base 8.7.5
- _ZThn104_NK12igmp_handler22get_obs_transport_typeEv@Base 8.7.5
- _ZThn112_N10rule_entryD0Ev@Base 8.7.5
- _ZThn112_N10rule_entryD1Ev@Base 8.7.5
- _ZThn112_N11neigh_entryD0Ev@Base 8.7.5
- _ZThn112_N11neigh_entryD1Ev@Base 8.7.5
- _ZThn112_N11route_entryD0Ev@Base 8.7.5
- _ZThn112_N11route_entryD1Ev@Base 8.7.5
- _ZThn112_N16net_device_entryD0Ev@Base 8.7.5
- _ZThn112_N16net_device_entryD1Ev@Base 8.7.5
- _ZThn112_N18neigh_ib_broadcastD0Ev@Base 8.7.5
- _ZThn112_N18neigh_ib_broadcastD1Ev@Base 8.7.5
- _ZThn112_N8neigh_ibD0Ev@Base 8.7.5
- _ZThn112_N8neigh_ibD1Ev@Base 8.7.5
- _ZThn112_N9neigh_ethD0Ev@Base 8.7.5
- _ZThn112_N9neigh_ethD1Ev@Base 8.7.5
- _ZThn112_NK10rule_entry6to_strB5cxx11Ev@Base 8.7.5
- _ZThn112_NK11neigh_entry6to_strB5cxx11Ev@Base 8.7.5
- _ZThn112_NK11route_entry6to_strB5cxx11Ev@Base 8.7.5
- _ZThn120_N10rule_entryD0Ev@Base 8.7.5
- _ZThn120_N10rule_entryD1Ev@Base 8.7.5
- _ZThn120_N11neigh_entry9clean_objEv@Base 8.7.5
- _ZThn120_N11neigh_entryD0Ev@Base 8.7.5
- _ZThn120_N11neigh_entryD1Ev@Base 8.7.5
- _ZThn120_N11route_entryD0Ev@Base 8.7.5
- _ZThn120_N11route_entryD1Ev@Base 8.7.5
- _ZThn120_N16net_device_entryD0Ev@Base 8.7.5
- _ZThn120_N16net_device_entryD1Ev@Base 8.7.5
- _ZThn120_N18neigh_ib_broadcastD0Ev@Base 8.7.5
- _ZThn120_N18neigh_ib_broadcastD1Ev@Base 8.7.5
- _ZThn120_N8neigh_ibD0Ev@Base 8.7.5
- _ZThn120_N8neigh_ibD1Ev@Base 8.7.5
- _ZThn120_N9neigh_ethD0Ev@Base 8.7.5
- _ZThn120_N9neigh_ethD1Ev@Base 8.7.5
- _ZThn128_N15neigh_table_mgr9notify_cbEP5event@Base 8.7.5
- _ZThn128_N15neigh_table_mgrD0Ev@Base 8.7.5
- _ZThn128_N15neigh_table_mgrD1Ev@Base 8.7.5
- _ZThn128_N20net_device_table_mgr9notify_cbEP5event@Base 8.7.5
- _ZThn128_N20net_device_table_mgrD0Ev@Base 8.7.5
- _ZThn128_N20net_device_table_mgrD1Ev@Base 8.7.5
- _ZThn1392680_N15route_table_mgr16create_new_entryE20route_rule_table_keyPK8observer@Base 8.7.5
- _ZThn1392680_N15route_table_mgrD0Ev@Base 8.7.5
- _ZThn1392680_N15route_table_mgrD1Ev@Base 8.7.5
- _ZThn1392688_N15route_table_mgrD0Ev@Base 8.7.5
- _ZThn1392688_N15route_table_mgrD1Ev@Base 8.7.5
- _ZThn1392808_N15route_table_mgr9notify_cbEP5event@Base 8.7.5
- _ZThn1392808_N15route_table_mgrD0Ev@Base 8.7.5
- _ZThn1392808_N15route_table_mgrD1Ev@Base 8.7.5
- _ZThn1425448_N14rule_table_mgr16create_new_entryE20route_rule_table_keyPK8observer@Base 8.7.5
- _ZThn1425448_N14rule_table_mgrD0Ev@Base 8.7.5
- _ZThn1425448_N14rule_table_mgrD1Ev@Base 8.7.5
- _ZThn1425456_N14rule_table_mgrD0Ev@Base 8.7.5
- _ZThn1425456_N14rule_table_mgrD1Ev@Base 8.7.5
- _ZThn160_N12sockinfo_tcp11rx_input_cbEP14mem_buf_desc_tPv@Base 8.7.5
- _ZThn160_N12sockinfo_tcpD0Ev@Base 8.7.5
- _ZThn160_N12sockinfo_tcpD1Ev@Base 8.7.5
- _ZThn160_N12sockinfo_udp11rx_input_cbEP14mem_buf_desc_tPv@Base 8.7.5
- _ZThn160_N12sockinfo_udp14rx_add_ring_cbER24flow_tuple_with_local_ifP4ringb@Base 8.7.5
- _ZThn160_N12sockinfo_udp14rx_del_ring_cbER24flow_tuple_with_local_ifP4ringb@Base 8.7.5
- _ZThn160_N12sockinfo_udpD0Ev@Base 8.7.5
- _ZThn160_N12sockinfo_udpD1Ev@Base 8.7.5
- _ZThn160_N16net_device_entry23handle_event_ibverbs_cbEPvS0_@Base 8.7.5
- _ZThn160_N16net_device_entryD0Ev@Base 8.7.5
- _ZThn160_N16net_device_entryD1Ev@Base 8.7.5
- _ZThn160_N8pipeinfo20handle_timer_expiredEPv@Base 8.7.5
- _ZThn160_N8pipeinfoD0Ev@Base 8.7.5
- _ZThn160_N8pipeinfoD1Ev@Base 8.7.5
- _ZThn160_N8sockinfo14rx_add_ring_cbER24flow_tuple_with_local_ifP4ringb@Base 8.7.5
- _ZThn160_N8sockinfo14rx_del_ring_cbER24flow_tuple_with_local_ifP4ringb@Base 8.7.5
- _ZThn160_N8sockinfoD0Ev@Base 8.7.5
- _ZThn160_N8sockinfoD1Ev@Base 8.7.5
- _ZThn168_N11route_entry9notify_cbEv@Base 8.7.5
- _ZThn168_N11route_entryD0Ev@Base 8.7.5
- _ZThn168_N11route_entryD1Ev@Base 8.7.5
- _ZThn168_N12sockinfo_tcpD0Ev@Base 8.7.5
- _ZThn168_N12sockinfo_tcpD1Ev@Base 8.7.5
- _ZThn168_N12sockinfo_udpD0Ev@Base 8.7.5
- _ZThn168_N12sockinfo_udpD1Ev@Base 8.7.5
- _ZThn168_N16net_device_entry20handle_timer_expiredEPv@Base 8.7.5
- _ZThn168_N16net_device_entryD0Ev@Base 8.7.5
- _ZThn168_N16net_device_entryD1Ev@Base 8.7.5
- _ZThn168_N8sockinfoD0Ev@Base 8.7.5
- _ZThn168_N8sockinfoD1Ev@Base 8.7.5
- _ZThn176_N11neigh_entry23handle_event_rdma_cm_cbEP13rdma_cm_event@Base 8.7.5
- _ZThn176_N11neigh_entryD0Ev@Base 8.7.5
- _ZThn176_N11neigh_entryD1Ev@Base 8.7.5
- _ZThn176_N12sockinfo_tcpD0Ev@Base 8.7.5
- _ZThn176_N12sockinfo_tcpD1Ev@Base 8.7.5
- _ZThn176_N12sockinfo_udpD0Ev@Base 8.7.5
- _ZThn176_N12sockinfo_udpD1Ev@Base 8.7.5
- _ZThn176_N18neigh_ib_broadcastD0Ev@Base 8.7.5
- _ZThn176_N18neigh_ib_broadcastD1Ev@Base 8.7.5
- _ZThn176_N8neigh_ibD0Ev@Base 8.7.5
- _ZThn176_N8neigh_ibD1Ev@Base 8.7.5
- _ZThn176_N8sockinfo9do_wakeupEv@Base 8.8.1
- _ZThn176_N8sockinfoD0Ev@Base 8.7.5
- _ZThn176_N8sockinfoD1Ev@Base 8.7.5
- _ZThn176_N9neigh_ethD0Ev@Base 8.7.5
- _ZThn176_N9neigh_ethD1Ev@Base 8.7.5
- _ZThn184_N11neigh_entry20handle_timer_expiredEPv@Base 8.7.5
- _ZThn184_N11neigh_entryD0Ev@Base 8.7.5
- _ZThn184_N11neigh_entryD1Ev@Base 8.7.5
- _ZThn184_N18neigh_ib_broadcastD0Ev@Base 8.7.5
- _ZThn184_N18neigh_ib_broadcastD1Ev@Base 8.7.5
- _ZThn184_N8neigh_ib20handle_timer_expiredEPv@Base 8.7.5
- _ZThn184_N8neigh_ibD0Ev@Base 8.7.5
- _ZThn184_N8neigh_ibD1Ev@Base 8.7.5
- _ZThn184_N9neigh_ethD0Ev@Base 8.7.5
- _ZThn184_N9neigh_ethD1Ev@Base 8.7.5
- _ZThn1872_N17net_device_val_ibD0Ev@Base 8.7.5
- _ZThn1872_N17net_device_val_ibD1Ev@Base 8.7.5
- _ZThn1872_NK17net_device_val_ib22get_obs_transport_typeEv@Base 8.7.5
- _ZThn1880_N17net_device_val_ibD0Ev@Base 8.7.5
- _ZThn1880_N17net_device_val_ibD1Ev@Base 8.7.5
- _ZThn2304_N12sockinfo_tcp20handle_timer_expiredEPv@Base 8.8.1
- _ZThn2304_N12sockinfo_tcpD0Ev@Base 8.8.1
- _ZThn2304_N12sockinfo_tcpD1Ev@Base 8.8.1
- _ZThn24_N13dst_entry_tcpD0Ev@Base 8.7.5
- _ZThn24_N13dst_entry_tcpD1Ev@Base 8.7.5
- _ZThn24_N13dst_entry_udpD0Ev@Base 8.7.5
- _ZThn24_N13dst_entry_udpD1Ev@Base 8.7.5
- _ZThn24_N15ip_frag_manager20handle_timer_expiredEPv@Base 8.7.5
- _ZThn24_N15ip_frag_managerD0Ev@Base 8.7.5
- _ZThn24_N15ip_frag_managerD1Ev@Base 8.7.5
- _ZThn24_N16dst_entry_udp_mcD0Ev@Base 8.7.5
- _ZThn24_N16dst_entry_udp_mcD1Ev@Base 8.7.5
- _ZThn24_N9dst_entryD0Ev@Base 8.7.5
- _ZThn24_N9dst_entryD1Ev@Base 8.7.5
- _ZThn32_N13dst_entry_tcpD0Ev@Base 8.7.5
- _ZThn32_N13dst_entry_tcpD1Ev@Base 8.7.5
- _ZThn32_N13dst_entry_udpD0Ev@Base 8.7.5
- _ZThn32_N13dst_entry_udpD1Ev@Base 8.7.5
- _ZThn32_N16dst_entry_udp_mcD0Ev@Base 8.7.5
- _ZThn32_N16dst_entry_udp_mcD1Ev@Base 8.7.5
- _ZThn32_N9dst_entry9notify_cbEv@Base 8.7.5
- _ZThn32_N9dst_entryD0Ev@Base 8.7.5
- _ZThn32_N9dst_entryD1Ev@Base 8.7.5
- _ZThn32_NK9dst_entry22get_obs_transport_typeEv@Base 8.7.5
- _ZThn56_N13fd_collection20handle_timer_expiredEPv@Base 8.7.5
- _ZThn56_N13fd_collectionD0Ev@Base 8.7.5
- _ZThn56_N13fd_collectionD1Ev@Base 8.7.5
- _ZThn56_N9epfd_info9clean_objEv@Base 8.7.5
- _ZThn56_N9epfd_infoD0Ev@Base 8.7.5
- _ZThn56_N9epfd_infoD1Ev@Base 8.7.5
- _ZThn64_N12igmp_handler9clean_objEv@Base 8.7.5
- _ZThn64_N12igmp_handlerD0Ev@Base 8.7.5
- _ZThn64_N12igmp_handlerD1Ev@Base 8.7.5
- _ZThn72_N9epfd_infoD0Ev@Base 8.7.5
- _ZThn72_N9epfd_infoD1Ev@Base 8.7.5
- _ZThn80_N12igmp_handlerD0Ev@Base 8.7.5
- _ZThn80_N12igmp_handlerD1Ev@Base 8.7.5
- _ZThn8_N12igmp_handlerD0Ev@Base 8.7.5
- _ZThn8_N12igmp_handlerD1Ev@Base 8.7.5
- _ZThn8_N14time_converter9clean_objEv@Base 8.7.5
- _ZThn8_N15cache_table_mgrI10ip_addressP14net_device_valE20handle_timer_expiredEPv@Base 8.7.5
- _ZThn8_N15cache_table_mgrI10ip_addressP14net_device_valED0Ev@Base 8.7.5
- _ZThn8_N15cache_table_mgrI10ip_addressP14net_device_valED1Ev@Base 8.7.5
- _ZThn8_N15cache_table_mgrI20route_rule_table_keyP9route_valE20handle_timer_expiredEPv@Base 8.7.5
- _ZThn8_N15cache_table_mgrI20route_rule_table_keyP9route_valED0Ev@Base 8.7.5
- _ZThn8_N15cache_table_mgrI20route_rule_table_keyP9route_valED1Ev@Base 8.7.5
- _ZThn8_N15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE20handle_timer_expiredEPv@Base 8.7.5
- _ZThn8_N15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEED0Ev@Base 8.7.5
- _ZThn8_N15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEED1Ev@Base 8.7.5
- _ZThn8_N15cache_table_mgrI9neigh_keyP9neigh_valE20handle_timer_expiredEPv@Base 8.7.5
- _ZThn8_N15cache_table_mgrI9neigh_keyP9neigh_valED0Ev@Base 8.7.5
- _ZThn8_N15cache_table_mgrI9neigh_keyP9neigh_valED1Ev@Base 8.7.5
- _ZThn8_N15command_netlink20handle_timer_expiredEPv@Base 8.7.5
- _ZThn8_N15command_netlinkD0Ev@Base 8.7.5
- _ZThn8_N15command_netlinkD1Ev@Base 8.7.5
- _ZThn8_N15neigh_table_mgrD0Ev@Base 8.7.5
- _ZThn8_N15neigh_table_mgrD1Ev@Base 8.7.5
- _ZThn8_N20net_device_table_mgr20handle_timer_expiredEPv@Base 8.7.5
- _ZThn8_N20net_device_table_mgrD0Ev@Base 8.7.5
- _ZThn8_N20net_device_table_mgrD1Ev@Base 8.7.5
- _ZThn8_N21tcp_timers_collection9clean_objEv@Base 8.7.5
- _ZThn8_N21tcp_timers_collectionD0Ev@Base 8.7.5
- _ZThn8_N21tcp_timers_collectionD1Ev@Base 8.7.5
- _ZThn8_N21time_converter_ib_ctxD0Ev@Base 8.7.5
- _ZThn8_N21time_converter_ib_ctxD1Ev@Base 8.7.5
- _ZZ14gettimefromtscP8timespecE8ts_start@Base 8.7.5
- _ZZ14gettimefromtscP8timespecE9tsc_start@Base 8.7.5
- _ZZN11mce_sys_var8instanceEvE12the_instance@Base 8.7.5
- _ZZN15sysctl_reader_t12get_tcp_rmemEbE7tcp_mem@Base 8.7.5
- _ZZN15sysctl_reader_t12get_tcp_wmemEbE7tcp_mem@Base 8.7.5
- _ZZN15sysctl_reader_t16get_net_ipv4_ttlEbE3val@Base 8.7.5
- _ZZN15sysctl_reader_t18get_listen_maxconnEbE3val@Base 8.7.5
- _ZZN15sysctl_reader_t21get_net_core_rmem_maxEbE3val@Base 8.7.5
- _ZZN15sysctl_reader_t21get_net_core_wmem_maxEbE3val@Base 8.7.5
- _ZZN15sysctl_reader_t22get_tcp_window_scalingEbE3val@Base 8.7.5
- _ZZN15sysctl_reader_t23get_igmp_max_membershipEbE3val@Base 8.7.5
- _ZZN15sysctl_reader_t23get_tcp_max_syn_backlogEbE3val@Base 8.7.5
- _ZZN15sysctl_reader_t27get_net_ipv4_tcp_timestampsEbE3val@Base 8.7.5
- _ZZN15sysctl_reader_t30get_igmp_max_source_membershipEbE3val@Base 8.7.5
- _ZZN15sysctl_reader_t8instanceEvE12the_instance@Base 8.7.5
- _ZZN8sockinfo10set_eventsEmE19enable_socketxtreme@Base 8.8.1
- __instance_list@Base 8.7.5
- __read_chk@Base 8.7.5
- __recv_chk@Base 8.7.5
- __recvfrom_chk@Base 8.7.5
- __res_iclose@Base 8.7.5
- __vma_config_empty@Base 8.7.5
- __vma_config_line_num@Base 8.7.5
- __vma_dump_address_port_rule_config_state@Base 8.7.5
- __vma_free_resources@Base 8.7.5
- __vma_match_by_program@Base 8.7.5
- __vma_match_program_name@Base 8.7.5
- __vma_match_tcp_client@Base 8.7.5
- __vma_match_tcp_server@Base 8.7.5
- __vma_match_udp_connect@Base 8.7.5
- __vma_match_udp_receiver@Base 8.7.5
- __vma_match_udp_sender@Base 8.7.5
- __vma_match_user_defined_id@Base 8.7.5
- __vma_min_level@Base 8.7.5
- __vma_parse_config_file@Base 8.7.5
- __vma_parse_config_line@Base 8.7.5
- __vma_print_conf_file@Base 8.7.5
- __vma_sockaddr_to_vma@Base 8.7.5
- accept4@Base 8.7.5
- accept@Base 8.7.5
- bind@Base 8.7.5
- cc_ack_received@Base 8.7.5
- cc_cong_signal@Base 8.7.5
- cc_conn_init@Base 8.7.5
- cc_destroy@Base 8.7.5
- cc_init@Base 8.7.5
- cc_post_recovery@Base 8.7.5
- close@Base 8.7.5
- connect@Base 8.7.5
- creat@Base 8.7.5
- cubic_cc_algo@Base 8.7.5
- daemon@Base 8.7.5
- desc_base@Base 8.7.5
- desc_free_list_count@Base 8.7.5
- desc_free_list_head@Base 8.7.5
- dup2@Base 8.7.5
- dup@Base 8.7.5
- enable_ts_option@Base 8.7.5
- enable_wnd_scale@Base 8.7.5
- epoll_create1@Base 8.7.5
- epoll_create@Base 8.7.5
- epoll_ctl@Base 8.7.5
- epoll_pwait@Base 8.7.5
- epoll_wait@Base 8.7.5
- external_ip_output@Base 8.7.5
- external_ip_route_mtu@Base 8.7.5
- external_tcp_seg_alloc@Base 8.7.5
- external_tcp_seg_free@Base 8.7.5
- external_tcp_state_observer@Base 8.7.5
- external_tcp_tx_pbuf_alloc@Base 8.7.5
- external_tcp_tx_pbuf_free@Base 8.7.5
- fcntl@Base 8.7.5
- fork@Base 8.7.5
- from_int@Base 8.7.5
- from_str@Base 8.7.5
- g_act_prev@Base 8.7.5
- g_b_exit@Base 8.7.5
- g_buffer_pool_rx@Base 8.7.5
- g_buffer_pool_tx@Base 8.7.5
- g_cpu_manager@Base 8.7.5
- g_init_global_ctors_done@Base 8.7.5
- g_init_ibv_fork_done@Base 8.7.5
- g_is_forked_child@Base 8.7.5
- g_last_zero_polling_time@Base 8.7.5
- g_n_internal_thread_id@Base 8.7.5
- g_n_last_checked_index@Base 8.7.5
- g_n_thread_cpu_core@Base 8.7.5
- g_p_agent@Base 8.7.5
- g_p_event_handler_manager@Base 8.7.5
- g_p_fd_collection@Base 8.7.5
- g_p_ib_ctx_handler_collection@Base 8.7.5
- g_p_igmp_mgr@Base 8.7.5
- g_p_ip_frag_manager@Base 8.7.5
- g_p_lwip@Base 8.7.5
- g_p_neigh_table_mgr@Base 8.7.5
- g_p_net_device_table_mgr@Base 8.7.5
- g_p_netlink_handler@Base 8.7.5
- g_p_ring_profile@Base 8.7.5
- g_p_route_table_mgr@Base 8.7.5
- g_p_rule_table_mgr@Base 8.7.5
- g_p_stats_data_reader@Base 8.7.5
- g_p_vlogger_details@Base 8.7.5
- g_p_vlogger_level@Base 8.7.5
- g_p_vlogger_timer_handler@Base 8.7.5
- g_poll_stats@Base 8.7.5
- g_polling_time_usec@Base 8.7.5
- g_select_stats@Base 8.7.5
- g_si_tscv_last_poll@Base 8.7.5
- g_stats_file@Base 8.7.5
- g_tcp_seg_pool@Base 8.7.5
- g_tcp_timers_collection@Base 8.7.5
- g_vlogger_cb@Base 8.7.5
- g_vlogger_details@Base 8.7.5
- g_vlogger_fd@Base 8.7.5
- g_vlogger_file@Base 8.7.5
- g_vlogger_level@Base 8.7.5
- g_vlogger_log_in_colors@Base 8.7.5
- g_vlogger_module_name@Base 8.7.5
- g_vlogger_usec_on_startup@Base 8.7.5
- get_color@Base 8.7.5
- getpeername@Base 8.7.5
- getsockname@Base 8.7.5
- getsockopt@Base 8.7.5
- gettid@Base 8.7.5
- hole_base@Base 8.7.5
- hole_free_list_count@Base 8.7.5
- hole_free_list_head@Base 8.7.5
- ioctl@Base 8.7.5
- libvma_yy_create_buffer@Base 8.7.5
- libvma_yy_delete_buffer@Base 8.7.5
- libvma_yy_flex_debug@Base 8.7.5
- libvma_yy_flush_buffer@Base 8.7.5
- libvma_yy_scan_buffer@Base 8.7.5
- libvma_yy_scan_bytes@Base 8.7.5
- libvma_yy_scan_string@Base 8.7.5
- libvma_yy_switch_to_buffer@Base 8.7.5
- libvma_yyalloc@Base 8.7.5
- libvma_yychar@Base 8.7.5
- libvma_yyerror@Base 8.7.5
- libvma_yyfree@Base 8.7.5
- libvma_yyget_debug@Base 8.7.5
- libvma_yyget_in@Base 8.7.5
- libvma_yyget_leng@Base 8.7.5
- libvma_yyget_lineno@Base 8.7.5
- libvma_yyget_out@Base 8.7.5
- libvma_yyget_text@Base 8.7.5
- libvma_yyin@Base 8.7.5
- libvma_yyleng@Base 8.7.5
- libvma_yylex@Base 8.7.5
- libvma_yylex_destroy@Base 8.7.5
- libvma_yylineno@Base 8.7.5
- libvma_yylval@Base 8.7.5
- libvma_yynerrs@Base 8.7.5
- libvma_yyout@Base 8.7.5
- libvma_yyparse@Base 8.7.5
- libvma_yypop_buffer_state@Base 8.7.5
- libvma_yypush_buffer_state@Base 8.7.5
- libvma_yyrealloc@Base 8.7.5
- libvma_yyrestart@Base 8.7.5
- libvma_yyset_debug@Base 8.7.5
- libvma_yyset_in@Base 8.7.5
- libvma_yyset_lineno@Base 8.7.5
- libvma_yyset_out@Base 8.7.5
- libvma_yytext@Base 8.7.5
- libvma_yywrap@Base 8.7.5
- link_event_callback@Base 8.7.5
- listen@Base 8.7.5
- lwip_cc_algo@Base 8.7.5
- lwip_cc_algo_module@Base 8.7.5
- lwip_init@Base 8.7.5
- lwip_tcp_mss@Base 8.7.5
- main_destroy@Base 8.7.5
- main_init@Base 8.7.5
- neigh_event_callback@Base 8.7.5
- none_cc_algo@Base 8.7.5
- open@Base 8.7.5
- orig_os_api@Base 8.7.5
- pbuf_cat@Base 8.7.5
- pbuf_clen@Base 8.7.5
- pbuf_free@Base 8.7.5
- pbuf_header@Base 8.7.5
- pbuf_realloc@Base 8.7.5
- pbuf_ref@Base 8.7.5
- pbuf_split_64k@Base 8.7.5
- pipe@Base 8.7.5
- poll@Base 8.7.5
- ppoll@Base 8.7.5
- printed_bpool_limit_info@Base 8.7.5
- printed_cq_limit_info@Base 8.7.5
- printed_ring_limit_info@Base 8.7.5
- printed_sock_limit_info@Base 8.7.5
- printf_backtrace@Base 8.7.5
- pselect@Base 8.7.5
- rcv_wnd_scale@Base 8.7.5
- read@Base 8.7.5
- readv@Base 8.7.5
- recv@Base 8.7.5
- recvfrom@Base 8.7.5
- recvmmsg@Base 8.7.5
- recvmsg@Base 8.7.5
- register_ip_output@Base 8.7.5
- register_ip_route_mtu@Base 8.7.5
- register_sys_now@Base 8.7.5
- register_tcp_seg_alloc@Base 8.7.5
- register_tcp_seg_free@Base 8.7.5
- register_tcp_state_observer@Base 8.7.5
- register_tcp_tx_pbuf_alloc@Base 8.7.5
- register_tcp_tx_pbuf_free@Base 8.7.5
- route_event_callback@Base 8.7.5
- select@Base 8.7.5
- send@Base 8.7.5
- sendfile64@Base 8.7.5
- sendfile@Base 8.7.5
- sendmmsg@Base 8.7.5
- sendmsg@Base 8.7.5
- sendto@Base 8.7.5
- setsockopt@Base 8.7.5
- shutdown@Base 8.7.5
- sigaction@Base 8.7.5
- sock_redirect_exit@Base 8.7.5
- sock_redirect_lib_load_constructor@Base 8.7.5
- sock_redirect_lib_load_destructor@Base 8.7.5
- sock_redirect_main@Base 8.7.5
- socket@Base 8.7.5
- socketpair@Base 8.7.5
- sys_now@Base 8.7.5
- tcp_backoff@Base 8.7.5
- tcp_input_pcb@Base 8.7.5
- tcp_persist_backoff@Base 8.7.5
- tcp_ticks@Base 8.7.5
- tcp_tmp_pcb@Base 8.7.5
- to_str@Base 8.7.5
- user_params@Base 8.7.5
- vfork@Base 8.7.5
- vlog_start@Base 8.7.5
- vlog_stop@Base 8.7.5
- vma_add_conf_rule@Base 8.7.5
- vma_add_ring_profile@Base 8.7.5
- vma_cyclic_buffer_read@Base 8.7.5
- vma_dereg_mr_on_ring@Base 8.7.5
- vma_dump_fd_stats@Base 8.7.5
- vma_free_packets@Base 8.7.5
- vma_get_mem_info@Base 8.7.5
- vma_get_ring_direct_descriptors@Base 8.7.5
- vma_get_socket_netowrk_header@Base 8.7.5
- vma_get_socket_rings_fds@Base 8.7.5
- vma_get_socket_rings_num@Base 8.7.5
- vma_get_socket_tx_ring_fd@Base 8.7.5
- vma_recvfrom_zcopy@Base 8.7.5
- vma_reg_mr_on_ring@Base 8.7.5
- vma_register_recv_callback@Base 8.7.5
- vma_socketxtreme_free_vma_buff@Base 8.7.5
- vma_socketxtreme_free_vma_packets@Base 8.7.5
- vma_socketxtreme_poll@Base 8.7.5
- vma_socketxtreme_ref_vma_buff@Base 8.7.5
- vma_thread_offload@Base 8.7.5
- vma_version_str@Base 8.7.5
- write@Base 8.7.5
- writev@Base 8.7.5
+ _Z11check_debugv@Base 8.8.1.really.8.7.7
+ _Z11poll_helperP6pollfdmiPK10__sigset_t@Base 8.8.1.really.8.7.7
+ _Z12handle_closeibb@Base 8.8.1.really.8.7.7
+ _Z12prepare_forkv@Base 8.8.1.really.8.7.7
+ _Z12safe_mce_sysv@Base 8.8.1.really.8.7.7
+ _Z12should_writev@Base 8.8.1.really.8.7.7
+ _Z13link_callbackP8nl_cacheP9nl_objectiPv@Base 8.8.1.really.8.7.7
+ _Z13nl_msg_rcv_cbP6nl_msgPv@Base 8.8.1.really.8.7.7
+ _Z13reset_globalsv@Base 8.8.1.really.8.7.7
+ _Z13select_helperiP6fd_setS0_S0_P7timevalPK10__sigset_t@Base 8.8.1.really.8.7.7
+ _Z13sprintf_fdsetPciiP6fd_set@Base 8.8.1.really.8.7.7
+ _Z14compare_doubledd@Base 8.8.1.really.8.7.7
+ _Z14dbg_send_mcpktv@Base 8.8.1.really.8.7.7
+ _Z14get_orig_funcsv@Base 8.8.1.really.8.7.7
+ _Z14gettimefromtscP8timespec@Base 8.8.1.really.8.7.7
+ _Z14neigh_callbackP8nl_cacheP9nl_objectiPv@Base 8.8.1.really.8.7.7
+ _Z14priv_read_filePKcPcm13vlog_levels_t@Base 8.8.1.really.8.7.7
+ _Z14route_callbackP8nl_cacheP9nl_objectiPv@Base 8.8.1.really.8.7.7
+ _Z14set_env_paramsv@Base 8.8.1.really.8.7.7
+ _Z14set_ib_arp_hdrP10ib_arp_hdrjjPKhS2_@Base 8.8.1.really.8.7.7
+ _Z15check_cpu_speedv@Base 8.8.1.really.8.7.7
+ _Z15do_global_ctorsv@Base 8.8.1.really.8.7.7
+ _Z15sendfile_helperP13socket_fd_apiiPlm@Base 8.8.1.really.8.7.7
+ _Z15set_eth_arp_hdrP11eth_arp_hdrjjPKhS2_@Base 8.8.1.really.8.7.7
+ _Z15socket_internaliiib@Base 8.8.1.really.8.7.7
+ _Z15thread_mode_str13thread_mode_t@Base 8.8.1.really.8.7.7
+ _Z16check_locked_memv@Base 8.8.1.really.8.7.7
+ _Z16get_lwip_tcp_mssjj@Base 8.8.1.really.8.7.7
+ _Z16get_netvsc_slavePKcPcRj@Base 8.8.1.really.8.7.7
+ _Z16memcpy_fromiovecPhPK5iovecmmm@Base 8.8.1.really.8.7.7
+ _Z16netmask_bitcountj@Base 8.8.1.really.8.7.7
+ _Z16print_full_statsP14socket_stats_tP13mc_grp_info_tP8_IO_FILE@Base 8.8.1.really.8.7.7
+ _Z16read_file_to_intPKci@Base 8.8.1.really.8.7.7
+ _Z16sprintf_sockaddrPciPK8sockaddrj@Base 8.8.1.really.8.7.7
+ _Z16vma_epoll_createii@Base 8.8.1.really.8.7.7
+ _Z17epoll_wait_helperiP11epoll_eventiiPK10__sigset_t@Base 8.8.1.really.8.7.7
+ _Z17get_local_ll_addrPKcPhib@Base 8.8.1.really.8.7.7
+ _Z17set_fd_block_modeib@Base 8.8.1.really.8.7.7
+ _Z18check_device_existPKcS0_@Base 8.8.1.really.8.7.7
+ _Z18get_ifinfo_from_ipRK8sockaddrPcRj@Base 8.8.1.really.8.7.7
+ _Z18get_sys_max_fd_numi@Base 8.8.1.really.8.7.7
+ _Z18print_netstat_likeP14socket_stats_tP13mc_grp_info_tP8_IO_FILEi@Base 8.8.1.really.8.7.7
+ _Z18timer_req_type_str16timer_req_type_t@Base 8.8.1.really.8.7.7
+ _Z18to_str_socket_typei@Base 8.8.1.really.8.7.7
+ _Z18vma_ib_mlx5_get_cqP6ibv_cqP14vma_ib_mlx5_cq@Base 8.8.1.really.8.7.7
+ _Z18vma_ib_mlx5_get_qpP6ibv_qpP14vma_ib_mlx5_qpj@Base 8.8.1.really.8.7.7
+ _Z18vma_rdma_lib_resetv@Base 8.8.1.really.8.7.7
+ _Z19Floyd_LogCircleInfoP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _Z19check_netperf_flagsv@Base 8.8.1.really.8.7.7
+ _Z19compute_ip_checksumPKtj@Base 8.8.1.really.8.7.7
+ _Z19compute_tx_checksumP14mem_buf_desc_tbb@Base 8.8.1.really.8.7.7
+ _Z19socket_get_type_stri@Base 8.8.1.really.8.7.7
+ _Z19validate_ipoib_propPKcjS0_S0_iPcS1_@Base 8.8.1.really.8.7.7
+ _Z20compute_tcp_checksumPK5iphdrPKt@Base 8.8.1.really.8.7.7
+ _Z20event_handler_threadPv@Base 8.8.1.really.8.7.7
+ _Z20get_bond_slave_statePKcPci@Base 8.8.1.really.8.7.7
+ _Z20get_ipv4_from_ifnamePcP11sockaddr_in@Base 8.8.1.really.8.7.7
+ _Z20get_port_from_ifnamePKc@Base 8.8.1.really.8.7.7
+ _Z20priv_igmp_type_tostrh@Base 8.8.1.really.8.7.7
+ _Z20vma_shmem_stats_openPP13vlog_levels_tPPh@Base 8.8.1.really.8.7.7
+ _Z21check_if_regular_filePc@Base 8.8.1.really.8.7.7
+ _Z21get_ipv4_from_ifindexiP11sockaddr_in@Base 8.8.1.really.8.7.7
+ _Z21get_ofed_version_infoPci@Base 8.8.1.really.8.7.7
+ _Z21nl_socket_handle_freeP7nl_sock@Base 8.8.1.really.8.7.7
+ _Z21register_handler_segvv@Base 8.8.1.really.8.7.7
+ _Z21socket_get_domain_stri@Base 8.8.1.really.8.7.7
+ _Z21vma_ib_mlx5_post_recvP14vma_ib_mlx5_qpP11ibv_recv_wrPS2_@Base 8.8.1.really.8.7.7
+ _Z21vma_shmem_stats_closev@Base 8.8.1.really.8.7.7
+ _Z22get_if_mtu_from_ifnamePKc@Base 8.8.1.really.8.7.7
+ _Z22get_iftype_from_ifnamePKc@Base 8.8.1.really.8.7.7
+ _Z22nl_socket_handle_allocv@Base 8.8.1.really.8.7.7
+ _Z22priv_ibv_wc_status_str13ibv_wc_status@Base 8.8.1.really.8.7.7
+ _Z22vma_ib_mlx5dv_init_objP10mlx5dv_objm@Base 8.8.1.really.8.7.7
+ _Z22vma_stats_mc_group_addjP14socket_stats_t@Base 8.8.1.really.8.7.7
+ _Z23compute_udp_checksum_rxPK5iphdrPK6udphdrP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _Z23get_base_interface_namePKcPcm@Base 8.8.1.really.8.7.7
+ _Z23get_vlan_id_from_ifnamePKc@Base 8.8.1.really.8.7.7
+ _Z23print_roce_lag_warningsPcS_PKcS1_@Base 8.8.1.really.8.7.7
+ _Z23priv_ibv_event_desc_str14ibv_event_type@Base 8.8.1.really.8.7.7
+ _Z23priv_ibv_port_state_str14ibv_port_state@Base 8.8.1.really.8.7.7
+ _Z23priv_ibv_query_qp_stateP6ibv_qp@Base 8.8.1.really.8.7.7
+ _Z24buffer_batching_mode_str22buffer_batching_mode_t@Base 8.8.1.really.8.7.7
+ _Z24get_cq_mgr_from_cq_eventP16ibv_comp_channel@Base 8.8.1.really.8.7.7
+ _Z24get_interface_oper_statePKcPci@Base 8.8.1.really.8.7.7
+ _Z24priv_ibv_find_pkey_indexP11ibv_contexthtPt@Base 8.8.1.really.8.7.7
+ _Z24setsockopt_ip_opt_to_stri@Base 8.8.1.really.8.7.7
+ _Z25check_bond_roce_lag_existPciPKc@Base 8.8.1.really.8.7.7
+ _Z25check_device_name_ib_namePKcS0_@Base 8.8.1.really.8.7.7
+ _Z25check_netvsc_device_existPKc@Base 8.8.1.really.8.7.7
+ _Z25get_address_port_rule_strPcS_P17address_port_rule@Base 8.8.1.really.8.7.7
+ _Z25get_bond_slaves_name_listPKcPci@Base 8.8.1.really.8.7.7
+ _Z25get_window_scaling_factorii@Base 8.8.1.really.8.7.7
+ _Z25print_vma_global_settingsv@Base 8.8.1.really.8.7.7
+ _Z25priv_ibv_modify_qp_to_errP6ibv_qp@Base 8.8.1.really.8.7.7
+ _Z25validate_raw_qp_privligesv@Base 8.8.1.really.8.7.7
+ _Z25vma_ib_mlx5_req_notify_cqP14vma_ib_mlx5_cqi@Base 8.8.1.really.8.7.7
+ _Z25vma_stats_mc_group_removejP14socket_stats_t@Base 8.8.1.really.8.7.7
+ _Z26get_bond_active_slave_namePKcPci@Base 8.8.1.really.8.7.7
+ _Z26iphdr_protocol_type_to_stri@Base 8.8.1.really.8.7.7
+ _Z26print_netstat_like_headersP8_IO_FILE@Base 8.8.1.really.8.7.7
+ _Z27priv_ibv_modify_qp_to_resetP6ibv_qp@Base 8.8.1.really.8.7.7
+ _Z28nl_cache_mngr_compatible_addP13nl_cache_mngrPKcPFvP8nl_cacheP9nl_objectiPvES7_PS4_@Base 8.8.1.really.8.7.7
+ _Z28nl_object_get_compatible_oifP10rtnl_route@Base 8.8.1.really.8.7.7
+ _Z28priv_ibv_modify_qp_ratelimitP6ibv_qpR16vma_rate_limit_tj@Base 8.8.1.really.8.7.7
+ _Z29priv_ibv_modify_cq_moderationP6ibv_cqjj@Base 8.8.1.really.8.7.7
+ _Z30get_vlan_base_name_from_ifnamePKcPcm@Base 8.8.1.really.8.7.7
+ _Z30nl_cache_mngr_compatible_allocP7nl_sockii@Base 8.8.1.really.8.7.7
+ _Z30priv_ibv_create_flow_supportedP6ibv_qph@Base 8.8.1.really.8.7.7
+ _Z30priv_ibv_query_burst_supportedP6ibv_qph@Base 8.8.1.really.8.7.7
+ _Z30write_version_details_to_shmemP14version_info_t@Base 8.8.1.really.8.7.7
+ _Z31dbg_check_if_need_to_send_mcpktv@Base 8.8.1.really.8.7.7
+ _Z31nl_object_get_compatible_metricP10rtnl_routei@Base 8.8.1.really.8.7.7
+ _Z31run_and_retreive_system_commandPKcPci@Base 8.8.1.really.8.7.7
+ _Z31to_str_socket_type_netstat_likei@Base 8.8.1.really.8.7.7
+ _Z32nl_object_get_compatible_gatewayP10rtnl_route@Base 8.8.1.really.8.7.7
+ _Z33priv_ibv_query_flow_tag_supportedP6ibv_qph@Base 8.8.1.really.8.7.7
+ _Z33vma_stats_instance_get_poll_blockP18iomux_func_stats_t@Base 8.8.1.really.8.7.7
+ _Z34nl_socket_handle_disable_seq_checkP7nl_sock@Base 8.8.1.really.8.7.7
+ _Z34vma_stats_instance_create_cq_blockP10cq_stats_t@Base 8.8.1.really.8.7.7
+ _Z34vma_stats_instance_remove_cq_blockP10cq_stats_t@Base 8.8.1.really.8.7.7
+ _Z35priv_ibv_modify_qp_from_init_to_rtsP6ibv_qpj@Base 8.8.1.really.8.7.7
+ _Z35vma_stats_instance_get_select_blockP18iomux_func_stats_t@Base 8.8.1.really.8.7.7
+ _Z36vma_stats_instance_create_ring_blockP12ring_stats_t@Base 8.8.1.really.8.7.7
+ _Z36vma_stats_instance_remove_ring_blockP12ring_stats_t@Base 8.8.1.really.8.7.7
+ _Z37vma_stats_instance_create_bpool_blockP13bpool_stats_t@Base 8.8.1.really.8.7.7
+ _Z37vma_stats_instance_create_epoll_blockiP18iomux_func_stats_t@Base 8.8.1.really.8.7.7
+ _Z37vma_stats_instance_remove_bpool_blockP13bpool_stats_t@Base 8.8.1.really.8.7.7
+ _Z37vma_stats_instance_remove_epoll_blockP18iomux_func_stats_t@Base 8.8.1.really.8.7.7
+ _Z38priv_ibv_modify_qp_from_err_to_init_udP6ibv_qphtj@Base 8.8.1.really.8.7.7
+ _Z38vma_stats_instance_create_socket_blockP14socket_stats_t@Base 8.8.1.really.8.7.7
+ _Z38vma_stats_instance_remove_socket_blockP14socket_stats_t@Base 8.8.1.really.8.7.7
+ _Z39priv_ibv_modify_qp_from_err_to_init_rawP6ibv_qph@Base 8.8.1.really.8.7.7
+ _Z39validate_user_has_cap_net_raw_privligesv@Base 8.8.1.really.8.7.7
+ _Z42check_flow_steering_log_num_mgm_entry_sizev@Base 8.8.1.really.8.7.7
+ _Z8fd2inodei@Base 8.8.1.really.8.7.7
+ _Z8isCircleP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZGVZN11mce_sys_var8instanceEvE12the_instance@Base 8.8.1.really.8.7.7
+ _ZGVZN15sysctl_reader_t8instanceEvE12the_instance@Base 8.8.1.really.8.7.7
+ _ZGVZN8sockinfo10set_eventsEmE19enable_socketxtreme@Base 8.8.1.really.8.7.7
+ _ZN10IPoIB_addr11extract_qpnEv@Base 8.8.1.really.8.7.7
+ _ZN10IPoIB_addrD0Ev@Base 8.8.1.really.8.7.7
+ _ZN10IPoIB_addrD1Ev@Base 8.8.1.really.8.7.7
+ _ZN10IPoIB_addrD2Ev@Base 8.8.1.really.8.7.7
+ _ZN10IPoIB_addraSERKS_@Base 8.8.1.really.8.7.7
+ _ZN10L2_address3setEPhm@Base 8.8.1.really.8.7.7
+ _ZN10L2_addressC1EPhm@Base 8.8.1.really.8.7.7
+ _ZN10L2_addressC2EPhm@Base 8.8.1.really.8.7.7
+ _ZN10L2_addressaSERKS_@Base 8.8.1.really.8.7.7
+ _ZN10flow_tuple10is_3_tupleEv@Base 8.8.1.really.8.7.7
+ _ZN10flow_tuple10is_5_tupleEv@Base 8.8.1.really.8.7.7
+ _ZN10flow_tuple17is_local_loopbackEv@Base 8.8.1.really.8.7.7
+ _ZN10flow_tuple4hashEv@Base 8.8.1.really.8.7.7
+ _ZN10flow_tuple6is_tcpEv@Base 8.8.1.really.8.7.7
+ _ZN10flow_tuple7set_strEv@Base 8.8.1.really.8.7.7
+ _ZN10flow_tuple9is_udp_mcEv@Base 8.8.1.really.8.7.7
+ _ZN10flow_tuple9is_udp_ucEv@Base 8.8.1.really.8.7.7
+ _ZN10flow_tupleC1ER9sock_addrS1_13in_protocol_t@Base 8.8.1.really.8.7.7
+ _ZN10flow_tupleC1ERKS_@Base 8.8.1.really.8.7.7
+ _ZN10flow_tupleC1Ejtjt13in_protocol_t@Base 8.8.1.really.8.7.7
+ _ZN10flow_tupleC1Ev@Base 8.8.1.really.8.7.7
+ _ZN10flow_tupleC2ER9sock_addrS1_13in_protocol_t@Base 8.8.1.really.8.7.7
+ _ZN10flow_tupleC2ERKS_@Base 8.8.1.really.8.7.7
+ _ZN10flow_tupleC2Ejtjt13in_protocol_t@Base 8.8.1.really.8.7.7
+ _ZN10flow_tupleC2Ev@Base 8.8.1.really.8.7.7
+ _ZN10flow_tupleD0Ev@Base 8.8.1.really.8.7.7
+ _ZN10flow_tupleD1Ev@Base 8.8.1.really.8.7.7
+ _ZN10flow_tupleD2Ev@Base 8.8.1.really.8.7.7
+ _ZN10flow_tupleaSERKS_@Base 8.8.1.really.8.7.7
+ _ZN10ip_addressD0Ev@Base 8.8.1.really.8.7.7
+ _ZN10ip_addressD1Ev@Base 8.8.1.really.8.7.7
+ _ZN10ip_addressD2Ev@Base 8.8.1.really.8.7.7
+ _ZN10lock_mutex4lockEv@Base 8.8.1.really.8.7.7
+ _ZN10lock_mutex6unlockEv@Base 8.8.1.really.8.7.7
+ _ZN10lock_mutex7trylockEv@Base 8.8.1.really.8.7.7
+ _ZN10lock_mutexD0Ev@Base 8.8.1.really.8.7.7
+ _ZN10lock_mutexD1Ev@Base 8.8.1.really.8.7.7
+ _ZN10lock_mutexD2Ev@Base 8.8.1.really.8.7.7
+ _ZN10qp_mgr_eth14prepare_ibv_qpER19ibv_qp_init_attr_ex@Base 8.8.1.really.8.7.7
+ _ZN10qp_mgr_eth24modify_qp_to_ready_stateEv@Base 8.8.1.really.8.7.7
+ _ZN10qp_mgr_ethD0Ev@Base 8.8.1.really.8.7.7
+ _ZN10qp_mgr_ethD1Ev@Base 8.8.1.really.8.7.7
+ _ZN10qp_mgr_ethD2Ev@Base 8.8.1.really.8.7.7
+ _ZN10ring_slave11attach_flowER10flow_tupleP13pkt_rcvr_sink@Base 8.8.1.really.8.7.7
+ _ZN10ring_slave11detach_flowER10flow_tupleP13pkt_rcvr_sink@Base 8.8.1.really.8.7.7
+ _ZN10ring_slave11generate_idEPhS0_ttjjtt@Base 8.8.1.really.8.7.7
+ _ZN10ring_slave11generate_idEv@Base 8.8.1.really.8.7.7
+ _ZN10ring_slave16flow_tcp_del_allEv@Base 8.8.1.really.8.7.7
+ _ZN10ring_slave16flow_udp_del_allEv@Base 8.8.1.really.8.7.7
+ _ZN10ring_slave16is_active_memberEPS_i@Base 8.8.1.really.8.7.7
+ _ZN10ring_slave17rx_process_bufferEP14mem_buf_desc_tPv@Base 8.8.1.really.8.7.7
+ _ZN10ring_slave23request_more_tx_buffersEjj@Base 8.8.1.really.8.7.7
+ _ZN10ring_slave28inc_tx_retransmissions_statsEi@Base 8.8.1.really.8.7.7
+ _ZN10ring_slave7restartEv@Base 8.8.1.really.8.7.7
+ _ZN10ring_slave9is_memberEPS_@Base 8.8.1.really.8.7.7
+ _ZN10ring_slave9print_valEv@Base 8.8.1.really.8.7.7
+ _ZN10ring_slaveC1EiP4ring11ring_type_t@Base 8.8.1.really.8.7.7
+ _ZN10ring_slaveC2EiP4ring11ring_type_t@Base 8.8.1.really.8.7.7
+ _ZN10ring_slaveD0Ev@Base 8.8.1.really.8.7.7
+ _ZN10ring_slaveD1Ev@Base 8.8.1.really.8.7.7
+ _ZN10ring_slaveD2Ev@Base 8.8.1.really.8.7.7
+ _ZN10rule_entry7get_valERPSt5dequeIP8rule_valSaIS2_EE@Base 8.8.1.really.8.7.7
+ _ZN10rule_entryC1E20route_rule_table_key@Base 8.8.1.really.8.7.7
+ _ZN10rule_entryC2E20route_rule_table_key@Base 8.8.1.really.8.7.7
+ _ZN10rule_entryD0Ev@Base 8.8.1.really.8.7.7
+ _ZN10rule_entryD1Ev@Base 8.8.1.really.8.7.7
+ _ZN10rule_entryD2Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN10vma_list_tI14mem_buf_desc_tXadL_ZNS0_18buffer_node_offsetEvEEE9push_backEPS0_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN10vma_list_tI14mem_buf_desc_tXadL_ZNS0_18buffer_node_offsetEvEEED1Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN10vma_list_tI14mem_buf_desc_tXadL_ZNS0_18buffer_node_offsetEvEEED2Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN10vma_list_tIN12chunk_list_tIP14mem_buf_desc_tE9containerEXadL_ZNS4_11node_offsetEvEEED1Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN10vma_list_tIN12chunk_list_tIP14mem_buf_desc_tE9containerEXadL_ZNS4_11node_offsetEvEEED2Ev@Base 8.8.1.really.8.7.7
+ _ZN11LogDuration17TSC_RATE_PER_USECE@Base 8.8.1.really.8.7.7
+ _ZN11LogDuration5printEv@Base 8.8.1.really.8.7.7
+ _ZN11LogDurationC1EPKc13vlog_levels_t@Base 8.8.1.really.8.7.7
+ _ZN11LogDurationC2EPKc13vlog_levels_t@Base 8.8.1.really.8.7.7
+ _ZN11LogDurationD1Ev@Base 8.8.1.really.8.7.7
+ _ZN11LogDurationD2Ev@Base 8.8.1.really.8.7.7
+ _ZN11buffer_pool11put_buffersEP10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEEm@Base 8.8.1.really.8.7.7
+ _ZN11buffer_pool12buffersPanicEv@Base 8.8.1.really.8.7.7
+ _ZN11buffer_pool13print_val_tblEv@Base 8.8.1.really.8.7.7
+ _ZN11buffer_pool14get_free_countEv@Base 8.8.1.really.8.7.7
+ _ZN11buffer_pool15register_memoryEP14ib_ctx_handler@Base 8.8.1.really.8.7.7
+ _ZN11buffer_pool19set_RX_TX_for_statsEb@Base 8.8.1.really.8.7.7
+ _ZN11buffer_pool23get_buffers_thread_safeER10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEEP10ring_slavemj@Base 8.8.1.really.8.7.7
+ _ZN11buffer_pool23put_buffers_thread_safeEP10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEEm@Base 8.8.1.really.8.7.7
+ _ZN11buffer_pool23put_buffers_thread_safeEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN11buffer_pool24free_rx_lwip_pbuf_customEP4pbuf@Base 8.8.1.really.8.7.7
+ _ZN11buffer_pool24free_tx_lwip_pbuf_customEP4pbuf@Base 8.8.1.really.8.7.7
+ _ZN11buffer_pool31find_lkey_by_ib_ctx_thread_safeEP14ib_ctx_handler@Base 8.8.1.really.8.7.7
+ _ZN11buffer_pool35put_buffers_after_deref_thread_safeEP10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEE@Base 8.8.1.really.8.7.7
+ _ZN11buffer_poolC1EmmPFvP4pbufE@Base 8.8.1.really.8.7.7
+ _ZN11buffer_poolC2EmmPFvP4pbufE@Base 8.8.1.really.8.7.7
+ _ZN11buffer_poolD1Ev@Base 8.8.1.really.8.7.7
+ _ZN11buffer_poolD2Ev@Base 8.8.1.really.8.7.7
+ _ZN11cpu_manager22reserve_cpu_for_threadEmi@Base 8.8.1.really.8.7.7
+ _ZN11cpu_manager5resetEv@Base 8.8.1.really.8.7.7
+ _ZN11cpu_managerC1Ev@Base 8.8.1.really.8.7.7
+ _ZN11cpu_managerC2Ev@Base 8.8.1.really.8.7.7
+ _ZN11cpu_managerD0Ev@Base 8.8.1.really.8.7.7
+ _ZN11cpu_managerD1Ev@Base 8.8.1.really.8.7.7
+ _ZN11cpu_managerD2Ev@Base 8.8.1.really.8.7.7
+ _ZN11cq_mgr_mlx512get_cq_eventEv@Base 8.8.1.really.8.7.7
+ _ZN11cq_mgr_mlx513req_notify_cqEv@Base 8.8.1.really.8.7.7
+ _ZN11cq_mgr_mlx518drain_and_proccessEPm@Base 8.8.1.really.8.7.7
+ _ZN11cq_mgr_mlx521process_cq_element_rxEP14mem_buf_desc_tNS_13buff_status_eE@Base 8.8.1.really.8.7.7
+ _ZN11cq_mgr_mlx522fill_cq_hw_descriptorsER10hw_cq_data@Base 8.8.1.really.8.7.7
+ _ZN11cq_mgr_mlx527poll_and_process_element_rxEPP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN11cq_mgr_mlx527poll_and_process_element_rxEPmPv@Base 8.8.1.really.8.7.7
+ _ZN11cq_mgr_mlx527poll_and_process_element_txEPm@Base 8.8.1.really.8.7.7
+ _ZN11cq_mgr_mlx533poll_and_process_error_element_rxEP10mlx5_cqe64Pv@Base 8.8.1.really.8.7.7
+ _ZN11cq_mgr_mlx533poll_and_process_error_element_txEP10mlx5_cqe64Pm@Base 8.8.1.really.8.7.7
+ _ZN11cq_mgr_mlx54pollERNS_13buff_status_eE@Base 8.8.1.really.8.7.7
+ _ZN11cq_mgr_mlx58clean_cqEv@Base 8.8.1.really.8.7.7
+ _ZN11cq_mgr_mlx59add_qp_rxEP6qp_mgr@Base 8.8.1.really.8.7.7
+ _ZN11cq_mgr_mlx59add_qp_txEP6qp_mgr@Base 8.8.1.really.8.7.7
+ _ZN11cq_mgr_mlx59del_qp_rxEP6qp_mgr@Base 8.8.1.really.8.7.7
+ _ZN11cq_mgr_mlx59set_qp_rqEP6qp_mgr@Base 8.8.1.really.8.7.7
+ _ZN11cq_mgr_mlx5C1EP11ring_simpleP14ib_ctx_handlerjP16ibv_comp_channelbb@Base 8.8.1.really.8.7.7
+ _ZN11cq_mgr_mlx5C2EP11ring_simpleP14ib_ctx_handlerjP16ibv_comp_channelbb@Base 8.8.1.really.8.7.7
+ _ZN11cq_mgr_mlx5D0Ev@Base 8.8.1.really.8.7.7
+ _ZN11cq_mgr_mlx5D1Ev@Base 8.8.1.really.8.7.7
+ _ZN11cq_mgr_mlx5D2Ev@Base 8.8.1.really.8.7.7
+ _ZN11io_mux_call13polling_loopsEv@Base 8.8.1.really.8.7.7
+ _ZN11io_mux_call14blocking_loopsEv@Base 8.8.1.really.8.7.7
+ _ZN11io_mux_call14is_sig_pendingEv@Base 8.8.1.really.8.7.7
+ _ZN11io_mux_call15prepare_to_pollEv@Base 8.8.1.really.8.7.7
+ _ZN11io_mux_call16immidiate_returnERi@Base 8.8.1.really.8.7.7
+ _ZN11io_mux_call17m_n_skip_os_countE@Base 8.8.1.really.8.7.7
+ _ZN11io_mux_call19handle_os_countdownERi@Base 8.8.1.really.8.7.7
+ _ZN11io_mux_call25ring_request_notificationEv@Base 8.8.1.really.8.7.7
+ _ZN11io_mux_call27check_all_offloaded_socketsEv@Base 8.8.1.really.8.7.7
+ _ZN11io_mux_call29ring_poll_and_process_elementEv@Base 8.8.1.really.8.7.7
+ _ZN11io_mux_call46ring_wait_for_notification_and_process_elementEPv@Base 8.8.1.really.8.7.7
+ _ZN11io_mux_call4callEv@Base 8.8.1.really.8.7.7
+ _ZN11io_mux_call8io_errorD0Ev@Base 8.8.1.really.8.7.7
+ _ZN11io_mux_call8io_errorD1Ev@Base 8.8.1.really.8.7.7
+ _ZN11io_mux_call8io_errorD2Ev@Base 8.8.1.really.8.7.7
+ _ZN11io_mux_callC1EPiPNS_16offloaded_mode_tEiPK10__sigset_t@Base 8.8.1.really.8.7.7
+ _ZN11io_mux_callC2EPiPNS_16offloaded_mode_tEiPK10__sigset_t@Base 8.8.1.really.8.7.7
+ _ZN11loops_timer14time_left_msecEv@Base 8.8.1.really.8.7.7
+ _ZN11loops_timer5startEv@Base 8.8.1.really.8.7.7
+ _ZN11loops_timerC1Ev@Base 8.8.1.really.8.7.7
+ _ZN11loops_timerC2Ev@Base 8.8.1.really.8.7.7
+ _ZN11mce_sys_var13env_to_cpusetEPcP9cpu_set_t@Base 8.8.1.really.8.7.7
+ _ZN11mce_sys_var13hex_to_cpusetEPcP9cpu_set_t@Base 8.8.1.really.8.7.7
+ _ZN11mce_sys_var14get_env_paramsEv@Base 8.8.1.really.8.7.7
+ _ZN11mce_sys_var14list_to_cpusetEPcP9cpu_set_t@Base 8.8.1.really.8.7.7
+ _ZN11mce_sys_var15cpuid_hv_vendorEv@Base 8.8.1.really.8.7.7
+ _ZN11mce_sys_var18check_cpuinfo_flagEPKc@Base 8.8.1.really.8.7.7
+ _ZN11mce_sys_var26print_vma_load_failure_msgEv@Base 8.8.1.really.8.7.7
+ _ZN11mce_sys_var26read_env_variable_with_pidEPcmS0_@Base 8.8.1.really.8.7.7
+ _ZN11mce_sys_var7read_hvEv@Base 8.8.1.really.8.7.7
+ _ZN11mce_sys_var8cpuid_hvEv@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry12is_deletableEv@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry13event_handlerENS_7event_tEPv@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry13get_peer_infoEP9neigh_val@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry13post_send_arpEb@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry13post_send_tcpEP15neigh_send_data@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry13post_send_udpEP15neigh_send_data@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry15priv_enter_initEv@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry16general_st_entryERK9sm_info_t@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry16general_st_leaveERK9sm_info_t@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry16post_send_packetEP15neigh_send_data@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry16print_event_infoEiiPv@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry16priv_enter_errorEv@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry16priv_enter_readyEv@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry17dofunc_enter_initERK9sm_info_t@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry17priv_get_neigh_l2ERPh@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry17register_observerEPK8observer@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry18dofunc_enter_errorERK9sm_info_t@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry18dofunc_enter_readyERK9sm_info_t@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry18empty_unsent_queueEv@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry18handle_neigh_eventEP14neigh_nl_event@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry18priv_kick_start_smEv@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry18rdma_event_mappingEP13rdma_cm_event@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry19priv_destroy_cma_idEv@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry20handle_timer_expiredEPv@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry20priv_get_neigh_stateERi@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry21generate_ring_user_idEP6header@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry21priv_enter_not_activeEv@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry21priv_general_st_entryERK9sm_info_t@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry21priv_general_st_leaveERK9sm_info_t@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry21priv_print_event_infoENS_7state_tENS_7event_tE@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry21priv_unregister_timerEv@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry22prepare_to_send_packetEP6header@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry23dofunc_enter_not_activeERK9sm_info_t@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry23handle_event_rdma_cm_cbEP13rdma_cm_event@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry24priv_enter_addr_resolvedEv@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry25priv_register_timer_eventEiP13timer_handler16timer_req_type_tPv@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry26dofunc_enter_addr_resolvedERK9sm_info_t@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry26priv_enter_init_resolutionEv@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry27priv_event_handler_no_locksENS_7event_tEPv@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry28dofunc_enter_init_resolutionERK9sm_info_t@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry31priv_handle_neigh_is_l2_changedEPh@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry33priv_handle_neigh_reachable_eventEv@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry4sendER15neigh_send_info@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry7get_valERP9neigh_val@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry8send_arpEv@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entry9clean_objEv@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entryC1E9neigh_key16transport_type_tb@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entryC2E9neigh_key16transport_type_tb@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entryD0Ev@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entryD1Ev@Base 8.8.1.really.8.7.7
+ _ZN11neigh_entryD2Ev@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple14mem_buf_tx_getEibi@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple15get_underly_qpnEv@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple15init_tx_buffersEj@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple15is_socketxtremeEv@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple16create_resourcesEv@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple16modify_ratelimitER16vma_rate_limit_t@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple16send_lwip_bufferEiP11ibv_send_wr21vma_wr_tx_packet_attr@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple16send_ring_bufferEiP11ibv_send_wr21vma_wr_tx_packet_attr@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple17get_max_tx_inlineEv@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple17socketxtreme_pollEP16vma_completion_tji@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple18drain_and_proccessEv@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple18is_available_qp_wrEb@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple18mem_buf_tx_releaseEP14mem_buf_desc_tbb@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple18stop_active_qp_mgrEv@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple19adapt_cq_moderationEv@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple19start_active_qp_mgrEv@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple20get_ring_descriptorsER22vma_mlx_hw_device_data@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple20modify_cq_moderationEjj@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple20reclaim_recv_buffersEP10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEE@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple20reclaim_recv_buffersEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple20request_notificationE9cq_type_tm@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple23inc_cq_moderation_statsEm@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple25get_hw_dummy_send_supportEiP11ibv_send_wr@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple26reclaim_recv_single_bufferEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple27poll_and_process_element_rxEPmPv@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple28reclaim_recv_buffers_no_lockEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple31mem_buf_desc_return_to_owner_rxEP14mem_buf_desc_tPv@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple31mem_buf_desc_return_to_owner_txEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple37mem_buf_desc_completion_with_error_rxEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple37mem_buf_desc_completion_with_error_txEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple38mem_buf_desc_return_single_to_owner_txEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple41wait_for_notification_and_process_elementEiPmPv@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple5is_upEv@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple6del_ecEP7ring_ec@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple6put_ecEP7ring_ec@Base 8.8.1.really.8.7.7
+ _ZN11ring_simple8get_compEv@Base 8.8.1.really.8.7.7
+ _ZN11ring_simpleC1EiP4ring11ring_type_t@Base 8.8.1.really.8.7.7
+ _ZN11ring_simpleC2EiP4ring11ring_type_t@Base 8.8.1.really.8.7.7
+ _ZN11ring_simpleD0Ev@Base 8.8.1.really.8.7.7
+ _ZN11ring_simpleD1Ev@Base 8.8.1.really.8.7.7
+ _ZN11ring_simpleD2Ev@Base 8.8.1.really.8.7.7
+ _ZN11route_entry22register_to_net_deviceEv@Base 8.8.1.really.8.7.7
+ _ZN11route_entry24unregister_to_net_deviceEv@Base 8.8.1.really.8.7.7
+ _ZN11route_entry7get_valERP9route_val@Base 8.8.1.really.8.7.7
+ _ZN11route_entry7set_strEv@Base 8.8.1.really.8.7.7
+ _ZN11route_entry7set_valERP9route_val@Base 8.8.1.really.8.7.7
+ _ZN11route_entry9notify_cbEv@Base 8.8.1.really.8.7.7
+ _ZN11route_entryC1E20route_rule_table_key@Base 8.8.1.really.8.7.7
+ _ZN11route_entryC2E20route_rule_table_key@Base 8.8.1.really.8.7.7
+ _ZN11route_entryD0Ev@Base 8.8.1.really.8.7.7
+ _ZN11route_entryD1Ev@Base 8.8.1.really.8.7.7
+ _ZN11route_entryD2Ev@Base 8.8.1.really.8.7.7
+ _ZN11select_call10is_timeoutERK7timeval@Base 8.8.1.really.8.7.7
+ _ZN11select_call13set_efd_readyEii@Base 8.8.1.really.8.7.7
+ _ZN11select_call13set_rfd_readyEi@Base 8.8.1.really.8.7.7
+ _ZN11select_call13set_wfd_readyEi@Base 8.8.1.really.8.7.7
+ _ZN11select_call15prepare_to_pollEv@Base 8.8.1.really.8.7.7
+ _ZN11select_call16prepare_to_blockEv@Base 8.8.1.really.8.7.7
+ _ZN11select_call23set_offloaded_rfd_readyEi@Base 8.8.1.really.8.7.7
+ _ZN11select_call23set_offloaded_wfd_readyEi@Base 8.8.1.really.8.7.7
+ _ZN11select_call4waitERK7timeval@Base 8.8.1.really.8.7.7
+ _ZN11select_call7wait_osEb@Base 8.8.1.really.8.7.7
+ _ZN11select_callC1EPiPN11io_mux_call16offloaded_mode_tEiP6fd_setS5_S5_P7timevalPK10__sigset_t@Base 8.8.1.really.8.7.7
+ _ZN11select_callC2EPiPN11io_mux_call16offloaded_mode_tEiP6fd_setS5_S5_P7timevalPK10__sigset_t@Base 8.8.1.really.8.7.7
+ _ZN11select_callD0Ev@Base 8.8.1.really.8.7.7
+ _ZN11select_callD1Ev@Base 8.8.1.really.8.7.7
+ _ZN11select_callD2Ev@Base 8.8.1.really.8.7.7
+ _ZN11wakeup_pipe12is_wakeup_fdEi@Base 8.8.1.really.8.7.7
+ _ZN11wakeup_pipe14g_wakeup_pipesE@Base 8.8.1.really.8.7.7
+ _ZN11wakeup_pipe16remove_wakeup_fdEv@Base 8.8.1.really.8.7.7
+ _ZN11wakeup_pipe9do_wakeupEv@Base 8.8.1.really.8.7.7
+ _ZN11wakeup_pipe9ref_countE@Base 8.8.1.really.8.7.7
+ _ZN11wakeup_pipeC1Ev@Base 8.8.1.really.8.7.7
+ _ZN11wakeup_pipeC2Ev@Base 8.8.1.really.8.7.7
+ _ZN11wakeup_pipeD0Ev@Base 8.8.1.really.8.7.7
+ _ZN11wakeup_pipeD1Ev@Base 8.8.1.really.8.7.7
+ _ZN11wakeup_pipeD2Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN12chunk_list_tIP14mem_buf_desc_tED1Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN12chunk_list_tIP14mem_buf_desc_tED2Ev@Base 8.8.1.really.8.7.7
+ _ZN12data_updaterD0Ev@Base 8.8.1.really.8.7.7
+ _ZN12data_updaterD1Ev@Base 8.8.1.really.8.7.7
+ _ZN12data_updaterD2Ev@Base 8.8.1.really.8.7.7
+ _ZN12event_data_tD1Ev@Base 8.8.1.really.8.7.7
+ _ZN12event_data_tD2Ev@Base 8.8.1.really.8.7.7
+ _ZN12igmp_handler12handle_queryEh@Base 8.8.1.really.8.7.7
+ _ZN12igmp_handler13handle_reportEv@Base 8.8.1.really.8.7.7
+ _ZN12igmp_handler14tx_igmp_reportEv@Base 8.8.1.really.8.7.7
+ _ZN12igmp_handler15set_ip_igmp_hdrEP25ip_igmp_tx_hdr_template_t@Base 8.8.1.really.8.7.7
+ _ZN12igmp_handler20handle_timer_expiredEPv@Base 8.8.1.really.8.7.7
+ _ZN12igmp_handler25priv_register_timer_eventEP13timer_handler16timer_req_type_tPv@Base 8.8.1.really.8.7.7
+ _ZN12igmp_handler4initERK9neigh_key@Base 8.8.1.really.8.7.7
+ _ZN12igmp_handler9clean_objEv@Base 8.8.1.really.8.7.7
+ _ZN12igmp_handlerC1ERK9neigh_keyh@Base 8.8.1.really.8.7.7
+ _ZN12igmp_handlerC2ERK9neigh_keyh@Base 8.8.1.really.8.7.7
+ _ZN12igmp_handlerD0Ev@Base 8.8.1.really.8.7.7
+ _ZN12igmp_handlerD1Ev@Base 8.8.1.really.8.7.7
+ _ZN12igmp_handlerD2Ev@Base 8.8.1.really.8.7.7
+ _ZN12neigh_ib_val16zero_all_membersEv@Base 8.8.1.really.8.7.7
+ _ZN12neigh_ib_valD0Ev@Base 8.8.1.really.8.7.7
+ _ZN12neigh_ib_valD1Ev@Base 8.8.1.really.8.7.7
+ _ZN12neigh_ib_valD2Ev@Base 8.8.1.really.8.7.7
+ _ZN12neigh_ib_valaSERK9neigh_val@Base 8.8.1.really.8.7.7
+ _ZN12ring_bond_ib12slave_createEi@Base 8.8.1.really.8.7.7
+ _ZN12ring_bond_ibD0Ev@Base 8.8.1.really.8.7.7
+ _ZN12ring_bond_ibD1Ev@Base 8.8.1.really.8.7.7
+ _ZN12ring_bond_ibD2Ev@Base 8.8.1.really.8.7.7
+ _ZN12ring_profile13create_stringEv@Base 8.8.1.really.8.7.7
+ _ZN12ring_profile21get_vma_ring_type_strEv@Base 8.8.1.really.8.7.7
+ _ZN12ring_profileC1EPK18vma_ring_type_attr@Base 8.8.1.really.8.7.7
+ _ZN12ring_profileC1Ev@Base 8.8.1.really.8.7.7
+ _ZN12ring_profileC2EPK18vma_ring_type_attr@Base 8.8.1.really.8.7.7
+ _ZN12ring_profileC2Ev@Base 8.8.1.really.8.7.7
+ _ZN12ring_profileeqERK18vma_ring_type_attr@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp10free_buffsEt@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp10getsockoptEiiPvPj@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp10rx_lwip_cbEPvP7tcp_pcbP4pbufa@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp10setsockoptEiiPKvj@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp11err_lwip_cbEPva@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp11fit_rcv_wndEb@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp11force_closeEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp11getpeernameEP8sockaddrPj@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp11getsocknameEP8sockaddrPj@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp11is_closableEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp11is_readableEPmP10fd_array_t@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp11post_deqeueEb@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp11rx_input_cbEP14mem_buf_desc_tPv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp11unlock_rx_qEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp12accept_cloneEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp12fit_snd_bufsEj@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp12free_packetsEP12vma_packet_tm@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp12is_errorableEPi@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp12is_writeableEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp12reuse_bufferEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp12tcp_seg_freeEPvP7tcp_seg@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp12zero_copy_rxEP5iovecP14mem_buf_desc_tPi@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp13accept_helperEP8sockaddrPji@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp13clone_conn_cbEPvPP7tcp_pcba@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp13get_next_descEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp13get_route_mtuEP7tcp_pcb@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp13isPassthroughEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp13prepareListenEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp13put_agent_msgEPv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp13tcp_seg_allocEPv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp14accept_lwip_cbEPvP7tcp_pcba@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp14register_timerEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp14rx_wait_helperERib@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp14skip_os_selectEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp14unlock_tcp_conEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp15connect_lwip_cbEPvP7tcp_pcba@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp15handle_rx_errorEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp15rx_drop_lwip_cbEPvP7tcp_pcbP4pbufa@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp16abort_connectionEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp16create_dst_entryEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp16handle_child_FINEPS_@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp16prepare_to_closeEb@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp16set_sock_optionsEPS_@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp16statistics_printE13vlog_levels_t@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp16tcp_tx_pbuf_freeEPvP4pbuf@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp17ack_recvd_lwip_cbEPvP7tcp_pcbt@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp17handle_ip_pktinfoEP10cmsg_state@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp17ip_output_syn_ackEP4pbufPvih@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp17tcp_tx_pbuf_allocEPv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp17try_un_offloadingEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp18get_next_desc_peekEP14mem_buf_desc_tRi@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp18getsockopt_offloadEiiPvPj@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp18tcp_state_observerEPv9tcp_state@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp19prepare_dst_to_sendEb@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp19queue_rx_ctl_packetEP7tcp_pcbP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp19update_header_fieldEP12data_updater@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp19wait_for_conn_readyEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp20get_syn_received_pcbEjtjt@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp20handle_socket_lingerEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp20handle_timer_expiredEPv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp20syn_received_lwip_cbEPvP7tcp_pcba@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp21fit_snd_bufs_to_nagleEb@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp21get_socket_timestampsEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp22auto_accept_connectionEPS_S0_@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp22process_my_ctl_packetsEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp22process_rx_ctl_packetsEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp23prepare_listen_to_closeEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp23rx_request_notificationEm@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp23set_rx_packet_processorEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp24delay_orig_close_to_dtorEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp24process_peer_ctl_packetsER10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEE@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp24rx_verify_available_dataEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp24update_socket_timestampsEP12timestamps_t@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp25process_reuse_ctl_packetsEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp25syn_received_drop_lwip_cbEPvP7tcp_pcba@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp27check_dummy_send_conditionsEiPK5iovecl@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp28get_size_m_rx_pkt_ready_listEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp28process_children_ctl_packetsEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp28set_conn_properties_from_pcbEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp29get_front_m_rx_pkt_ready_listEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp29pop_front_m_rx_pkt_ready_listEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp29push_back_m_rx_pkt_ready_listEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp2rxE9rx_call_tP5ioveclPiP8sockaddrPjP6msghdr@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp2txE9tx_call_tPK5iovecliPK8sockaddrj@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp30create_flow_tuple_key_from_pcbER10flow_tupleP7tcp_pcb@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp30return_reuse_buffers_postponedEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp4bindEPK8sockaddrj@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp5fcntlEim@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp5ioctlEmm@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp6acceptEP8sockaddrPj@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp6listenEi@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp7accept4EP8sockaddrPji@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp7connectEPK8sockaddrj@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp7tx_waitERib@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp8get_typeEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp8shutdownEi@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp9clean_objEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp9ip_outputEP4pbufPvih@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp9lock_rx_qEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcp9tcp_timerEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcpC1Ei@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcpC2Ei@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcpD0Ev@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcpD1Ev@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_tcpD2Ev@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp10getsockoptEiiPvPj@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp10setsockoptEiiPKvj@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp11getsocknameEP8sockaddrPj@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp11is_readableEPmP10fd_array_t@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp11post_deqeueEb@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp11rx_input_cbEP14mem_buf_desc_tPv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp12free_packetsEP12vma_packet_tm@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp12reuse_bufferEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp12set_blockingEb@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp12zero_copy_rxEP5iovecP14mem_buf_desc_tPi@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp13flow_in_reuseEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp13get_next_descEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp13isPassthroughEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp14rx_add_ring_cbER24flow_tuple_with_local_ifP4ringb@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp14rx_del_ring_cbER24flow_tuple_with_local_ifP4ringb@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp14setPassthroughEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp16handle_msg_truncEmmiPi@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp16prepare_to_closeEb@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp16statistics_printE13vlog_levels_t@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp17handle_ip_pktinfoEP10cmsg_state@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp18get_next_desc_peekEP14mem_buf_desc_tRi@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp18on_sockname_changeEP8sockaddrj@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp19handle_pending_mreqEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp19update_header_fieldEP12data_updater@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp20mc_change_membershipEPK15mc_pending_pram@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp21get_socket_timestampsEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp21get_socket_tx_ring_fdEP8sockaddrj@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp21save_stats_tx_offloadEib@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp22mc_change_pending_mreqEPK15mc_pending_pram@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp22save_stats_threadid_rxEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp22save_stats_threadid_txEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp23rx_request_notificationEm@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp23set_immediate_os_sampleEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp23set_rx_packet_processorEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp24rx_verify_available_dataEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp24update_socket_timestampsEP12timestamps_t@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp25unset_immediate_os_sampleEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp26rx_process_udp_packet_fullEP14mem_buf_desc_tPv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp27tx_check_if_would_not_blockEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp28get_size_m_rx_pkt_ready_listEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp29get_front_m_rx_pkt_ready_listEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp29original_os_setsockopt_helperEPvii@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp29pop_front_m_rx_pkt_ready_listEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp29push_back_m_rx_pkt_ready_listEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp29rx_process_udp_packet_partialEP14mem_buf_desc_tPv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp2rxE9rx_call_tP5ioveclPiP8sockaddrPjP6msghdr@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp2txE9tx_call_tPK5iovecliPK8sockaddrj@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp31mc_change_membership_end_helperEjij@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp32rx_ready_byte_count_limit_updateEm@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp33mc_change_membership_start_helperEji@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp4bindEPK8sockaddrj@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp7connectEPK8sockaddrj@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp7rx_waitEb@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udp8get_typeEv@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udpC1Ei@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udpC2Ei@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udpD0Ev@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udpD1Ev@Base 8.8.1.really.8.7.7
+ _ZN12sockinfo_udpD2Ev@Base 8.8.1.really.8.7.7
+ _ZN12tcp_seg_pool12get_tcp_segsEi@Base 8.8.1.really.8.7.7
+ _ZN12tcp_seg_pool12put_tcp_segsEP7tcp_seg@Base 8.8.1.really.8.7.7
+ _ZN12tcp_seg_pool18free_tsp_resourcesEv@Base 8.8.1.really.8.7.7
+ _ZN12tcp_seg_poolC1Ei@Base 8.8.1.really.8.7.7
+ _ZN12tcp_seg_poolC2Ei@Base 8.8.1.really.8.7.7
+ _ZN12tcp_seg_poolD0Ev@Base 8.8.1.really.8.7.7
+ _ZN12tcp_seg_poolD1Ev@Base 8.8.1.really.8.7.7
+ _ZN12tcp_seg_poolD2Ev@Base 8.8.1.really.8.7.7
+ _ZN13cleanable_obj9clean_objEv@Base 8.8.1.really.8.7.7
+ _ZN13cleanable_objD0Ev@Base 8.8.1.really.8.7.7
+ _ZN13cleanable_objD1Ev@Base 8.8.1.really.8.7.7
+ _ZN13cleanable_objD2Ev@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_tcp10get_bufferEb@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_tcp10put_bufferEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_tcp13get_transportE11sockaddr_in@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_tcp15slow_send_neighEPK5iovecmR16vma_rate_limit_t@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_tcp17configure_headersEv@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_tcp18get_inline_sge_numEv@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_tcp18pass_buff_to_neighEPK5iovecRmt@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_tcp25get_sge_lst_4_inline_sendEv@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_tcp29get_sge_lst_4_not_inline_sendEv@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_tcp9fast_sendEPK5ioveclbbb@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_tcp9slow_sendEPK5iovecmbR16vma_rate_limit_tbbiP13socket_fd_api9tx_call_t@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_tcpC1EjttR11socket_dataR21ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_tcpC2EjttR11socket_dataR21ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_tcpD0Ev@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_tcpD1Ev@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_tcpD2Ev@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_udp13get_transportE11sockaddr_in@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_udp17configure_headersEv@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_udp18get_inline_sge_numEv@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_udp18pass_buff_to_neighEPK5iovecRmt@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_udp20fast_send_fragmentedEPK5iovecl21vma_wr_tx_packet_attrml@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_udp25get_sge_lst_4_inline_sendEv@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_udp29get_sge_lst_4_not_inline_sendEv@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_udp8init_sgeEv@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_udp9fast_sendEPK5ioveclbbb@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_udp9slow_sendEPK5iovecmbR16vma_rate_limit_tbbiP13socket_fd_api9tx_call_t@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_udpC1EjttR11socket_dataR21ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_udpC2EjttR11socket_dataR21ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_udpD0Ev@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_udpD1Ev@Base 8.8.1.really.8.7.7
+ _ZN13dst_entry_udpD2Ev@Base 8.8.1.really.8.7.7
+ _ZN13fd_collection10del_sockfdEib@Base 8.8.1.really.8.7.7
+ _ZN13fd_collection16prepare_to_closeEv@Base 8.8.1.really.8.7.7
+ _ZN13fd_collection16statistics_printEi13vlog_levels_t@Base 8.8.1.really.8.7.7
+ _ZN13fd_collection17add_cq_channel_fdEiP4ring@Base 8.8.1.really.8.7.7
+ _ZN13fd_collection17del_cq_channel_fdEib@Base 8.8.1.really.8.7.7
+ _ZN13fd_collection20handle_timer_expiredEPv@Base 8.8.1.really.8.7.7
+ _ZN13fd_collection21remove_epfd_from_listEP9epfd_info@Base 8.8.1.really.8.7.7
+ _ZN13fd_collection21remove_from_all_epfdsEib@Base 8.8.1.really.8.7.7
+ _ZN13fd_collection23statistics_print_helperEi13vlog_levels_t@Base 8.8.1.really.8.7.7
+ _ZN13fd_collection29offloading_rule_change_threadEbm@Base 8.8.1.really.8.7.7
+ _ZN13fd_collection5clearEv@Base 8.8.1.really.8.7.7
+ _ZN13fd_collection7addepfdEii@Base 8.8.1.really.8.7.7
+ _ZN13fd_collection7addpipeEii@Base 8.8.1.really.8.7.7
+ _ZN13fd_collection8addtapfdEiP8ring_tap@Base 8.8.1.really.8.7.7
+ _ZN13fd_collection8del_epfdEib@Base 8.8.1.really.8.7.7
+ _ZN13fd_collection9addsocketEiiib@Base 8.8.1.really.8.7.7
+ _ZN13fd_collection9del_tapfdEi@Base 8.8.1.really.8.7.7
+ _ZN13fd_collectionC1Ev@Base 8.8.1.really.8.7.7
+ _ZN13fd_collectionC2Ev@Base 8.8.1.really.8.7.7
+ _ZN13fd_collectionD0Ev@Base 8.8.1.really.8.7.7
+ _ZN13fd_collectionD1Ev@Base 8.8.1.really.8.7.7
+ _ZN13fd_collectionD2Ev@Base 8.8.1.really.8.7.7
+ _ZN13link_nl_eventC1EP8nlmsghdrP9rtnl_linkPv@Base 8.8.1.really.8.7.7
+ _ZN13link_nl_eventC2EP8nlmsghdrP9rtnl_linkPv@Base 8.8.1.really.8.7.7
+ _ZN13link_nl_eventD0Ev@Base 8.8.1.really.8.7.7
+ _ZN13link_nl_eventD1Ev@Base 8.8.1.really.8.7.7
+ _ZN13link_nl_eventD2Ev@Base 8.8.1.really.8.7.7
+ _ZN13neigh_eth_valD0Ev@Base 8.8.1.really.8.7.7
+ _ZN13neigh_eth_valD1Ev@Base 8.8.1.really.8.7.7
+ _ZN13neigh_eth_valD2Ev@Base 8.8.1.really.8.7.7
+ _ZN13neigh_eth_valaSERK9neigh_val@Base 8.8.1.really.8.7.7
+ _ZN13netlink_eventC1EP8nlmsghdrPv@Base 8.8.1.really.8.7.7
+ _ZN13netlink_eventC2EP8nlmsghdrPv@Base 8.8.1.really.8.7.7
+ _ZN13netlink_eventD0Ev@Base 8.8.1.really.8.7.7
+ _ZN13netlink_eventD1Ev@Base 8.8.1.really.8.7.7
+ _ZN13netlink_eventD2Ev@Base 8.8.1.really.8.7.7
+ _ZN13ring_bond_eth12slave_createEi@Base 8.8.1.really.8.7.7
+ _ZN13ring_bond_ethD0Ev@Base 8.8.1.really.8.7.7
+ _ZN13ring_bond_ethD1Ev@Base 8.8.1.really.8.7.7
+ _ZN13ring_bond_ethD2Ev@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api10free_buffsEt@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api10getsockoptEiiPvPj@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api10setsockoptEiiPKvj@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api11check_ringsEv@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api11force_closeEv@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api11getpeernameEP8sockaddrPj@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api11getsocknameEP8sockaddrPj@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api11is_closableEv@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api11is_readableEPmP10fd_array_t@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api12free_packetsEP12vma_packet_tm@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api12is_errorableEPi@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api12is_writeableEv@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api13get_rings_fdsERi@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api13get_rings_numEv@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api13isPassthroughEv@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api13prepareListenEv@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api14setPassthroughEv@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api14skip_os_selectEv@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api16prepare_to_closeEb@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api16statistics_printE13vlog_levels_t@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api17add_epoll_contextEP9epfd_info@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api17destructor_helperEv@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api17register_callbackEPF26vma_recv_callback_retval_timP5iovecP10vma_info_tPvES5_@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api20get_epoll_context_fdEv@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api20notify_epoll_contextEj@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api20remove_epoll_contextEP9epfd_info@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api21get_socket_tx_ring_fdEP8sockaddrj@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api22get_socket_network_ptrEPvRt@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api23rx_request_notificationEm@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api23set_immediate_os_sampleEv@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api24consider_rings_migrationEv@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api24delay_orig_close_to_dtorEv@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api25unset_immediate_os_sampleEv@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api27notify_epoll_context_verifyEP9epfd_info@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api29notify_epoll_context_add_ringEP4ring@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api32notify_epoll_context_remove_ringEP4ring@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api36notify_epoll_context_fd_is_offloadedEv@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api4bindEPK8sockaddrj@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api5rx_osE9rx_call_tP5iovecliP8sockaddrPjP6msghdr@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api5tx_osE9tx_call_tPK5iovecliPK8sockaddrj@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api6acceptEP8sockaddrPj@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api6listenEi@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api7accept4EP8sockaddrPji@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api7connectEPK8sockaddrj@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_api8shutdownEi@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_apiC1Ei@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_apiC2Ei@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_apiD0Ev@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_apiD1Ev@Base 8.8.1.really.8.7.7
+ _ZN13socket_fd_apiD2Ev@Base 8.8.1.really.8.7.7
+ _ZN13state_machine13process_eventEiPv@Base 8.8.1.really.8.7.7
+ _ZN13state_machine14get_curr_stateEv@Base 8.8.1.really.8.7.7
+ _ZN13state_machine15lock_in_processEiPv@Base 8.8.1.really.8.7.7
+ _ZN13state_machine17unlock_in_processEv@Base 8.8.1.really.8.7.7
+ _ZN13state_machine20process_sparse_tableEP21sm_short_table_line_tPFvRK9sm_info_tES6_S6_@Base 8.8.1.really.8.7.7
+ _ZN13state_machineC1EPviiiP21sm_short_table_line_tPFvRK9sm_info_tES7_S7_PFviiS0_E@Base 8.8.1.really.8.7.7
+ _ZN13state_machineC2EPviiiP21sm_short_table_line_tPFvRK9sm_info_tES7_S7_PFviiS0_E@Base 8.8.1.really.8.7.7
+ _ZN13state_machineD1Ev@Base 8.8.1.really.8.7.7
+ _ZN13state_machineD2Ev@Base 8.8.1.really.8.7.7
+ _ZN13user_params_tD1Ev@Base 8.8.1.really.8.7.7
+ _ZN13user_params_tD2Ev@Base 8.8.1.really.8.7.7
+ _ZN13vma_allocator13hugetlb_allocEm@Base 8.8.1.really.8.7.7
+ _ZN13vma_allocator15register_memoryEmP14ib_ctx_handlerm@Base 8.8.1.really.8.7.7
+ _ZN13vma_allocator16alloc_and_reg_mrEmP14ib_ctx_handlerPv@Base 8.8.1.really.8.7.7
+ _ZN13vma_allocator17deregister_memoryEv@Base 8.8.1.really.8.7.7
+ _ZN13vma_allocator18hugetlb_mmap_allocEv@Base 8.8.1.really.8.7.7
+ _ZN13vma_allocator18hugetlb_sysv_allocEv@Base 8.8.1.really.8.7.7
+ _ZN13vma_allocator19align_simple_mallocEm@Base 8.8.1.really.8.7.7
+ _ZN13vma_allocatorC1Ev@Base 8.8.1.really.8.7.7
+ _ZN13vma_allocatorC2Ev@Base 8.8.1.really.8.7.7
+ _ZN13vma_allocatorD1Ev@Base 8.8.1.really.8.7.7
+ _ZN13vma_allocatorD2Ev@Base 8.8.1.really.8.7.7
+ _ZN13vma_exceptionD0Ev@Base 8.8.1.really.8.7.7
+ _ZN13vma_exceptionD1Ev@Base 8.8.1.really.8.7.7
+ _ZN13vma_exceptionD2Ev@Base 8.8.1.really.8.7.7
+ _ZN14cache_observer9notify_cbEP5event@Base 8.8.1.really.8.7.7
+ _ZN14cache_observerD0Ev@Base 8.8.1.really.8.7.7
+ _ZN14cache_observerD1Ev@Base 8.8.1.really.8.7.7
+ _ZN14cache_observerD2Ev@Base 8.8.1.really.8.7.7
+ _ZN14ib_ctx_handler11get_mem_regEj@Base 8.8.1.really.8.7.7
+ _ZN14ib_ctx_handler11post_umr_wrER15ibv_exp_send_wr@Base 8.8.1.really.8.7.7
+ _ZN14ib_ctx_handler13create_umr_qpEv@Base 8.8.1.really.8.7.7
+ _ZN14ib_ctx_handler20set_burst_capabilityEb@Base 8.8.1.really.8.7.7
+ _ZN14ib_ctx_handler23handle_event_ibverbs_cbEPvS0_@Base 8.8.1.really.8.7.7
+ _ZN14ib_ctx_handler23set_flow_tag_capabilityEb@Base 8.8.1.really.8.7.7
+ _ZN14ib_ctx_handler25handle_event_device_fatalEv@Base 8.8.1.really.8.7.7
+ _ZN14ib_ctx_handler26is_packet_pacing_supportedEj@Base 8.8.1.really.8.7.7
+ _ZN14ib_ctx_handler29get_ctx_time_converter_statusEv@Base 8.8.1.really.8.7.7
+ _ZN14ib_ctx_handler29set_ctx_time_converter_statusE20ts_conversion_mode_t@Base 8.8.1.really.8.7.7
+ _ZN14ib_ctx_handler7mem_regEPvmm@Base 8.8.1.really.8.7.7
+ _ZN14ib_ctx_handler7set_strEv@Base 8.8.1.really.8.7.7
+ _ZN14ib_ctx_handler9is_activeEi@Base 8.8.1.really.8.7.7
+ _ZN14ib_ctx_handler9mem_deregEj@Base 8.8.1.really.8.7.7
+ _ZN14ib_ctx_handler9print_valEv@Base 8.8.1.really.8.7.7
+ _ZN14ib_ctx_handlerC1EPNS_19ib_ctx_handler_descE@Base 8.8.1.really.8.7.7
+ _ZN14ib_ctx_handlerC2EPNS_19ib_ctx_handler_descE@Base 8.8.1.really.8.7.7
+ _ZN14ib_ctx_handlerD0Ev@Base 8.8.1.really.8.7.7
+ _ZN14ib_ctx_handlerD1Ev@Base 8.8.1.really.8.7.7
+ _ZN14ib_ctx_handlerD2Ev@Base 8.8.1.really.8.7.7
+ _ZN14neigh_nl_eventC1EP8nlmsghdrP10rtnl_neighPv@Base 8.8.1.really.8.7.7
+ _ZN14neigh_nl_eventC2EP8nlmsghdrP10rtnl_neighPv@Base 8.8.1.really.8.7.7
+ _ZN14neigh_nl_eventD0Ev@Base 8.8.1.really.8.7.7
+ _ZN14neigh_nl_eventD1Ev@Base 8.8.1.really.8.7.7
+ _ZN14neigh_nl_eventD2Ev@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val12release_ringEP21ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val12reserve_ringEP21ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val12set_ip_arrayEv@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val15set_slave_arrayEv@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val18verify_qp_creationEPKc11ibv_qp_type@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val19verify_bonding_modeEv@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val19verify_enable_ipoibEPKc@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val20update_active_slavesEv@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val20update_netvsc_slavesEii@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val23ring_drain_and_proccessEv@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val24get_priority_by_tc_classEj@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val24get_ring_key_redirectionEP21ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val24get_up_and_active_slavesEPbm@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val24ring_adapt_cq_moderationEv@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val26register_to_ibverbs_eventsEP21event_handler_ibverbs@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val27update_active_backup_slavesEv@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val28ring_key_redirection_releaseEP21ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val28ring_key_redirection_reserveEP21ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val28unregister_to_ibverbs_eventsEP21event_handler_ibverbs@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val31verify_ipoib_or_eth_qp_creationEPKc@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val32global_ring_request_notificationEm@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val36global_ring_poll_and_process_elementEPmPv@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val36verify_bond_ipoib_or_eth_qp_creationEv@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val6to_strB5cxx11Ev@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val7set_strEv@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val9get_slaveEi@Base 8.8.1.really.8.7.7
+ _ZN14net_device_val9print_valEv@Base 8.8.1.really.8.7.7
+ _ZN14net_device_valC1EPNS_19net_device_val_descE@Base 8.8.1.really.8.7.7
+ _ZN14net_device_valC2EPNS_19net_device_val_descE@Base 8.8.1.really.8.7.7
+ _ZN14net_device_valD0Ev@Base 8.8.1.really.8.7.7
+ _ZN14net_device_valD1Ev@Base 8.8.1.really.8.7.7
+ _ZN14net_device_valD2Ev@Base 8.8.1.really.8.7.7
+ _ZN14rfs_uc_tcp_gro18rx_dispatch_packetEP14mem_buf_desc_tPv@Base 8.8.1.really.8.7.7
+ _ZN14rfs_uc_tcp_gro5flushEPv@Base 8.8.1.really.8.7.7
+ _ZN14rfs_uc_tcp_groC1EP10flow_tupleP10ring_slaveP15rfs_rule_filterj@Base 8.8.1.really.8.7.7
+ _ZN14rfs_uc_tcp_groC2EP10flow_tupleP10ring_slaveP15rfs_rule_filterj@Base 8.8.1.really.8.7.7
+ _ZN14rfs_uc_tcp_groD0Ev@Base 8.8.1.really.8.7.7
+ _ZN14rfs_uc_tcp_groD1Ev@Base 8.8.1.really.8.7.7
+ _ZN14rfs_uc_tcp_groD2Ev@Base 8.8.1.really.8.7.7
+ _ZN14route_nl_eventC1EP8nlmsghdrP10rtnl_routePv@Base 8.8.1.really.8.7.7
+ _ZN14route_nl_eventC2EP8nlmsghdrP10rtnl_routePv@Base 8.8.1.really.8.7.7
+ _ZN14route_nl_eventD0Ev@Base 8.8.1.really.8.7.7
+ _ZN14route_nl_eventD1Ev@Base 8.8.1.really.8.7.7
+ _ZN14route_nl_eventD2Ev@Base 8.8.1.really.8.7.7
+ _ZN14rule_table_mgr10parse_attrEP6rtattrP8rule_val@Base 8.8.1.really.8.7.7
+ _ZN14rule_table_mgr10update_tblEv@Base 8.8.1.really.8.7.7
+ _ZN14rule_table_mgr11parse_enrtyEP8nlmsghdrP8rule_val@Base 8.8.1.really.8.7.7
+ _ZN14rule_table_mgr12rule_resolveE20route_rule_table_keyRSt5dequeIhSaIhEE@Base 8.8.1.really.8.7.7
+ _ZN14rule_table_mgr12update_entryEP10rule_entry@Base 8.8.1.really.8.7.7
+ _ZN14rule_table_mgr13find_rule_valE20route_rule_table_keyRPSt5dequeIP8rule_valSaIS3_EE@Base 8.8.1.really.8.7.7
+ _ZN14rule_table_mgr16create_new_entryE20route_rule_table_keyPK8observer@Base 8.8.1.really.8.7.7
+ _ZN14rule_table_mgr16is_matching_ruleE20route_rule_table_keyP8rule_val@Base 8.8.1.really.8.7.7
+ _ZN14rule_table_mgrC1Ev@Base 8.8.1.really.8.7.7
+ _ZN14rule_table_mgrC2Ev@Base 8.8.1.really.8.7.7
+ _ZN14rule_table_mgrD0Ev@Base 8.8.1.really.8.7.7
+ _ZN14rule_table_mgrD1Ev@Base 8.8.1.really.8.7.7
+ _ZN14rule_table_mgrD2Ev@Base 8.8.1.really.8.7.7
+ _ZN14time_converter27get_single_converter_statusEP11ibv_context@Base 8.8.1.really.8.7.7
+ _ZN14time_converter31update_device_converters_statusERNSt3tr113unordered_mapIiP14net_device_valNS0_4hashIiEESt8equal_toIiESaISt4pairIKiS3_EEEE@Base 8.8.1.really.8.7.7
+ _ZN14time_converter9clean_objEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI10ip_addressP14net_device_valE16get_data_from_dbEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI10ip_addressP14net_device_valE17get_entry_from_dbES0_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI10ip_addressP14net_device_valE17register_observerES0_PK14cache_observerPP19cache_entry_subjectIS0_S2_E@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI10ip_addressP14net_device_valE19unregister_observerES0_PK14cache_observer@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI10ip_addressP14net_device_valE20handle_timer_expiredEPv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI10ip_addressP14net_device_valE21run_garbage_collectorEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI10ip_addressP14net_device_valE22stop_garbage_collectorEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI10ip_addressP14net_device_valE23start_garbage_collectorEi@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI10ip_addressP14net_device_valE25try_to_remove_cache_entryERNSt3tr18__detail19_Hashtable_iteratorISt4pairIKS0_P19cache_entry_subjectIS0_S2_EELb0ELb0EEE@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI10ip_addressP14net_device_valED0Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI10ip_addressP14net_device_valED1Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI10ip_addressP14net_device_valED2Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyP9route_valE16get_data_from_dbEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyP9route_valE17get_entry_from_dbES0_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyP9route_valE17register_observerES0_PK14cache_observerPP19cache_entry_subjectIS0_S2_E@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyP9route_valE19unregister_observerES0_PK14cache_observer@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyP9route_valE20handle_timer_expiredEPv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyP9route_valE21run_garbage_collectorEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyP9route_valE22stop_garbage_collectorEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyP9route_valE23start_garbage_collectorEi@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyP9route_valE25try_to_remove_cache_entryERNSt3tr18__detail19_Hashtable_iteratorISt4pairIKS0_P19cache_entry_subjectIS0_S2_EELb0ELb0EEE@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyP9route_valED0Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyP9route_valED1Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyP9route_valED2Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE16get_data_from_dbEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE17get_entry_from_dbES0_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE17register_observerES0_PK14cache_observerPP19cache_entry_subjectIS0_S6_E@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE19unregister_observerES0_PK14cache_observer@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE20handle_timer_expiredEPv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE21run_garbage_collectorEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE22stop_garbage_collectorEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE23start_garbage_collectorEi@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE25try_to_remove_cache_entryERNSt3tr18__detail19_Hashtable_iteratorISt4pairIKS0_P19cache_entry_subjectIS0_S6_EELb0ELb0EEE@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEED0Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEED1Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEED2Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI9neigh_keyP9neigh_valE16get_data_from_dbEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI9neigh_keyP9neigh_valE17get_entry_from_dbES0_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI9neigh_keyP9neigh_valE19unregister_observerES0_PK14cache_observer@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI9neigh_keyP9neigh_valE20handle_timer_expiredEPv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI9neigh_keyP9neigh_valE21run_garbage_collectorEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI9neigh_keyP9neigh_valE22stop_garbage_collectorEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI9neigh_keyP9neigh_valE23start_garbage_collectorEi@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI9neigh_keyP9neigh_valE25try_to_remove_cache_entryERNSt3tr18__detail19_Hashtable_iteratorISt4pairIKS0_P19cache_entry_subjectIS0_S2_EELb0ELb0EEE@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI9neigh_keyP9neigh_valE9get_entryES0_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI9neigh_keyP9neigh_valED0Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI9neigh_keyP9neigh_valED1Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN15cache_table_mgrI9neigh_keyP9neigh_valED2Ev@Base 8.8.1.really.8.7.7
+ _ZN15command_netlink20handle_timer_expiredEPv@Base 8.8.1.really.8.7.7
+ _ZN15command_netlink7executeEv@Base 8.8.1.really.8.7.7
+ _ZN15command_netlinkD0Ev@Base 8.8.1.really.8.7.7
+ _ZN15command_netlinkD1Ev@Base 8.8.1.really.8.7.7
+ _ZN15command_netlinkD2Ev@Base 8.8.1.really.8.7.7
+ _ZN15cq_channel_infoD0Ev@Base 8.8.1.really.8.7.7
+ _ZN15cq_channel_infoD1Ev@Base 8.8.1.really.8.7.7
+ _ZN15cq_channel_infoD2Ev@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_call10is_timeoutERK7timeval@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_call13set_efd_readyEii@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_call13set_rfd_readyEi@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_call13set_wfd_readyEi@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_call16immidiate_returnERi@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_call16prepare_to_blockEv@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_call18get_current_eventsEv@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_call18handle_epoll_eventEbjP13socket_fd_apii@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_call18init_offloaded_fdsEv@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_call19handle_os_countdownERi@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_call23set_offloaded_rfd_readyEi@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_call23set_offloaded_wfd_readyEi@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_call25ring_request_notificationEv@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_call27check_all_offloaded_socketsEv@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_call29ring_poll_and_process_elementEv@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_call46ring_wait_for_notification_and_process_elementEPv@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_call4lockEv@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_call4waitERK7timeval@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_call5_waitEi@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_call6unlockEv@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_call7wait_osEb@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_callC1EP11epoll_eventPN11io_mux_call16offloaded_mode_tEiS1_iiPK10__sigset_t@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_callC2EP11epoll_eventPN11io_mux_call16offloaded_mode_tEiS1_iiPK10__sigset_t@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_callD0Ev@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_callD1Ev@Base 8.8.1.really.8.7.7
+ _ZN15epoll_wait_callD2Ev@Base 8.8.1.really.8.7.7
+ _ZN15ip_frag_manager13new_frag_descER13ip_frag_key_t@Base 8.8.1.really.8.7.7
+ _ZN15ip_frag_manager14free_frag_descEP12ip_frag_desc@Base 8.8.1.really.8.7.7
+ _ZN15ip_frag_manager14free_hole_descEP17ip_frag_hole_desc@Base 8.8.1.really.8.7.7
+ _ZN15ip_frag_manager15alloc_frag_descEv@Base 8.8.1.really.8.7.7
+ _ZN15ip_frag_manager15alloc_hole_descEv@Base 8.8.1.really.8.7.7
+ _ZN15ip_frag_manager16print_statisticsEv@Base 8.8.1.really.8.7.7
+ _ZN15ip_frag_manager17destroy_frag_descEP12ip_frag_desc@Base 8.8.1.really.8.7.7
+ _ZN15ip_frag_manager19free_frag_resourcesEv@Base 8.8.1.really.8.7.7
+ _ZN15ip_frag_manager20handle_timer_expiredEPv@Base 8.8.1.really.8.7.7
+ _ZN15ip_frag_manager24return_buffers_to_ownersERKSt3mapIP10ring_slaveP14mem_buf_desc_tSt4lessIS2_ESaISt4pairIKS2_S4_EEE@Base 8.8.1.really.8.7.7
+ _ZN15ip_frag_manager8add_fragEP5iphdrP14mem_buf_desc_tPS3_@Base 8.8.1.really.8.7.7
+ _ZN15ip_frag_manager9free_fragEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN15ip_frag_managerC1Ev@Base 8.8.1.really.8.7.7
+ _ZN15ip_frag_managerC2Ev@Base 8.8.1.really.8.7.7
+ _ZN15ip_frag_managerD0Ev@Base 8.8.1.really.8.7.7
+ _ZN15ip_frag_managerD1Ev@Base 8.8.1.really.8.7.7
+ _ZN15ip_frag_managerD2Ev@Base 8.8.1.really.8.7.7
+ _ZN15neigh_send_dataD0Ev@Base 8.8.1.really.8.7.7
+ _ZN15neigh_send_dataD1Ev@Base 8.8.1.really.8.7.7
+ _ZN15neigh_send_dataD2Ev@Base 8.8.1.really.8.7.7
+ _ZN15neigh_send_infoD0Ev@Base 8.8.1.really.8.7.7
+ _ZN15neigh_send_infoD1Ev@Base 8.8.1.really.8.7.7
+ _ZN15neigh_send_infoD2Ev@Base 8.8.1.really.8.7.7
+ _ZN15neigh_table_mgr16create_new_entryE9neigh_keyPK8observer@Base 8.8.1.really.8.7.7
+ _ZN15neigh_table_mgr17register_observerE9neigh_keyPK14cache_observerPP19cache_entry_subjectIS0_P9neigh_valE@Base 8.8.1.really.8.7.7
+ _ZN15neigh_table_mgr9notify_cbEP5event@Base 8.8.1.really.8.7.7
+ _ZN15neigh_table_mgrC1Ev@Base 8.8.1.really.8.7.7
+ _ZN15neigh_table_mgrC2Ev@Base 8.8.1.really.8.7.7
+ _ZN15neigh_table_mgrD0Ev@Base 8.8.1.really.8.7.7
+ _ZN15neigh_table_mgrD1Ev@Base 8.8.1.really.8.7.7
+ _ZN15neigh_table_mgrD2Ev@Base 8.8.1.really.8.7.7
+ _ZN15netlink_wrapper10unregisterE20e_netlink_event_typePK8observer@Base 8.8.1.really.8.7.7
+ _ZN15netlink_wrapper11get_channelEv@Base 8.8.1.really.8.7.7
+ _ZN15netlink_wrapper12open_channelEv@Base 8.8.1.really.8.7.7
+ _ZN15netlink_wrapper13handle_eventsEv@Base 8.8.1.really.8.7.7
+ _ZN15netlink_wrapper14register_eventE20e_netlink_event_typePK8observer@Base 8.8.1.really.8.7.7
+ _ZN15netlink_wrapper16notify_observersEP13netlink_event20e_netlink_event_type@Base 8.8.1.really.8.7.7
+ _ZN15netlink_wrapper19link_cache_callbackEP9nl_object@Base 8.8.1.really.8.7.7
+ _ZN15netlink_wrapper19neigh_timer_expiredEv@Base 8.8.1.really.8.7.7
+ _ZN15netlink_wrapper20neigh_cache_callbackEP9nl_object@Base 8.8.1.really.8.7.7
+ _ZN15netlink_wrapper20route_cache_callbackEP9nl_object@Base 8.8.1.really.8.7.7
+ _ZN15netlink_wrapper26notify_neigh_cache_entriesEv@Base 8.8.1.really.8.7.7
+ _ZN15netlink_wrapper9get_neighEPKciP18netlink_neigh_info@Base 8.8.1.really.8.7.7
+ _ZN15netlink_wrapperC1Ev@Base 8.8.1.really.8.7.7
+ _ZN15netlink_wrapperC2Ev@Base 8.8.1.really.8.7.7
+ _ZN15netlink_wrapperD0Ev@Base 8.8.1.really.8.7.7
+ _ZN15netlink_wrapperD1Ev@Base 8.8.1.really.8.7.7
+ _ZN15netlink_wrapperD2Ev@Base 8.8.1.really.8.7.7
+ _ZN15pkt_sndr_sourceD0Ev@Base 8.8.1.really.8.7.7
+ _ZN15pkt_sndr_sourceD1Ev@Base 8.8.1.really.8.7.7
+ _ZN15pkt_sndr_sourceD2Ev@Base 8.8.1.really.8.7.7
+ _ZN15qp_mgr_eth_mlx512send_to_wireEP11ibv_send_wr21vma_wr_tx_packet_attrb@Base 8.8.1.really.8.7.7
+ _ZN15qp_mgr_eth_mlx514init_rx_cq_mgrEP16ibv_comp_channel@Base 8.8.1.really.8.7.7
+ _ZN15qp_mgr_eth_mlx514init_tx_cq_mgrEv@Base 8.8.1.really.8.7.7
+ _ZN15qp_mgr_eth_mlx515dm_release_dataEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN15qp_mgr_eth_mlx516post_recv_bufferEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN15qp_mgr_eth_mlx518is_completion_needEv@Base 8.8.1.really.8.7.7
+ _ZN15qp_mgr_eth_mlx52upEv@Base 8.8.1.really.8.7.7
+ _ZN15qp_mgr_eth_mlx539trigger_completion_for_all_sent_packetsEv@Base 8.8.1.really.8.7.7
+ _ZN15qp_mgr_eth_mlx54downEv@Base 8.8.1.really.8.7.7
+ _ZN15qp_mgr_eth_mlx57init_sqEv@Base 8.8.1.really.8.7.7
+ _ZN15qp_mgr_eth_mlx5C1EPK11ring_simplePK14ib_ctx_handlerhP16ibv_comp_channeljtb@Base 8.8.1.really.8.7.7
+ _ZN15qp_mgr_eth_mlx5C2EPK11ring_simplePK14ib_ctx_handlerhP16ibv_comp_channeljtb@Base 8.8.1.really.8.7.7
+ _ZN15qp_mgr_eth_mlx5D0Ev@Base 8.8.1.really.8.7.7
+ _ZN15qp_mgr_eth_mlx5D1Ev@Base 8.8.1.really.8.7.7
+ _ZN15qp_mgr_eth_mlx5D2Ev@Base 8.8.1.really.8.7.7
+ _ZN15route_table_mgr10parse_attrEP6rtattrP9route_val@Base 8.8.1.really.8.7.7
+ _ZN15route_table_mgr10update_tblEv@Base 8.8.1.really.8.7.7
+ _ZN15route_table_mgr11parse_enrtyEP8nlmsghdrP9route_val@Base 8.8.1.really.8.7.7
+ _ZN15route_table_mgr12update_entryEP11route_entryb@Base 8.8.1.really.8.7.7
+ _ZN15route_table_mgr13route_resolveE20route_rule_table_keyR12route_result@Base 8.8.1.really.8.7.7
+ _ZN15route_table_mgr14find_route_valERjhRP9route_val@Base 8.8.1.really.8.7.7
+ _ZN15route_table_mgr15new_route_eventEP9route_val@Base 8.8.1.really.8.7.7
+ _ZN15route_table_mgr16create_new_entryE20route_rule_table_keyPK8observer@Base 8.8.1.really.8.7.7
+ _ZN15route_table_mgr22update_invalid_entriesEv@Base 8.8.1.really.8.7.7
+ _ZN15route_table_mgr23rt_mgr_update_source_ipEv@Base 8.8.1.really.8.7.7
+ _ZN15route_table_mgr9notify_cbEP5event@Base 8.8.1.really.8.7.7
+ _ZN15route_table_mgrC1Ev@Base 8.8.1.really.8.7.7
+ _ZN15route_table_mgrC2Ev@Base 8.8.1.really.8.7.7
+ _ZN15route_table_mgrD0Ev@Base 8.8.1.really.8.7.7
+ _ZN15route_table_mgrD1Ev@Base 8.8.1.really.8.7.7
+ _ZN15route_table_mgrD2Ev@Base 8.8.1.really.8.7.7
+ _ZN15sysctl_reader_t11sysctl_readEPKciS1_z@Base 8.8.1.really.8.7.7
+ _ZN16dst_entry_udp_mc12set_src_addrEv@Base 8.8.1.really.8.7.7
+ _ZN16dst_entry_udp_mc15get_net_dev_valEv@Base 8.8.1.really.8.7.7
+ _ZN16dst_entry_udp_mc15resolve_net_devEb@Base 8.8.1.really.8.7.7
+ _ZN16dst_entry_udp_mc26conf_l2_hdr_and_snd_wqe_ibEv@Base 8.8.1.really.8.7.7
+ _ZN16dst_entry_udp_mcC1EjttjbR11socket_dataR21ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN16dst_entry_udp_mcC2EjttjbR11socket_dataR21ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN16dst_entry_udp_mcD0Ev@Base 8.8.1.really.8.7.7
+ _ZN16dst_entry_udp_mcD1Ev@Base 8.8.1.really.8.7.7
+ _ZN16dst_entry_udp_mcD2Ev@Base 8.8.1.really.8.7.7
+ _ZN16net_device_entry20handle_timer_expiredEPv@Base 8.8.1.really.8.7.7
+ _ZN16net_device_entry23handle_event_ibverbs_cbEPvS0_@Base 8.8.1.really.8.7.7
+ _ZN16net_device_entry7get_valERP14net_device_val@Base 8.8.1.really.8.7.7
+ _ZN16net_device_entryC1EjP14net_device_val@Base 8.8.1.really.8.7.7
+ _ZN16net_device_entryC2EjP14net_device_val@Base 8.8.1.really.8.7.7
+ _ZN16net_device_entryD0Ev@Base 8.8.1.really.8.7.7
+ _ZN16net_device_entryD1Ev@Base 8.8.1.really.8.7.7
+ _ZN16net_device_entryD2Ev@Base 8.8.1.really.8.7.7
+ _ZN16ring_bond_netvsc12slave_createEi@Base 8.8.1.really.8.7.7
+ _ZN16ring_bond_netvscC1Ei@Base 8.8.1.really.8.7.7
+ _ZN16ring_bond_netvscC2Ei@Base 8.8.1.really.8.7.7
+ _ZN16ring_bond_netvscD0Ev@Base 8.8.1.really.8.7.7
+ _ZN16ring_bond_netvscD1Ev@Base 8.8.1.really.8.7.7
+ _ZN16ring_bond_netvscD2Ev@Base 8.8.1.really.8.7.7
+ _ZN16wqe_send_handler15init_inline_wqeER11ibv_send_wrP7ibv_sgej@Base 8.8.1.really.8.7.7
+ _ZN16wqe_send_handler19init_not_inline_wqeER11ibv_send_wrP7ibv_sgej@Base 8.8.1.really.8.7.7
+ _ZN16wqe_send_handler8init_wqeER11ibv_send_wrP7ibv_sgej@Base 8.8.1.really.8.7.7
+ _ZN16wqe_send_handlerC1Ev@Base 8.8.1.really.8.7.7
+ _ZN16wqe_send_handlerC2Ev@Base 8.8.1.really.8.7.7
+ _ZN16wqe_send_handlerD0Ev@Base 8.8.1.really.8.7.7
+ _ZN16wqe_send_handlerD1Ev@Base 8.8.1.really.8.7.7
+ _ZN16wqe_send_handlerD2Ev@Base 8.8.1.really.8.7.7
+ _ZN17net_device_val_ib11create_ringEP21ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN17net_device_val_ib17create_L2_addressEPKc@Base 8.8.1.really.8.7.7
+ _ZN17net_device_val_ib17create_br_addressEPKc@Base 8.8.1.really.8.7.7
+ _ZN17net_device_val_ib6to_strB5cxx11Ev@Base 8.8.1.really.8.7.7
+ _ZN17net_device_val_ib9configureEv@Base 8.8.1.really.8.7.7
+ _ZN17net_device_val_ibD0Ev@Base 8.8.1.really.8.7.7
+ _ZN17net_device_val_ibD1Ev@Base 8.8.1.really.8.7.7
+ _ZN17net_device_val_ibD2Ev@Base 8.8.1.really.8.7.7
+ _ZN17netlink_link_info4fillEP9rtnl_link@Base 8.8.1.really.8.7.7
+ _ZN17netlink_link_infoC1EP9rtnl_link@Base 8.8.1.really.8.7.7
+ _ZN17netlink_link_infoC2EP9rtnl_link@Base 8.8.1.really.8.7.7
+ _ZN17netlink_link_infoD0Ev@Base 8.8.1.really.8.7.7
+ _ZN17netlink_link_infoD1Ev@Base 8.8.1.really.8.7.7
+ _ZN17netlink_link_infoD2Ev@Base 8.8.1.really.8.7.7
+ _ZN17stats_data_reader15add_data_readerEPvS0_i@Base 8.8.1.really.8.7.7
+ _ZN17stats_data_reader15pop_data_readerEPv@Base 8.8.1.really.8.7.7
+ _ZN17stats_data_reader17register_to_timerEv@Base 8.8.1.really.8.7.7
+ _ZN17stats_data_reader20handle_timer_expiredEPv@Base 8.8.1.really.8.7.7
+ _ZN17stats_data_readerC1Ev@Base 8.8.1.really.8.7.7
+ _ZN17stats_data_readerC2Ev@Base 8.8.1.really.8.7.7
+ _ZN17stats_data_readerD0Ev@Base 8.8.1.really.8.7.7
+ _ZN17stats_data_readerD1Ev@Base 8.8.1.really.8.7.7
+ _ZN17stats_data_readerD2Ev@Base 8.8.1.really.8.7.7
+ _ZN18header_pcp_updater12update_fieldER9dst_entry@Base 8.8.1.really.8.7.7
+ _ZN18header_pcp_updaterC1Eh@Base 8.8.1.really.8.7.7
+ _ZN18header_pcp_updaterC2Eh@Base 8.8.1.really.8.7.7
+ _ZN18header_pcp_updaterD0Ev@Base 8.8.1.really.8.7.7
+ _ZN18header_pcp_updaterD1Ev@Base 8.8.1.really.8.7.7
+ _ZN18header_pcp_updaterD2Ev@Base 8.8.1.really.8.7.7
+ _ZN18header_tos_updater12update_fieldER9dst_entry@Base 8.8.1.really.8.7.7
+ _ZN18header_tos_updaterC1Eh@Base 8.8.1.really.8.7.7
+ _ZN18header_tos_updaterC2Eh@Base 8.8.1.really.8.7.7
+ _ZN18header_tos_updaterD0Ev@Base 8.8.1.really.8.7.7
+ _ZN18header_tos_updaterD1Ev@Base 8.8.1.really.8.7.7
+ _ZN18header_tos_updaterD2Ev@Base 8.8.1.really.8.7.7
+ _ZN18header_ttl_updater12update_fieldER9dst_entry@Base 8.8.1.really.8.7.7
+ _ZN18header_ttl_updaterC1Ehb@Base 8.8.1.really.8.7.7
+ _ZN18header_ttl_updaterC2Ehb@Base 8.8.1.really.8.7.7
+ _ZN18header_ttl_updaterD0Ev@Base 8.8.1.really.8.7.7
+ _ZN18header_ttl_updaterD1Ev@Base 8.8.1.really.8.7.7
+ _ZN18header_ttl_updaterD2Ev@Base 8.8.1.really.8.7.7
+ _ZN18neigh_ib_broadcast12is_deletableEv@Base 8.8.1.really.8.7.7
+ _ZN18neigh_ib_broadcast13get_peer_infoEP9neigh_val@Base 8.8.1.really.8.7.7
+ _ZN18neigh_ib_broadcast18build_mc_neigh_valEv@Base 8.8.1.really.8.7.7
+ _ZN18neigh_ib_broadcast4sendER15neigh_send_info@Base 8.8.1.really.8.7.7
+ _ZN18neigh_ib_broadcast8send_arpEv@Base 8.8.1.really.8.7.7
+ _ZN18neigh_ib_broadcastC1E9neigh_key@Base 8.8.1.really.8.7.7
+ _ZN18neigh_ib_broadcastC2E9neigh_key@Base 8.8.1.really.8.7.7
+ _ZN18neigh_ib_broadcastD0Ev@Base 8.8.1.really.8.7.7
+ _ZN18neigh_ib_broadcastD1Ev@Base 8.8.1.really.8.7.7
+ _ZN18neigh_ib_broadcastD2Ev@Base 8.8.1.really.8.7.7
+ _ZN18net_device_val_eth11create_ringEP21ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN18net_device_val_eth17create_L2_addressEPKc@Base 8.8.1.really.8.7.7
+ _ZN18net_device_val_eth17create_br_addressEPKc@Base 8.8.1.really.8.7.7
+ _ZN18net_device_val_eth21parse_prio_egress_mapEv@Base 8.8.1.really.8.7.7
+ _ZN18net_device_val_eth6to_strB5cxx11Ev@Base 8.8.1.really.8.7.7
+ _ZN18net_device_val_eth9configureEv@Base 8.8.1.really.8.7.7
+ _ZN18net_device_val_ethD0Ev@Base 8.8.1.really.8.7.7
+ _ZN18net_device_val_ethD1Ev@Base 8.8.1.really.8.7.7
+ _ZN18net_device_val_ethD2Ev@Base 8.8.1.really.8.7.7
+ _ZN18netlink_neigh_info4fillEP10rtnl_neigh@Base 8.8.1.really.8.7.7
+ _ZN18netlink_neigh_infoC1EP10rtnl_neigh@Base 8.8.1.really.8.7.7
+ _ZN18netlink_neigh_infoC2EP10rtnl_neigh@Base 8.8.1.really.8.7.7
+ _ZN18netlink_neigh_infoD0Ev@Base 8.8.1.really.8.7.7
+ _ZN18netlink_neigh_infoD1Ev@Base 8.8.1.really.8.7.7
+ _ZN18netlink_neigh_infoD2Ev@Base 8.8.1.really.8.7.7
+ _ZN18netlink_route_info4fillEP10rtnl_route@Base 8.8.1.really.8.7.7
+ _ZN18netlink_route_infoC1EP10rtnl_route@Base 8.8.1.really.8.7.7
+ _ZN18netlink_route_infoC2EP10rtnl_route@Base 8.8.1.really.8.7.7
+ _ZN18netlink_route_infoD1Ev@Base 8.8.1.really.8.7.7
+ _ZN18netlink_route_infoD2Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN18netlink_socket_mgrI8rule_valE10update_tblEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN18netlink_socket_mgrI8rule_valE13print_val_tblEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN18netlink_socket_mgrI8rule_valE9recv_infoEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN18netlink_socket_mgrI8rule_valEC1E9nl_data_t@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN18netlink_socket_mgrI8rule_valEC2E9nl_data_t@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN18netlink_socket_mgrI8rule_valED0Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN18netlink_socket_mgrI8rule_valED1Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN18netlink_socket_mgrI8rule_valED2Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN18netlink_socket_mgrI9route_valE10update_tblEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN18netlink_socket_mgrI9route_valE13print_val_tblEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN18netlink_socket_mgrI9route_valE9recv_infoEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN18netlink_socket_mgrI9route_valEC1E9nl_data_t@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN18netlink_socket_mgrI9route_valEC2E9nl_data_t@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN18netlink_socket_mgrI9route_valED0Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN18netlink_socket_mgrI9route_valED1Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN18netlink_socket_mgrI9route_valED2Ev@Base 8.8.1.really.8.7.7
+ _ZN18time_converter_ptp20handle_timer_expiredEPv@Base 8.8.1.really.8.7.7
+ _ZN18time_converter_ptp30convert_hw_time_to_system_timeEmP8timespec@Base 8.8.1.really.8.7.7
+ _ZN18time_converter_ptpC1EP11ibv_context@Base 8.8.1.really.8.7.7
+ _ZN18time_converter_ptpC2EP11ibv_context@Base 8.8.1.really.8.7.7
+ _ZN18time_converter_ptpD0Ev@Base 8.8.1.really.8.7.7
+ _ZN18time_converter_ptpD1Ev@Base 8.8.1.really.8.7.7
+ _ZN18time_converter_ptpD2Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN19cache_entry_subjectI10ip_addressP14net_device_valE12is_deletableEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN19cache_entry_subjectI20route_rule_table_keyP9route_valE12is_deletableEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN19cache_entry_subjectI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE12is_deletableEv@Base 8.8.1.really.8.7.7
+ _ZN19lock_spin_recursive4lockEv@Base 8.8.1.really.8.7.7
+ _ZN19lock_spin_recursive6unlockEv@Base 8.8.1.really.8.7.7
+ _ZN19lock_spin_recursive7trylockEv@Base 8.8.1.really.8.7.7
+ _ZN19lock_spin_recursiveD0Ev@Base 8.8.1.really.8.7.7
+ _ZN19lock_spin_recursiveD1Ev@Base 8.8.1.really.8.7.7
+ _ZN19lock_spin_recursiveD2Ev@Base 8.8.1.really.8.7.7
+ _ZN19vma_unsupported_apiD0Ev@Base 8.8.1.really.8.7.7
+ _ZN19vma_unsupported_apiD1Ev@Base 8.8.1.really.8.7.7
+ _ZN19vma_unsupported_apiD2Ev@Base 8.8.1.really.8.7.7
+ _ZN19wqe_send_ib_handler11init_ib_wqeER11ibv_send_wrP7ibv_sgejP6ibv_ahjj@Base 8.8.1.really.8.7.7
+ _ZN19wqe_send_ib_handler16init_path_recordER11ibv_send_wrP6ibv_ahjj@Base 8.8.1.really.8.7.7
+ _ZN19wqe_send_ib_handler18init_inline_ib_wqeER11ibv_send_wrP7ibv_sgejP6ibv_ahjj@Base 8.8.1.really.8.7.7
+ _ZN19wqe_send_ib_handler22init_not_inline_ib_wqeER11ibv_send_wrP7ibv_sgejP6ibv_ahjj@Base 8.8.1.really.8.7.7
+ _ZN19wqe_send_ib_handlerC1Ev@Base 8.8.1.really.8.7.7
+ _ZN19wqe_send_ib_handlerC2Ev@Base 8.8.1.really.8.7.7
+ _ZN19wqe_send_ib_handlerD0Ev@Base 8.8.1.really.8.7.7
+ _ZN19wqe_send_ib_handlerD1Ev@Base 8.8.1.really.8.7.7
+ _ZN19wqe_send_ib_handlerD2Ev@Base 8.8.1.really.8.7.7
+ _ZN20lock_mutex_recursiveD0Ev@Base 8.8.1.really.8.7.7
+ _ZN20lock_mutex_recursiveD1Ev@Base 8.8.1.really.8.7.7
+ _ZN20lock_mutex_recursiveD2Ev@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgr10update_tblEv@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgr11get_ip_listB5cxx11Ei@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgr11get_max_mtuEv@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgr11set_max_mtuEj@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgr13print_val_tblEv@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgr14del_link_eventEPK17netlink_link_info@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgr14new_link_eventEPK17netlink_link_info@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgr16create_new_entryE10ip_addressPK8observer@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgr18get_net_device_valEi@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgr18get_net_device_valEj@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgr18global_ring_wakeupEv@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgr19free_ndtm_resourcesEv@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgr20global_ring_epfd_getEv@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgr20handle_timer_expiredEPv@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgr29global_ring_drain_and_proccesEv@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgr31global_ring_adapt_cq_moderationEv@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgr32global_ring_request_notificationEm@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgr36global_ring_poll_and_process_elementEPmPv@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgr53global_ring_wait_for_notification_and_process_elementEPmPv@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgr6to_strB5cxx11Ev@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgr9notify_cbEP5event@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgrC1Ev@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgrC2Ev@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgrD0Ev@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgrD1Ev@Base 8.8.1.really.8.7.7
+ _ZN20net_device_table_mgrD2Ev@Base 8.8.1.really.8.7.7
+ _ZN20route_rule_table_keyD0Ev@Base 8.8.1.really.8.7.7
+ _ZN20route_rule_table_keyD1Ev@Base 8.8.1.really.8.7.7
+ _ZN20route_rule_table_keyD2Ev@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager11stop_threadEv@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager11thread_loopEv@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager11update_epfdEiii@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager12start_threadEv@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager14reg_action_strE19event_action_type_e@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager16statistics_printEi13vlog_levels_t@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager18free_evh_resourcesEv@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager18wakeup_timer_eventEP13timer_handlerPv@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager19post_new_reg_actionER12reg_action_t@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager20register_timer_eventEiP13timer_handler16timer_req_type_tPvP12timers_group@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager21process_ibverbs_eventERSt17_Rb_tree_iteratorISt4pairIKi12event_data_tEE@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager21process_rdma_cm_eventERSt17_Rb_tree_iteratorISt4pairIKi12event_data_tEE@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager22register_command_eventEiP7command@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager22register_ibverbs_eventEiP21event_handler_ibverbsPvS2_@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager22register_rdma_cm_eventEiPvS0_P21event_handler_rdma_cm@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager22unregister_timer_eventEP13timer_handlerPv@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager23query_for_ibverbs_eventEi@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager24unregister_command_eventEi@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager24unregister_ibverbs_eventEiP21event_handler_ibverbs@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager24unregister_rdma_cm_eventEiPv@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager25priv_wakeup_timer_handlerER16timer_reg_info_t@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager26handle_registration_actionER12reg_action_t@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager27priv_register_timer_handlerER16timer_reg_info_t@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager28priv_register_command_eventsER18command_reg_info_t@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager28priv_register_ibverbs_eventsER18ibverbs_reg_info_t@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager28priv_register_rdma_cm_eventsER18rdma_cm_reg_info_t@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager29priv_unregister_timer_handlerER16timer_reg_info_t@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager30priv_unregister_command_eventsER18command_reg_info_t@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager30priv_unregister_ibverbs_eventsER18ibverbs_reg_info_t@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager30priv_unregister_rdma_cm_eventsER18rdma_cm_reg_info_t@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager34priv_unregister_all_handler_timersER16timer_reg_info_t@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager34unregister_timers_event_and_deleteEP13timer_handler@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_manager38priv_prepare_ibverbs_async_event_queueERSt17_Rb_tree_iteratorISt4pairIKi12event_data_tEE@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_managerC1Ev@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_managerC2Ev@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_managerD0Ev@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_managerD1Ev@Base 8.8.1.really.8.7.7
+ _ZN21event_handler_managerD2Ev@Base 8.8.1.really.8.7.7
+ _ZN21ring_alloc_logic_attr15set_user_id_keyEm@Base 8.8.1.really.8.7.7
+ _ZN21ring_alloc_logic_attr20set_ring_alloc_logicE12ring_logic_t@Base 8.8.1.really.8.7.7
+ _ZN21ring_alloc_logic_attr20set_ring_profile_keyEi@Base 8.8.1.really.8.7.7
+ _ZN21ring_alloc_logic_attr21set_memory_descriptorER5iovec@Base 8.8.1.really.8.7.7
+ _ZN21ring_alloc_logic_attr4initEv@Base 8.8.1.really.8.7.7
+ _ZN21ring_alloc_logic_attrC1E12ring_logic_t@Base 8.8.1.really.8.7.7
+ _ZN21ring_alloc_logic_attrC1ERKS_@Base 8.8.1.really.8.7.7
+ _ZN21ring_alloc_logic_attrC1Ev@Base 8.8.1.really.8.7.7
+ _ZN21ring_alloc_logic_attrC2E12ring_logic_t@Base 8.8.1.really.8.7.7
+ _ZN21ring_alloc_logic_attrC2ERKS_@Base 8.8.1.really.8.7.7
+ _ZN21ring_alloc_logic_attrC2Ev@Base 8.8.1.really.8.7.7
+ _ZN21ring_allocation_logic14create_new_keyEji@Base 8.8.1.really.8.7.7
+ _ZN21ring_allocation_logic19should_migrate_ringEv@Base 8.8.1.really.8.7.7
+ _ZN21ring_allocation_logic21calc_res_key_by_logicEv@Base 8.8.1.really.8.7.7
+ _ZN21ring_allocation_logicC1E12ring_logic_ti8source_tR21ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN21ring_allocation_logicC1Ev@Base 8.8.1.really.8.7.7
+ _ZN21ring_allocation_logicC2E12ring_logic_ti8source_tR21ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN21ring_allocation_logicC2Ev@Base 8.8.1.really.8.7.7
+ _ZN21tcp_timers_collection12remove_timerEP12timer_node_t@Base 8.8.1.really.8.7.7
+ _ZN21tcp_timers_collection13add_new_timerEP12timer_node_tP13timer_handlerPv@Base 8.8.1.really.8.7.7
+ _ZN21tcp_timers_collection18free_tta_resourcesEv@Base 8.8.1.really.8.7.7
+ _ZN21tcp_timers_collection20handle_timer_expiredEPv@Base 8.8.1.really.8.7.7
+ _ZN21tcp_timers_collection9clean_objEv@Base 8.8.1.really.8.7.7
+ _ZN21tcp_timers_collectionC1Eii@Base 8.8.1.really.8.7.7
+ _ZN21tcp_timers_collectionC2Eii@Base 8.8.1.really.8.7.7
+ _ZN21tcp_timers_collectionD0Ev@Base 8.8.1.really.8.7.7
+ _ZN21tcp_timers_collectionD1Ev@Base 8.8.1.really.8.7.7
+ _ZN21tcp_timers_collectionD2Ev@Base 8.8.1.really.8.7.7
+ _ZN21time_converter_ib_ctx11sync_clocksEP8timespecPm@Base 8.8.1.really.8.7.7
+ _ZN21time_converter_ib_ctx18get_hca_core_clockEv@Base 8.8.1.really.8.7.7
+ _ZN21time_converter_ib_ctx20handle_timer_expiredEPv@Base 8.8.1.really.8.7.7
+ _ZN21time_converter_ib_ctx22fix_hw_clock_deviationEv@Base 8.8.1.really.8.7.7
+ _ZN21time_converter_ib_ctx30convert_hw_time_to_system_timeEmP8timespec@Base 8.8.1.really.8.7.7
+ _ZN21time_converter_ib_ctxC1EP11ibv_context20ts_conversion_mode_tm@Base 8.8.1.really.8.7.7
+ _ZN21time_converter_ib_ctxC2EP11ibv_context20ts_conversion_mode_tm@Base 8.8.1.really.8.7.7
+ _ZN21time_converter_ib_ctxD0Ev@Base 8.8.1.really.8.7.7
+ _ZN21time_converter_ib_ctxD1Ev@Base 8.8.1.really.8.7.7
+ _ZN21time_converter_ib_ctxD2Ev@Base 8.8.1.really.8.7.7
+ _ZN21vlogger_timer_handler20handle_timer_expiredEPv@Base 8.8.1.really.8.7.7
+ _ZN21vlogger_timer_handlerC1Ev@Base 8.8.1.really.8.7.7
+ _ZN21vlogger_timer_handlerC2Ev@Base 8.8.1.really.8.7.7
+ _ZN21vlogger_timer_handlerD0Ev@Base 8.8.1.really.8.7.7
+ _ZN21vlogger_timer_handlerD1Ev@Base 8.8.1.really.8.7.7
+ _ZN21vlogger_timer_handlerD2Ev@Base 8.8.1.really.8.7.7
+ _ZN24flow_tuple_with_local_if4hashEv@Base 8.8.1.really.8.7.7
+ _ZN24flow_tuple_with_local_if7set_strEv@Base 8.8.1.really.8.7.7
+ _ZN24flow_tuple_with_local_ifD0Ev@Base 8.8.1.really.8.7.7
+ _ZN24flow_tuple_with_local_ifD1Ev@Base 8.8.1.really.8.7.7
+ _ZN24flow_tuple_with_local_ifD2Ev@Base 8.8.1.really.8.7.7
+ _ZN24ring_alloc_logic_updater12update_fieldER9dst_entry@Base 8.8.1.really.8.7.7
+ _ZN24ring_alloc_logic_updaterC1EiR9lock_baseR21ring_alloc_logic_attrP14socket_stats_t@Base 8.8.1.really.8.7.7
+ _ZN24ring_alloc_logic_updaterC2EiR9lock_baseR21ring_alloc_logic_attrP14socket_stats_t@Base 8.8.1.really.8.7.7
+ _ZN24ring_alloc_logic_updaterD0Ev@Base 8.8.1.really.8.7.7
+ _ZN24ring_alloc_logic_updaterD1Ev@Base 8.8.1.really.8.7.7
+ _ZN24ring_alloc_logic_updaterD2Ev@Base 8.8.1.really.8.7.7
+ _ZN24ring_profiles_collection11add_profileEP18vma_ring_type_attr@Base 8.8.1.really.8.7.7
+ _ZN24ring_profiles_collection11get_profileEi@Base 8.8.1.really.8.7.7
+ _ZN24ring_profiles_collectionC1Ev@Base 8.8.1.really.8.7.7
+ _ZN24ring_profiles_collectionC2Ev@Base 8.8.1.really.8.7.7
+ _ZN24ring_profiles_collectionD1Ev@Base 8.8.1.really.8.7.7
+ _ZN24ring_profiles_collectionD2Ev@Base 8.8.1.really.8.7.7
+ _ZN25ib_ctx_handler_collection10del_ib_ctxEP14ib_ctx_handler@Base 8.8.1.really.8.7.7
+ _ZN25ib_ctx_handler_collection10get_ib_ctxEPKc@Base 8.8.1.really.8.7.7
+ _ZN25ib_ctx_handler_collection10update_tblEPKc@Base 8.8.1.really.8.7.7
+ _ZN25ib_ctx_handler_collection13print_val_tblEv@Base 8.8.1.really.8.7.7
+ _ZN25ib_ctx_handler_collectionC1Ev@Base 8.8.1.really.8.7.7
+ _ZN25ib_ctx_handler_collectionC2Ev@Base 8.8.1.really.8.7.7
+ _ZN25ib_ctx_handler_collectionD1Ev@Base 8.8.1.really.8.7.7
+ _ZN25ib_ctx_handler_collectionD2Ev@Base 8.8.1.really.8.7.7
+ _ZN3rfs11attach_flowEP13pkt_rcvr_sink@Base 8.8.1.really.8.7.7
+ _ZN3rfs11detach_flowEP13pkt_rcvr_sink@Base 8.8.1.really.8.7.7
+ _ZN3rfs15create_ibv_flowEv@Base 8.8.1.really.8.7.7
+ _ZN3rfs16destroy_ibv_flowEv@Base 8.8.1.really.8.7.7
+ _ZN3rfs6to_strEv@Base 8.8.1.really.8.7.7
+ _ZN3rfs8add_sinkEP13pkt_rcvr_sink@Base 8.8.1.really.8.7.7
+ _ZN3rfs8del_sinkEP13pkt_rcvr_sink@Base 8.8.1.really.8.7.7
+ _ZN3rfsC1EP10flow_tupleP10ring_slaveP15rfs_rule_filterj@Base 8.8.1.really.8.7.7
+ _ZN3rfsC2EP10flow_tupleP10ring_slaveP15rfs_rule_filterj@Base 8.8.1.really.8.7.7
+ _ZN3rfsD0Ev@Base 8.8.1.really.8.7.7
+ _ZN3rfsD1Ev@Base 8.8.1.really.8.7.7
+ _ZN3rfsD2Ev@Base 8.8.1.really.8.7.7
+ _ZN4ring6reg_mrEPvmRj@Base 8.8.1.really.8.7.7
+ _ZN4ring8dereg_mrEPvm@Base 8.8.1.really.8.7.7
+ _ZN4ring9print_valEv@Base 8.8.1.really.8.7.7
+ _ZN4ringC1Ev@Base 8.8.1.really.8.7.7
+ _ZN4ringC2Ev@Base 8.8.1.really.8.7.7
+ _ZN4ringD0Ev@Base 8.8.1.really.8.7.7
+ _ZN4ringD1Ev@Base 8.8.1.really.8.7.7
+ _ZN4ringD2Ev@Base 8.8.1.really.8.7.7
+ _ZN5agent10check_linkEv@Base 8.8.1.really.8.7.7
+ _ZN5agent11progress_cbEv@Base 8.8.1.really.8.7.7
+ _ZN5agent11register_cbEPFvPvES0_@Base 8.8.1.really.8.7.7
+ _ZN5agent13send_msg_exitEv@Base 8.8.1.really.8.7.7
+ _ZN5agent13send_msg_flowEP12vma_msg_flow@Base 8.8.1.really.8.7.7
+ _ZN5agent13send_msg_initEv@Base 8.8.1.really.8.7.7
+ _ZN5agent13unregister_cbEPFvPvES0_@Base 8.8.1.really.8.7.7
+ _ZN5agent19create_agent_socketEv@Base 8.8.1.really.8.7.7
+ _ZN5agent3putEPKvml@Base 8.8.1.really.8.7.7
+ _ZN5agent4sendEP9agent_msg@Base 8.8.1.really.8.7.7
+ _ZN5agent8progressEv@Base 8.8.1.really.8.7.7
+ _ZN5agentC1Ev@Base 8.8.1.really.8.7.7
+ _ZN5agentC2Ev@Base 8.8.1.really.8.7.7
+ _ZN5agentD0Ev@Base 8.8.1.really.8.7.7
+ _ZN5agentD1Ev@Base 8.8.1.really.8.7.7
+ _ZN5agentD2Ev@Base 8.8.1.really.8.7.7
+ _ZN5timer12remove_timerEP12timer_node_tP13timer_handler@Base 8.8.1.really.8.7.7
+ _ZN5timer12wakeup_timerEP12timer_node_t@Base 8.8.1.really.8.7.7
+ _ZN5timer13add_new_timerEjP12timer_node_tP13timer_handlerPv16timer_req_type_t@Base 8.8.1.really.8.7.7
+ _ZN5timer14insert_to_listEP12timer_node_t@Base 8.8.1.really.8.7.7
+ _ZN5timer14update_timeoutEv@Base 8.8.1.really.8.7.7
+ _ZN5timer16remove_from_listEP12timer_node_t@Base 8.8.1.really.8.7.7
+ _ZN5timer17remove_all_timersEP13timer_handler@Base 8.8.1.really.8.7.7
+ _ZN5timer25process_registered_timersEv@Base 8.8.1.really.8.7.7
+ _ZN5timerC1Ev@Base 8.8.1.really.8.7.7
+ _ZN5timerC2Ev@Base 8.8.1.really.8.7.7
+ _ZN5timerD1Ev@Base 8.8.1.really.8.7.7
+ _ZN5timerD2Ev@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr12get_cq_eventEv@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr13m_n_global_snE@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr13req_notify_cqEv@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr14get_channel_fdEv@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr15get_ibv_cq_hndlEv@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr16statistics_printEv@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr17m_n_cq_id_counterE@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr18drain_and_proccessEPm@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr20reclaim_recv_buffersEP10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEE@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr20reclaim_recv_buffersEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr20request_more_buffersEv@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr20request_notificationEm@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr20return_extra_buffersEv@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr21process_cq_element_rxEP6ibv_wc@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr21process_cq_element_txEP6ibv_wc@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr22fill_cq_hw_descriptorsER10hw_cq_data@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr22process_tx_buffer_listEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr26compensate_qp_poll_successEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr26reclaim_recv_buffer_helperEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr26reclaim_recv_single_bufferEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr27poll_and_process_element_rxEPP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr27poll_and_process_element_rxEPmPv@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr27poll_and_process_element_txEPm@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr28mem_buf_desc_return_to_ownerEP14mem_buf_desc_tPv@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr28reclaim_recv_buffers_no_lockEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr29process_cq_element_log_helperEP14mem_buf_desc_tP6ibv_wc@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr34mem_buf_desc_completion_with_errorEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr41wait_for_notification_and_process_elementEPmPv@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr4pollEP6ibv_wciPm@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr8clean_cqEv@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr9add_qp_rxEP6qp_mgr@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr9add_qp_txEP6qp_mgr@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr9configureEi@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgr9del_qp_rxEP6qp_mgr@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgrC1EP11ring_simpleP14ib_ctx_handleriP16ibv_comp_channelbb@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgrC2EP11ring_simpleP14ib_ctx_handleriP16ibv_comp_channelbb@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgrD0Ev@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgrD1Ev@Base 8.8.1.really.8.7.7
+ _ZN6cq_mgrD2Ev@Base 8.8.1.really.8.7.7
+ _ZN6dm_mgr12release_dataEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN6dm_mgr17release_resourcesEv@Base 8.8.1.really.8.7.7
+ _ZN6dm_mgr18allocate_resourcesEP14ib_ctx_handlerP12ring_stats_t@Base 8.8.1.really.8.7.7
+ _ZN6dm_mgr9copy_dataEP17mlx5_wqe_data_segPhjP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN6dm_mgrC1Ev@Base 8.8.1.really.8.7.7
+ _ZN6dm_mgrC2Ev@Base 8.8.1.really.8.7.7
+ _ZN6header10set_ip_tosEh@Base 8.8.1.really.8.7.7
+ _ZN6header10set_ip_ttlEh@Base 8.8.1.really.8.7.7
+ _ZN6header12set_vlan_pcpEh@Base 8.8.1.really.8.7.7
+ _ZN6header19configure_ip_headerEhjjhht@Base 8.8.1.really.8.7.7
+ _ZN6header19configure_tcp_portsEtt@Base 8.8.1.really.8.7.7
+ _ZN6header20configure_udp_headerEtt@Base 8.8.1.really.8.7.7
+ _ZN6header21configure_eth_headersERK10L2_addressS2_t@Base 8.8.1.really.8.7.7
+ _ZN6header21set_mac_to_eth_headerERK10L2_addressS2_R6ethhdr@Base 8.8.1.really.8.7.7
+ _ZN6header22update_actual_hdr_addrEv@Base 8.8.1.really.8.7.7
+ _ZN6header23configure_ipoib_headersEj@Base 8.8.1.really.8.7.7
+ _ZN6header26configure_vlan_eth_headersERK10L2_addressS2_tt@Base 8.8.1.really.8.7.7
+ _ZN6header4initEv@Base 8.8.1.really.8.7.7
+ _ZN6headerC1ERKS_@Base 8.8.1.really.8.7.7
+ _ZN6headerC1Ev@Base 8.8.1.really.8.7.7
+ _ZN6headerC2ERKS_@Base 8.8.1.really.8.7.7
+ _ZN6headerC2Ev@Base 8.8.1.really.8.7.7
+ _ZN6headerD0Ev@Base 8.8.1.really.8.7.7
+ _ZN6headerD1Ev@Base 8.8.1.really.8.7.7
+ _ZN6headerD2Ev@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgr12send_to_wireEP11ibv_send_wr21vma_wr_tx_packet_attrb@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgr14init_rx_cq_mgrEP16ibv_comp_channel@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgr14init_tx_cq_mgrEv@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgr14post_qp_createEv@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgr15dm_release_dataEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgr16post_recv_bufferEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgr17get_rx_max_wr_numEv@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgr17post_recv_buffersEP10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEEm@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgr18is_completion_needEv@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgr18release_rx_buffersEv@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgr18release_tx_buffersEv@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgr19fill_hw_descriptorsER22vma_mlx_hw_device_data@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgr19is_ratelimit_changeER16vma_rate_limit_t@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgr19modify_qp_ratelimitER16vma_rate_limit_tj@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgr24handle_cq_initializationEPjP16ibv_comp_channelb@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgr24modify_qp_to_error_stateEv@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgr2upEv@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgr39trigger_completion_for_all_sent_packetsEv@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgr4downEv@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgr4sendEP11ibv_send_wr21vma_wr_tx_packet_attr@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgr9configureEP16ibv_comp_channel@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgrC1EPK11ring_simplePK14ib_ctx_handlerhj@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgrC2EPK11ring_simplePK14ib_ctx_handlerhj@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgrD0Ev@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgrD1Ev@Base 8.8.1.really.8.7.7
+ _ZN6qp_mgrD2Ev@Base 8.8.1.really.8.7.7
+ _ZN6rfs_mc17prepare_flow_specEv@Base 8.8.1.really.8.7.7
+ _ZN6rfs_mc18rx_dispatch_packetEP14mem_buf_desc_tPv@Base 8.8.1.really.8.7.7
+ _ZN6rfs_mcC1EP10flow_tupleP10ring_slaveP15rfs_rule_filteri@Base 8.8.1.really.8.7.7
+ _ZN6rfs_mcC2EP10flow_tupleP10ring_slaveP15rfs_rule_filteri@Base 8.8.1.really.8.7.7
+ _ZN6rfs_mcD0Ev@Base 8.8.1.really.8.7.7
+ _ZN6rfs_mcD1Ev@Base 8.8.1.really.8.7.7
+ _ZN6rfs_mcD2Ev@Base 8.8.1.really.8.7.7
+ _ZN6rfs_uc17prepare_flow_specEv@Base 8.8.1.really.8.7.7
+ _ZN6rfs_uc18rx_dispatch_packetEP14mem_buf_desc_tPv@Base 8.8.1.really.8.7.7
+ _ZN6rfs_ucC1EP10flow_tupleP10ring_slaveP15rfs_rule_filterj@Base 8.8.1.really.8.7.7
+ _ZN6rfs_ucC2EP10flow_tupleP10ring_slaveP15rfs_rule_filterj@Base 8.8.1.really.8.7.7
+ _ZN6rfs_ucD0Ev@Base 8.8.1.really.8.7.7
+ _ZN6rfs_ucD1Ev@Base 8.8.1.really.8.7.7
+ _ZN6rfs_ucD2Ev@Base 8.8.1.really.8.7.7
+ _ZN6wakeup14going_to_sleepEv@Base 8.8.1.really.8.7.7
+ _ZN6wakeup19wakeup_set_epoll_fdEi@Base 8.8.1.really.8.7.7
+ _ZN6wakeupC1Ev@Base 8.8.1.really.8.7.7
+ _ZN6wakeupC2Ev@Base 8.8.1.really.8.7.7
+ _ZN7gro_mgr13is_stream_maxEv@Base 8.8.1.really.8.7.7
+ _ZN7gro_mgr14reserve_streamEP14rfs_uc_tcp_gro@Base 8.8.1.really.8.7.7
+ _ZN7gro_mgr9flush_allEPv@Base 8.8.1.really.8.7.7
+ _ZN7gro_mgrC1Ejj@Base 8.8.1.really.8.7.7
+ _ZN7gro_mgrC2Ejj@Base 8.8.1.really.8.7.7
+ _ZN7gro_mgrD0Ev@Base 8.8.1.really.8.7.7
+ _ZN7gro_mgrD1Ev@Base 8.8.1.really.8.7.7
+ _ZN7gro_mgrD2Ev@Base 8.8.1.really.8.7.7
+ _ZN7ring_ib13create_qp_mgrEPK14ib_ctx_handlerhP16ibv_comp_channel@Base 8.8.1.really.8.7.7
+ _ZN7ring_ibD0Ev@Base 8.8.1.really.8.7.7
+ _ZN7ring_ibD1Ev@Base 8.8.1.really.8.7.7
+ _ZN7ring_ibD2Ev@Base 8.8.1.really.8.7.7
+ _ZN7sm_fifo8is_emptyEv@Base 8.8.1.really.8.7.7
+ _ZN7sm_fifo9pop_frontEv@Base 8.8.1.really.8.7.7
+ _ZN7sm_fifo9push_backEiPv@Base 8.8.1.really.8.7.7
+ _ZN7subject16notify_observersEP5event@Base 8.8.1.really.8.7.7
+ _ZN7subject17register_observerEPK8observer@Base 8.8.1.really.8.7.7
+ _ZN7subject19unregister_observerEPK8observer@Base 8.8.1.really.8.7.7
+ _ZN7subjectD0Ev@Base 8.8.1.really.8.7.7
+ _ZN7subjectD1Ev@Base 8.8.1.really.8.7.7
+ _ZN7subjectD2Ev@Base 8.8.1.really.8.7.7
+ _ZN8ETH_addrD0Ev@Base 8.8.1.really.8.7.7
+ _ZN8ETH_addrD1Ev@Base 8.8.1.really.8.7.7
+ _ZN8ETH_addrD2Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN8hash_mapI19flow_spec_tcp_key_tP3rfsE3setERKS0_S2_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN8hash_mapI19flow_spec_tcp_key_tP3rfsED0Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN8hash_mapI19flow_spec_tcp_key_tP3rfsED1Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN8hash_mapI19flow_spec_tcp_key_tP3rfsED2Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN8hash_mapI19flow_spec_udp_key_tP3rfsE3setERKS0_S2_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN8hash_mapI19flow_spec_udp_key_tP3rfsED0Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN8hash_mapI19flow_spec_udp_key_tP3rfsED1Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZN8hash_mapI19flow_spec_udp_key_tP3rfsED2Ev@Base 8.8.1.really.8.7.7
+ _ZN8igmp_mgr16get_igmp_handlerERK9neigh_keyh@Base 8.8.1.really.8.7.7
+ _ZN8igmp_mgr19process_igmp_packetEP5iphdrj@Base 8.8.1.really.8.7.7
+ _ZN8igmp_mgrD0Ev@Base 8.8.1.really.8.7.7
+ _ZN8igmp_mgrD1Ev@Base 8.8.1.really.8.7.7
+ _ZN8igmp_mgrD2Ev@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ib10destroy_ahEv@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ib13post_send_arpEb@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ib16priv_enter_errorEv@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ib16priv_enter_readyEv@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ib18build_mc_neigh_valEP13rdma_cm_eventRj@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ib18build_uc_neigh_valEP13rdma_cm_eventRj@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ib20handle_timer_expiredEPv@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ib21ibverbs_event_mappingEPv@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ib21priv_enter_not_activeEv@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ib22prepare_to_send_packetEP6header@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ib23handle_event_ibverbs_cbEPvS0_@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ib23priv_enter_arp_resolvedEv@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ib24priv_enter_path_resolvedEP13rdma_cm_eventRj@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ib25dofunc_enter_arp_resolvedERK9sm_info_t@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ib26dofunc_enter_path_resolvedERK9sm_info_t@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ib28handle_enter_arp_resolved_mcEv@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ib28handle_enter_arp_resolved_ucEv@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ib31priv_handle_neigh_is_l2_changedEPh@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ib7find_pdEv@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ib9create_ahEv@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ibC1E9neigh_keyb@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ibC2E9neigh_keyb@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ibD0Ev@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ibD1Ev@Base 8.8.1.really.8.7.7
+ _ZN8neigh_ibD2Ev@Base 8.8.1.really.8.7.7
+ _ZN8observer9notify_cbEP5event@Base 8.8.1.really.8.7.7
+ _ZN8observer9notify_cbEv@Base 8.8.1.really.8.7.7
+ _ZN8pipeinfo16save_stats_rx_osEi@Base 8.8.1.really.8.7.7
+ _ZN8pipeinfo16save_stats_tx_osEi@Base 8.8.1.really.8.7.7
+ _ZN8pipeinfo16statistics_printEv@Base 8.8.1.really.8.7.7
+ _ZN8pipeinfo20handle_timer_expiredEPv@Base 8.8.1.really.8.7.7
+ _ZN8pipeinfo22write_lbm_pipe_enhanceEv@Base 8.8.1.really.8.7.7
+ _ZN8pipeinfo2rxE9rx_call_tP5ioveclPiP8sockaddrPjP6msghdr@Base 8.8.1.really.8.7.7
+ _ZN8pipeinfo2txE9tx_call_tPK5iovecliPK8sockaddrj@Base 8.8.1.really.8.7.7
+ _ZN8pipeinfo5fcntlEim@Base 8.8.1.really.8.7.7
+ _ZN8pipeinfo5ioctlEmm@Base 8.8.1.really.8.7.7
+ _ZN8pipeinfo8get_typeEv@Base 8.8.1.really.8.7.7
+ _ZN8pipeinfo9clean_objEv@Base 8.8.1.really.8.7.7
+ _ZN8pipeinfoC1Ei@Base 8.8.1.really.8.7.7
+ _ZN8pipeinfoC2Ei@Base 8.8.1.really.8.7.7
+ _ZN8pipeinfoD0Ev@Base 8.8.1.really.8.7.7
+ _ZN8pipeinfoD1Ev@Base 8.8.1.really.8.7.7
+ _ZN8pipeinfoD2Ev@Base 8.8.1.really.8.7.7
+ _ZN8ring_eth13create_qp_mgrEPK14ib_ctx_handlerhP16ibv_comp_channel@Base 8.8.1.really.8.7.7
+ _ZN8ring_ethD0Ev@Base 8.8.1.really.8.7.7
+ _ZN8ring_ethD1Ev@Base 8.8.1.really.8.7.7
+ _ZN8ring_ethD2Ev@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap10tap_createEP14net_device_val@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap11attach_flowER10flow_tupleP13pkt_rcvr_sink@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap11detach_flowER10flow_tupleP13pkt_rcvr_sink@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap11send_bufferEP11ibv_send_wr21vma_wr_tx_packet_attr@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap11tap_destroyEv@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap14mem_buf_tx_getEibi@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap15get_underly_qpnEv@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap15is_socketxtremeEv@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap16modify_ratelimitER16vma_rate_limit_t@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap16send_lwip_bufferEiP11ibv_send_wr21vma_wr_tx_packet_attr@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap16send_ring_bufferEiP11ibv_send_wr21vma_wr_tx_packet_attr@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap17get_max_tx_inlineEv@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap17socketxtreme_pollEP16vma_completion_tji@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap18drain_and_proccessEv@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap18mem_buf_tx_releaseEP14mem_buf_desc_tbb@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap18process_element_rxEPv@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap19adapt_cq_moderationEv@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap19send_status_handlerEiP11ibv_send_wr@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap20prepare_flow_messageER12vma_msg_flow10msg_flow_t@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap20prepare_flow_messageER12vma_msg_flow10msg_flow_tR10flow_tuple@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap20reclaim_recv_buffersEP10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEE@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap20reclaim_recv_buffersEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap20request_notificationE9cq_type_tm@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap23inc_cq_moderation_statsEm@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap23request_more_rx_buffersEv@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap25get_hw_dummy_send_supportEiP11ibv_send_wr@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap26reclaim_recv_single_bufferEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap27poll_and_process_element_rxEPmPv@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap38mem_buf_desc_return_single_to_owner_txEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap41wait_for_notification_and_process_elementEiPmPv@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap5is_upEv@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap6del_ecEP7ring_ec@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap6put_ecEP7ring_ec@Base 8.8.1.really.8.7.7
+ _ZN8ring_tap8get_compEv@Base 8.8.1.really.8.7.7
+ _ZN8ring_tapC1EiP4ring@Base 8.8.1.really.8.7.7
+ _ZN8ring_tapC2EiP4ring@Base 8.8.1.really.8.7.7
+ _ZN8ring_tapD0Ev@Base 8.8.1.really.8.7.7
+ _ZN8ring_tapD1Ev@Base 8.8.1.really.8.7.7
+ _ZN8ring_tapD2Ev@Base 8.8.1.really.8.7.7
+ _ZN8rule_val7set_strEv@Base 8.8.1.really.8.7.7
+ _ZN8rule_val9print_valEv@Base 8.8.1.really.8.7.7
+ _ZN8rule_valC1Ev@Base 8.8.1.really.8.7.7
+ _ZN8rule_valC2Ev@Base 8.8.1.really.8.7.7
+ _ZN8rule_valD0Ev@Base 8.8.1.really.8.7.7
+ _ZN8rule_valD1Ev@Base 8.8.1.really.8.7.7
+ _ZN8rule_valD2Ev@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo10getsockoptEiiPvPj@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo10set_eventsEm@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo10setsockoptEiiPKvj@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo11check_ringsEv@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo11handle_cmsgEP6msghdr@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo11insert_cmsgEP10cmsg_stateiiPvi@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo11unlock_rx_qEv@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo12set_blockingEb@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo13flow_in_reuseEv@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo13get_rings_fdsERi@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo13get_rings_numEv@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo13set_ring_attrEP25vma_ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo14rx_add_ring_cbER24flow_tuple_with_local_ifP4ringb@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo14rx_del_ring_cbER24flow_tuple_with_local_ifP4ringb@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo14rx_wait_helperERib@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo15attach_receiverER24flow_tuple_with_local_if@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo15detach_receiverER24flow_tuple_with_local_if@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo16handle_msg_truncEmmiPi@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo16modify_ratelimitEP9dst_entryR16vma_rate_limit_t@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo16save_stats_rx_osEi@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo16save_stats_tx_osEi@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo16set_sockopt_prioEPKvj@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo16statistics_printE13vlog_levels_t@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo17add_epoll_contextEP9epfd_info@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo17destructor_helperEv@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo17get_sock_by_L3_L4E13in_protocol_tjt@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo17register_callbackEPF26vma_recv_callback_retval_timP5iovecP10vma_info_tPvES5_@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo17setsockopt_kernelEiiPKvjib@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo17try_un_offloadingEv@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo18do_rings_migrationER21ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo18find_target_familyE6role_tP8sockaddrS2_@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo18process_timestampsEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo19create_nd_resourcesE10ip_address@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo20destroy_nd_resourcesE10ip_address@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo20remove_epoll_contextEP9epfd_info@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo20set_ring_attr_helperEP21ring_alloc_logic_attrP25vma_ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo21attach_as_uc_receiverE6role_tb@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo21save_stats_rx_offloadEi@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo22get_socket_network_ptrEPvRt@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo24consider_rings_migrationEv@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo25move_owned_rx_ready_descsEP4ringP10vma_list_tI14mem_buf_desc_tXadL_ZNS3_18buffer_node_offsetEvEEE@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo5fcntlEim@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo5ioctlEmm@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo7rx_waitERib@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo9do_wakeupEv@Base 8.8.1.really.8.7.7
+ _ZN8sockinfo9lock_rx_qEv@Base 8.8.1.really.8.7.7
+ _ZN8sockinfoC1Ei@Base 8.8.1.really.8.7.7
+ _ZN8sockinfoC2Ei@Base 8.8.1.really.8.7.7
+ _ZN8sockinfoD0Ev@Base 8.8.1.really.8.7.7
+ _ZN8sockinfoD1Ev@Base 8.8.1.really.8.7.7
+ _ZN8sockinfoD2Ev@Base 8.8.1.really.8.7.7
+ _ZN8vma_lwip19free_lwip_resourcesEv@Base 8.8.1.really.8.7.7
+ _ZN8vma_lwip20handle_timer_expiredEPv@Base 8.8.1.really.8.7.7
+ _ZN8vma_lwip25read_tcp_timestamp_optionEv@Base 8.8.1.really.8.7.7
+ _ZN8vma_lwip7sys_nowEv@Base 8.8.1.really.8.7.7
+ _ZN8vma_lwipC1Ev@Base 8.8.1.really.8.7.7
+ _ZN8vma_lwipC2Ev@Base 8.8.1.really.8.7.7
+ _ZN8vma_lwipD0Ev@Base 8.8.1.really.8.7.7
+ _ZN8vma_lwipD1Ev@Base 8.8.1.really.8.7.7
+ _ZN8vma_lwipD2Ev@Base 8.8.1.really.8.7.7
+ _ZN8vma_spec6to_strE10vma_spec_t@Base 8.8.1.really.8.7.7
+ _ZN8vma_spec8from_intEi10vma_spec_t@Base 8.8.1.really.8.7.7
+ _ZN8vma_spec8from_strEPKc10vma_spec_t@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry12get_dst_addrEv@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry12get_dst_portEv@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry12init_membersEv@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry12release_ringEv@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry12resolve_ringEv@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry12set_src_addrEv@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry13get_route_mtuEv@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry13resolve_neighEv@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry13update_rt_valEv@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry14set_bound_addrEj@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry15alloc_neigh_valE16transport_type_t@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry15get_net_dev_valEv@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry15prepare_to_sendER16vma_rate_limit_tbb@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry15resolve_net_devEb@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry16modify_ratelimitER16vma_rate_limit_t@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry16try_migrate_ringER9lock_base@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry17configure_headersEv@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry17do_ring_migrationER9lock_baseR21ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry18pass_buff_to_neighEPK5iovecRmt@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry18update_net_dev_valEv@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry19configure_ip_headerEP6headert@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry19return_buffers_poolEv@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry21conf_hdrs_and_snd_wqeEv@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry23alloc_transport_dep_resEv@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry23update_ring_alloc_logicEiR9lock_baseR21ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry24get_priority_by_tc_classEj@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry24set_so_bindtodevice_addrEj@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry26conf_l2_hdr_and_snd_wqe_ibEv@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry27conf_l2_hdr_and_snd_wqe_ethEv@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry28offloaded_according_to_rulesEv@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry8init_sgeEv@Base 8.8.1.really.8.7.7
+ _ZN9dst_entry9notify_cbEv@Base 8.8.1.really.8.7.7
+ _ZN9dst_entryC1EjttR11socket_dataR21ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN9dst_entryC2EjttR11socket_dataR21ring_alloc_logic_attr@Base 8.8.1.really.8.7.7
+ _ZN9dst_entryD0Ev@Base 8.8.1.really.8.7.7
+ _ZN9dst_entryD1Ev@Base 8.8.1.really.8.7.7
+ _ZN9dst_entryD2Ev@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info10get_fd_recEi@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info16statistics_printE13vlog_levels_t@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info18insert_epoll_eventEP13socket_fd_apij@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info18remove_epoll_eventEP13socket_fd_apij@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info21insert_epoll_event_cbEP13socket_fd_apij@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info21set_os_data_availableEv@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info23decrease_ring_ref_countEP4ring@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info23increase_ring_ref_countEP4ring@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info23remove_fd_from_epoll_osEi@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info25ring_request_notificationEm@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info27register_to_internal_threadEv@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info29ring_poll_and_process_elementEPmPv@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info30get_offloaded_fds_arr_and_sizeEPPiS1_@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info31get_and_unset_os_data_availableEv@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info3ctlEiiP11epoll_event@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info46ring_wait_for_notification_and_process_elementEPmPv@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info5statsEv@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info6add_fdEiP11epoll_event@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info6del_fdEib@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info6mod_fdEiP11epoll_event@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info8is_cq_fdEm@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info9clean_objEv@Base 8.8.1.really.8.7.7
+ _ZN9epfd_info9fd_closedEib@Base 8.8.1.really.8.7.7
+ _ZN9epfd_infoC1Eii@Base 8.8.1.really.8.7.7
+ _ZN9epfd_infoC2Eii@Base 8.8.1.really.8.7.7
+ _ZN9epfd_infoD0Ev@Base 8.8.1.really.8.7.7
+ _ZN9epfd_infoD1Ev@Base 8.8.1.really.8.7.7
+ _ZN9epfd_infoD2Ev@Base 8.8.1.really.8.7.7
+ _ZN9lock_spin4lockEv@Base 8.8.1.really.8.7.7
+ _ZN9lock_spin6unlockEv@Base 8.8.1.really.8.7.7
+ _ZN9lock_spin7trylockEv@Base 8.8.1.really.8.7.7
+ _ZN9lock_spinD0Ev@Base 8.8.1.really.8.7.7
+ _ZN9lock_spinD1Ev@Base 8.8.1.really.8.7.7
+ _ZN9lock_spinD2Ev@Base 8.8.1.really.8.7.7
+ _ZN9neigh_eth12is_deletableEv@Base 8.8.1.really.8.7.7
+ _ZN9neigh_eth13get_peer_infoEP9neigh_val@Base 8.8.1.really.8.7.7
+ _ZN9neigh_eth13post_send_arpEb@Base 8.8.1.really.8.7.7
+ _ZN9neigh_eth15priv_enter_initEv@Base 8.8.1.really.8.7.7
+ _ZN9neigh_eth16priv_enter_readyEv@Base 8.8.1.really.8.7.7
+ _ZN9neigh_eth17register_observerEPK8observer@Base 8.8.1.really.8.7.7
+ _ZN9neigh_eth21generate_ring_user_idEP6header@Base 8.8.1.really.8.7.7
+ _ZN9neigh_eth22prepare_to_send_packetEP6header@Base 8.8.1.really.8.7.7
+ _ZN9neigh_eth26priv_enter_init_resolutionEv@Base 8.8.1.really.8.7.7
+ _ZN9neigh_eth31priv_handle_neigh_is_l2_changedEPh@Base 8.8.1.really.8.7.7
+ _ZN9neigh_ethC1E9neigh_key@Base 8.8.1.really.8.7.7
+ _ZN9neigh_ethC2E9neigh_key@Base 8.8.1.really.8.7.7
+ _ZN9neigh_ethD0Ev@Base 8.8.1.really.8.7.7
+ _ZN9neigh_ethD1Ev@Base 8.8.1.really.8.7.7
+ _ZN9neigh_ethD2Ev@Base 8.8.1.really.8.7.7
+ _ZN9neigh_key4hashEv@Base 8.8.1.really.8.7.7
+ _ZN9neigh_keyD0Ev@Base 8.8.1.really.8.7.7
+ _ZN9neigh_keyD1Ev@Base 8.8.1.really.8.7.7
+ _ZN9neigh_keyD2Ev@Base 8.8.1.really.8.7.7
+ _ZN9neigh_val16zero_all_membersEv@Base 8.8.1.really.8.7.7
+ _ZN9poll_call10is_timeoutERK7timeval@Base 8.8.1.really.8.7.7
+ _ZN9poll_call13set_efd_readyEii@Base 8.8.1.really.8.7.7
+ _ZN9poll_call13set_rfd_readyEi@Base 8.8.1.really.8.7.7
+ _ZN9poll_call13set_wfd_readyEi@Base 8.8.1.really.8.7.7
+ _ZN9poll_call16copy_to_orig_fdsEv@Base 8.8.1.really.8.7.7
+ _ZN9poll_call16prepare_to_blockEv@Base 8.8.1.really.8.7.7
+ _ZN9poll_call23set_offloaded_efd_readyEii@Base 8.8.1.really.8.7.7
+ _ZN9poll_call23set_offloaded_rfd_readyEi@Base 8.8.1.really.8.7.7
+ _ZN9poll_call23set_offloaded_wfd_readyEi@Base 8.8.1.really.8.7.7
+ _ZN9poll_call4waitERK7timeval@Base 8.8.1.really.8.7.7
+ _ZN9poll_call7wait_osEb@Base 8.8.1.really.8.7.7
+ _ZN9poll_callC1EPiPN11io_mux_call16offloaded_mode_tES0_P6pollfdS5_miPK10__sigset_t@Base 8.8.1.really.8.7.7
+ _ZN9poll_callC2EPiPN11io_mux_call16offloaded_mode_tES0_P6pollfdS5_miPK10__sigset_t@Base 8.8.1.really.8.7.7
+ _ZN9poll_callD0Ev@Base 8.8.1.really.8.7.7
+ _ZN9poll_callD1Ev@Base 8.8.1.really.8.7.7
+ _ZN9poll_callD2Ev@Base 8.8.1.really.8.7.7
+ _ZN9qp_mgr_ib14prepare_ibv_qpER19ibv_qp_init_attr_ex@Base 8.8.1.really.8.7.7
+ _ZN9qp_mgr_ib17update_pkey_indexEv@Base 8.8.1.really.8.7.7
+ _ZN9qp_mgr_ib24modify_qp_to_ready_stateEv@Base 8.8.1.really.8.7.7
+ _ZN9qp_mgr_ibD0Ev@Base 8.8.1.really.8.7.7
+ _ZN9qp_mgr_ibD1Ev@Base 8.8.1.really.8.7.7
+ _ZN9qp_mgr_ibD2Ev@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond11attach_flowER10flow_tupleP13pkt_rcvr_sink@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond11detach_flowER10flow_tupleP13pkt_rcvr_sink@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond11generate_idEPhS0_ttjjtt@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond13slave_destroyEi@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond14mem_buf_tx_getEibi@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond15is_socketxtremeEv@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond16is_active_memberEP10ring_slavei@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond16modify_ratelimitER16vma_rate_limit_t@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond16send_lwip_bufferEiP11ibv_send_wr21vma_wr_tx_packet_attr@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond16send_ring_bufferEiP11ibv_send_wr21vma_wr_tx_packet_attr@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond17get_max_tx_inlineEv@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond17socketxtreme_pollEP16vma_completion_tji@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond18drain_and_proccessEv@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond18mem_buf_tx_releaseEP14mem_buf_desc_tbb@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond18popup_active_ringsEv@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond19adapt_cq_moderationEv@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond20reclaim_recv_buffersEP10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEE@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond20reclaim_recv_buffersEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond20request_notificationE9cq_type_tm@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond20update_max_tx_inlineEP10ring_slave@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond21devide_buffers_helperEP10vma_list_tI14mem_buf_desc_tXadL_ZNS1_18buffer_node_offsetEvEEES3_@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond21devide_buffers_helperEP14mem_buf_desc_tPS1_@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond21update_rx_channel_fdsEv@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond25get_hw_dummy_send_supportEiP11ibv_send_wr@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond27poll_and_process_element_rxEPmPv@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond28inc_tx_retransmissions_statsEi@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond38mem_buf_desc_return_single_to_owner_txEP14mem_buf_desc_t@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond41wait_for_notification_and_process_elementEiPmPv@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond6del_ecEP7ring_ec@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond6put_ecEP7ring_ec@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond7restartEv@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond8get_compEv@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond9is_memberEP10ring_slave@Base 8.8.1.really.8.7.7
+ _ZN9ring_bond9print_valEv@Base 8.8.1.really.8.7.7
+ _ZN9ring_bondC1Ei@Base 8.8.1.really.8.7.7
+ _ZN9ring_bondC2Ei@Base 8.8.1.really.8.7.7
+ _ZN9ring_bondD0Ev@Base 8.8.1.really.8.7.7
+ _ZN9ring_bondD1Ev@Base 8.8.1.really.8.7.7
+ _ZN9ring_bondD2Ev@Base 8.8.1.really.8.7.7
+ _ZN9route_val7set_mtuEj@Base 8.8.1.really.8.7.7
+ _ZN9route_val7set_strEv@Base 8.8.1.really.8.7.7
+ _ZN9route_val9print_valEv@Base 8.8.1.really.8.7.7
+ _ZN9route_valC1Ev@Base 8.8.1.really.8.7.7
+ _ZN9route_valC2Ev@Base 8.8.1.really.8.7.7
+ _ZN9route_valD0Ev@Base 8.8.1.really.8.7.7
+ _ZN9route_valD1Ev@Base 8.8.1.really.8.7.7
+ _ZN9route_valD2Ev@Base 8.8.1.really.8.7.7
+ _ZN9send_dataC1EPK9send_info@Base 8.8.1.really.8.7.7
+ _ZN9send_dataC2EPK9send_info@Base 8.8.1.really.8.7.7
+ _ZN9send_dataD0Ev@Base 8.8.1.really.8.7.7
+ _ZN9send_dataD1Ev@Base 8.8.1.really.8.7.7
+ _ZN9send_dataD2Ev@Base 8.8.1.really.8.7.7
+ _ZN9vma_errorC1EPKcS1_S1_ii@Base 8.8.1.really.8.7.7
+ _ZN9vma_errorC2EPKcS1_S1_ii@Base 8.8.1.really.8.7.7
+ _ZN9vma_errorD0Ev@Base 8.8.1.really.8.7.7
+ _ZN9vma_errorD1Ev@Base 8.8.1.really.8.7.7
+ _ZN9vma_errorD2Ev@Base 8.8.1.really.8.7.7
+ _ZNK10IPoIB_addr5cloneEv@Base 8.8.1.really.8.7.7
+ _ZNK10IPoIB_addr6to_strB5cxx11Ev@Base 8.8.1.really.8.7.7
+ _ZNK10L2_address7compareERKS_@Base 8.8.1.really.8.7.7
+ _ZNK10flow_tupleeqERKS_@Base 8.8.1.really.8.7.7
+ _ZNK10flow_tupleltERKS_@Base 8.8.1.really.8.7.7
+ _ZNK10ip_address6to_strB5cxx11Ev@Base 8.8.1.really.8.7.7
+ _ZNK10qp_mgr_eth12get_partitonEv@Base 8.8.1.really.8.7.7
+ _ZNK10ring_slave17get_num_resourcesEv@Base 8.8.1.really.8.7.7
+ _ZNK10rule_entry6to_strB5cxx11Ev@Base 8.8.1.really.8.7.7
+ _ZNK11neigh_entry12event_to_strENS_7event_tE@Base 8.8.1.really.8.7.7
+ _ZNK11neigh_entry12state_to_strENS_7state_tE@Base 8.8.1.really.8.7.7
+ _ZNK11neigh_entry6to_strB5cxx11Ev@Base 8.8.1.really.8.7.7
+ _ZNK11ring_simple17get_tx_channel_fdEv@Base 8.8.1.really.8.7.7
+ _ZNK11route_entry6to_strB5cxx11Ev@Base 8.8.1.really.8.7.7
+ _ZNK12igmp_handler22get_obs_transport_typeEv@Base 8.8.1.really.8.7.7
+ _ZNK12sockinfo_tcp20get_syn_received_pcbERK10flow_tuple@Base 8.8.1.really.8.7.7
+ _ZNK13dst_entry_tcp17get_protocol_typeEv@Base 8.8.1.really.8.7.7
+ _ZNK13dst_entry_udp17get_protocol_typeEv@Base 8.8.1.really.8.7.7
+ _ZNK13link_nl_event6to_strB5cxx11Ev@Base 8.8.1.really.8.7.7
+ _ZNK13netlink_event6to_strB5cxx11Ev@Base 8.8.1.really.8.7.7
+ _ZNK13socket_fd_api6get_fdEv@Base 8.8.1.really.8.7.7
+ _ZNK13vma_allocator19find_lkey_by_ib_ctxEP14ib_ctx_handler@Base 8.8.1.really.8.7.7
+ _ZNK13vma_allocator21find_ibv_mr_by_ib_ctxEP14ib_ctx_handler@Base 8.8.1.really.8.7.7
+ _ZNK14neigh_nl_event6to_strB5cxx11Ev@Base 8.8.1.really.8.7.7
+ _ZNK14route_nl_event6to_strB5cxx11Ev@Base 8.8.1.really.8.7.7
+ _ZNK15command_netlink6to_strB5cxx11Ev@Base 8.8.1.really.8.7.7
+ _ZNK17net_device_val_ib22get_obs_transport_typeEv@Base 8.8.1.really.8.7.7
+ _ZNK17netlink_link_info17get_operstate2strB5cxx11Ev@Base 8.8.1.really.8.7.7
+ _ZNK20net_device_table_mgr6to_strB5cxx11Ev@Base 8.8.1.really.8.7.7
+ _ZNK20route_rule_table_key6to_strB5cxx11Ev@Base 8.8.1.really.8.7.7
+ _ZNK24flow_tuple_with_local_ifeqERKS_@Base 8.8.1.really.8.7.7
+ _ZNK24flow_tuple_with_local_ifltERKS_@Base 8.8.1.really.8.7.7
+ _ZNK4ring17get_tx_channel_fdEv@Base 8.8.1.really.8.7.7
+ _ZNK5tostr6to_strB5cxx11Ev@Base 8.8.1.really.8.7.7
+ _ZNK6cq_mgr11prep_ibv_cqERi@Base 8.8.1.really.8.7.7
+ _ZNK6qp_mgr12get_partitonEv@Base 8.8.1.really.8.7.7
+ _ZNK6qp_mgr14get_pkey_indexEv@Base 8.8.1.really.8.7.7
+ _ZNK6qp_mgr15get_underly_qpnEv@Base 8.8.1.really.8.7.7
+ _ZNK8ETH_addr5cloneEv@Base 8.8.1.really.8.7.7
+ _ZNK8ETH_addr6to_strB5cxx11Ev@Base 8.8.1.really.8.7.7
+ _ZNK9dst_entry14get_flow_tupleEv@Base 8.8.1.really.8.7.7
+ _ZNK9dst_entry22get_obs_transport_typeEv@Base 8.8.1.really.8.7.7
+ _ZNK9neigh_key6to_strB5cxx11Ev@Base 8.8.1.really.8.7.7
+ _ZNK9neigh_keyeqERKS_@Base 8.8.1.really.8.7.7
+ _ZNK9qp_mgr_ib12get_partitonEv@Base 8.8.1.really.8.7.7
+ _ZNK9qp_mgr_ib14get_pkey_indexEv@Base 8.8.1.really.8.7.7
+ _ZNK9qp_mgr_ib15get_underly_qpnEv@Base 8.8.1.really.8.7.7
+ _ZNK9ring_bond17get_num_resourcesEv@Base 8.8.1.really.8.7.7
+ _ZNK9vma_error4whatEv@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableI10ip_addressSt4pairIKS1_P19cache_entry_subjectIS1_P14net_device_valEESaIS9_ESt10_Select1stIS9_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSH_20_Default_ranged_hashENSH_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS9_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableI20route_rule_table_keySt4pairIKS1_P19cache_entry_subjectIS1_P9route_valEESaIS9_ESt10_Select1stIS9_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSH_20_Default_ranged_hashENSH_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS9_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableI20route_rule_table_keySt4pairIKS1_P19cache_entry_subjectIS1_P9route_valEESaIS9_ESt10_Select1stIS9_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSH_20_Default_ranged_hashENSH_20_Prime_rehash_policyELb0ELb0ELb1EE5eraseERS3_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableI20route_rule_table_keySt4pairIKS1_P19cache_entry_subjectIS1_P9route_valEESaIS9_ESt10_Select1stIS9_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSH_20_Default_ranged_hashENSH_20_Prime_rehash_policyELb0ELb0ELb1EE9_M_rehashEm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableI20route_rule_table_keySt4pairIKS1_P19cache_entry_subjectIS1_PSt5dequeIP8rule_valSaIS7_EEEESaISD_ESt10_Select1stISD_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSL_20_Default_ranged_hashENSL_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKSD_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableI20route_rule_table_keySt4pairIKS1_P19cache_entry_subjectIS1_PSt5dequeIP8rule_valSaIS7_EEEESaISD_ESt10_Select1stISD_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSL_20_Default_ranged_hashENSL_20_Prime_rehash_policyELb0ELb0ELb1EE5eraseERS3_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableI20route_rule_table_keySt4pairIKS1_P19cache_entry_subjectIS1_PSt5dequeIP8rule_valSaIS7_EEEESaISD_ESt10_Select1stISD_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSL_20_Default_ranged_hashENSL_20_Prime_rehash_policyELb0ELb0ELb1EE9_M_rehashEm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableI24flow_tuple_with_local_ifSt4pairIKS1_P4ringESaIS6_ESt10_Select1stIS6_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSE_20_Default_ranged_hashENSE_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS6_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableI24flow_tuple_with_local_ifSt4pairIKS1_P4ringESaIS6_ESt10_Select1stIS6_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSE_20_Default_ranged_hashENSE_20_Prime_rehash_policyELb0ELb0ELb1EE4findERS3_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableI24flow_tuple_with_local_ifSt4pairIKS1_P4ringESaIS6_ESt10_Select1stIS6_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSE_20_Default_ranged_hashENSE_20_Prime_rehash_policyELb0ELb0ELb1EE9_M_rehashEm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableI9neigh_keySt4pairIKS1_P12igmp_handlerESaIS6_ESt10_Select1stIS6_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSE_20_Default_ranged_hashENSE_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS6_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableI9neigh_keySt4pairIKS1_P12igmp_handlerESaIS6_ESt10_Select1stIS6_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSE_20_Default_ranged_hashENSE_20_Prime_rehash_policyELb0ELb0ELb1EE9_M_rehashEm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableI9neigh_keySt4pairIKS1_P19cache_entry_subjectIS1_P9neigh_valEESaIS9_ESt10_Select1stIS9_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSH_20_Default_ranged_hashENSH_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS9_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableI9neigh_keySt4pairIKS1_P19cache_entry_subjectIS1_P9neigh_valEESaIS9_ESt10_Select1stIS9_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSH_20_Default_ranged_hashENSH_20_Prime_rehash_policyELb0ELb0ELb1EE9_M_rehashEm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableI9sock_addrSt4pairIKS1_P9dst_entryESaIS6_ESt10_Select1stIS6_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSE_20_Default_ranged_hashENSE_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS6_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableI9sock_addrSt4pairIKS1_P9dst_entryESaIS6_ESt10_Select1stIS6_ESt8equal_toIS1_ENS_4hashIS1_EENS_8__detail18_Mod_range_hashingENSE_20_Default_ranged_hashENSE_20_Prime_rehash_policyELb0ELb0ELb1EE4findERS3_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIP10ibv_deviceSt4pairIKS2_P14ib_ctx_handlerESaIS7_ESt10_Select1stIS7_ESt8equal_toIS2_ENS_4hashIS2_EENS_8__detail18_Mod_range_hashingENSF_20_Default_ranged_hashENSF_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS7_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIP14ib_ctx_handlerSt4pairIKS2_jESaIS5_ESt10_Select1stIS5_ESt8equal_toIS2_ENS_4hashIS2_EENS_8__detail18_Mod_range_hashingENSD_20_Default_ranged_hashENSD_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS5_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIP21ring_alloc_logic_attrSt4pairIKS2_S3_IP4ringiEESaIS8_ESt10_Select1stIS8_ES1_S1_NS_8__detail18_Mod_range_hashingENSC_20_Default_ranged_hashENSC_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS8_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIP21ring_alloc_logic_attrSt4pairIKS2_S3_IS2_iEESaIS6_ESt10_Select1stIS6_ES1_S1_NS_8__detail18_Mod_range_hashingENSA_20_Default_ranged_hashENSA_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS6_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIP21ring_alloc_logic_attrSt4pairIKS2_S3_IS2_iEESaIS6_ESt10_Select1stIS6_ES1_S1_NS_8__detail18_Mod_range_hashingENSA_20_Default_ranged_hashENSA_20_Prime_rehash_policyELb0ELb0ELb1EE5eraseERS4_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIP4ringSt4pairIKS2_P11ring_info_tESaIS7_ESt10_Select1stIS7_ESt8equal_toIS2_ENS_4hashIS2_EENS_8__detail18_Mod_range_hashingENSF_20_Default_ranged_hashENSF_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS7_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIP4ringSt4pairIKS2_iESaIS5_ESt10_Select1stIS5_ESt8equal_toIS2_ENS_4hashIS2_EENS_8__detail18_Mod_range_hashingENSD_20_Default_ranged_hashENSD_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS5_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIP8observerS2_SaIS2_ESt9_IdentityIS2_ESt8equal_toIS2_ENS_4hashIS2_EENS_8__detail18_Mod_range_hashingENSA_20_Default_ranged_hashENSA_20_Prime_rehash_policyELb0ELb1ELb1EE16_M_insert_bucketERKS2_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIiSt4pairIKi12epoll_fd_recESaIS4_ESt10_Select1stIS4_ESt8equal_toIiENS_4hashIiEENS_8__detail18_Mod_range_hashingENSC_20_Default_ranged_hashENSC_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS4_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIiSt4pairIKiP12ring_profileESaIS5_ESt10_Select1stIS5_ESt8equal_toIiENS_4hashIiEENS_8__detail18_Mod_range_hashingENSD_20_Default_ranged_hashENSD_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS5_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIiSt4pairIKiP14net_device_valESaIS5_ESt10_Select1stIS5_ESt8equal_toIiENS_4hashIiEENS_8__detail18_Mod_range_hashingENSD_20_Default_ranged_hashENSD_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS5_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIjSt4pairIKj22net_device_resources_tESaIS4_ESt10_Select1stIS4_ESt8equal_toIjENS_4hashIjEENS_8__detail18_Mod_range_hashingENSC_20_Default_ranged_hashENSC_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS4_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIjSt4pairIKjNS_13unordered_mapIjiNS_4hashIjEESt8equal_toIjESaIS1_IS2_iEEEEESaISB_ESt10_Select1stISB_ES7_S5_NS_8__detail18_Mod_range_hashingENSF_20_Default_ranged_hashENSF_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKSB_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIjSt4pairIKjNS_13unordered_mapIjiNS_4hashIjEESt8equal_toIjESaIS1_IS2_iEEEEESaISB_ESt10_Select1stISB_ES7_S5_NS_8__detail18_Mod_range_hashingENSF_20_Default_ranged_hashENSF_20_Prime_rehash_policyELb0ELb0ELb1EE5eraseERS2_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIjSt4pairIKjP11route_entryESaIS5_ESt10_Select1stIS5_ESt8equal_toIjENS_4hashIjEENS_8__detail18_Mod_range_hashingENSD_20_Default_ranged_hashENSD_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS5_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIjSt4pairIKjP14net_device_valESaIS5_ESt10_Select1stIS5_ESt8equal_toIjENS_4hashIjEENS_8__detail18_Mod_range_hashingENSD_20_Default_ranged_hashENSD_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS5_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIjSt4pairIKjP6ibv_mrESaIS5_ESt10_Select1stIS5_ESt8equal_toIjENS_4hashIjEENS_8__detail18_Mod_range_hashingENSD_20_Default_ranged_hashENSD_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS5_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIjSt4pairIKjiESaIS3_ESt10_Select1stIS3_ESt8equal_toIjENS_4hashIjEENS_8__detail18_Mod_range_hashingENSB_20_Default_ranged_hashENSB_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS3_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIjSt4pairIKjiESaIS3_ESt10_Select1stIS3_ESt8equal_toIjENS_4hashIjEENS_8__detail18_Mod_range_hashingENSB_20_Default_ranged_hashENSB_20_Prime_rehash_policyELb0ELb0ELb1EEC1ERKSF_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIjSt4pairIKjiESaIS3_ESt10_Select1stIS3_ESt8equal_toIjENS_4hashIjEENS_8__detail18_Mod_range_hashingENSB_20_Default_ranged_hashENSB_20_Prime_rehash_policyELb0ELb0ELb1EEC2ERKSF_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIjSt4pairIKjiESaIS3_ESt10_Select1stIS3_ESt8equal_toIjENS_4hashIjEENS_8__detail18_Mod_range_hashingENSB_20_Default_ranged_hashENSB_20_Prime_rehash_policyELb0ELb0ELb1EED1Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIjSt4pairIKjiESaIS3_ESt10_Select1stIS3_ESt8equal_toIjENS_4hashIjEENS_8__detail18_Mod_range_hashingENSB_20_Default_ranged_hashENSB_20_Prime_rehash_policyELb0ELb0ELb1EED2Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableIjSt4pairIKjjESaIS3_ESt10_Select1stIS3_ESt8equal_toIjENS_4hashIjEENS_8__detail18_Mod_range_hashingENSB_20_Default_ranged_hashENSB_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS3_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableImSt4pairIKm21counter_and_ibv_flowsESaIS4_ESt10_Select1stIS4_ESt8equal_toImENS_4hashImEENS_8__detail18_Mod_range_hashingENSC_20_Default_ranged_hashENSC_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS4_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableImSt4pairIKm21counter_and_ibv_flowsESaIS4_ESt10_Select1stIS4_ESt8equal_toImENS_4hashImEENS_8__detail18_Mod_range_hashingENSC_20_Default_ranged_hashENSC_20_Prime_rehash_policyELb0ELb0ELb1EE5eraseENSC_19_Hashtable_iteratorIS4_Lb0ELb0EEE@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableImSt4pairIKm21counter_and_ibv_flowsESaIS4_ESt10_Select1stIS4_ESt8equal_toImENS_4hashImEENS_8__detail18_Mod_range_hashingENSC_20_Default_ranged_hashENSC_20_Prime_rehash_policyELb0ELb0ELb1EED1Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableImSt4pairIKm21counter_and_ibv_flowsESaIS4_ESt10_Select1stIS4_ESt8equal_toImENS_4hashImEENS_8__detail18_Mod_range_hashingENSC_20_Default_ranged_hashENSC_20_Prime_rehash_policyELb0ELb0ELb1EED2Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableImSt4pairIKmSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS9_EEESaISC_ESt10_Select1stISC_ESt8equal_toImENS_4hashImEENS_8__detail18_Mod_range_hashingENSK_20_Default_ranged_hashENSK_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKSC_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr110_HashtableImSt4pairIKmiESaIS3_ESt10_Select1stIS3_ESt8equal_toImENS_4hashImEENS_8__detail18_Mod_range_hashingENSB_20_Default_ranged_hashENSB_20_Prime_rehash_policyELb0ELb0ELb1EE16_M_insert_bucketERKS3_mm@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr18__detail9_Map_baseI20route_rule_table_keySt4pairIKS2_P19cache_entry_subjectIS2_P9route_valEESt10_Select1stISA_ELb1ENS_10_HashtableIS2_SA_SaISA_ESC_St8equal_toIS2_ENS_4hashIS2_EENS0_18_Mod_range_hashingENS0_20_Default_ranged_hashENS0_20_Prime_rehash_policyELb0ELb0ELb1EEEEixERS4_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr18__detail9_Map_baseI20route_rule_table_keySt4pairIKS2_P19cache_entry_subjectIS2_PSt5dequeIP8rule_valSaIS8_EEEESt10_Select1stISE_ELb1ENS_10_HashtableIS2_SE_SaISE_ESG_St8equal_toIS2_ENS_4hashIS2_EENS0_18_Mod_range_hashingENS0_20_Default_ranged_hashENS0_20_Prime_rehash_policyELb0ELb0ELb1EEEEixERS4_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr18__detail9_Map_baseI24flow_tuple_with_local_ifSt4pairIKS2_P4ringESt10_Select1stIS7_ELb1ENS_10_HashtableIS2_S7_SaIS7_ES9_St8equal_toIS2_ENS_4hashIS2_EENS0_18_Mod_range_hashingENS0_20_Default_ranged_hashENS0_20_Prime_rehash_policyELb0ELb0ELb1EEEEixERS4_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr18__detail9_Map_baseI9sock_addrSt4pairIKS2_P9dst_entryESt10_Select1stIS7_ELb1ENS_10_HashtableIS2_S7_SaIS7_ES9_St8equal_toIS2_ENS_4hashIS2_EENS0_18_Mod_range_hashingENS0_20_Default_ranged_hashENS0_20_Prime_rehash_policyELb0ELb0ELb1EEEEixERS4_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr18__detail9_Map_baseIP21ring_alloc_logic_attrSt4pairIKS3_S4_IP4ringiEESt10_Select1stIS9_ELb1ENS_10_HashtableIS3_S9_SaIS9_ESB_S2_S2_NS0_18_Mod_range_hashingENS0_20_Default_ranged_hashENS0_20_Prime_rehash_policyELb0ELb0ELb1EEEEixERS5_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr18__detail9_Map_baseIP21ring_alloc_logic_attrSt4pairIKS3_S4_IS3_iEESt10_Select1stIS7_ELb1ENS_10_HashtableIS3_S7_SaIS7_ES9_S2_S2_NS0_18_Mod_range_hashingENS0_20_Default_ranged_hashENS0_20_Prime_rehash_policyELb0ELb0ELb1EEEEixERS5_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr18__detail9_Map_baseIiSt4pairIKi12epoll_fd_recESt10_Select1stIS5_ELb1ENS_10_HashtableIiS5_SaIS5_ES7_St8equal_toIiENS_4hashIiEENS0_18_Mod_range_hashingENS0_20_Default_ranged_hashENS0_20_Prime_rehash_policyELb0ELb0ELb1EEEEixERS3_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr18__detail9_Map_baseIjSt4pairIKjNS_13unordered_mapIjiNS_4hashIjEESt8equal_toIjESaIS2_IS3_iEEEEESt10_Select1stISC_ELb1ENS_10_HashtableIjSC_SaISC_ESE_S8_S6_NS0_18_Mod_range_hashingENS0_20_Default_ranged_hashENS0_20_Prime_rehash_policyELb0ELb0ELb1EEEEixERS3_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr18__detail9_Map_baseImSt4pairIKm21counter_and_ibv_flowsESt10_Select1stIS5_ELb1ENS_10_HashtableImS5_SaIS5_ES7_St8equal_toImENS_4hashImEENS0_18_Mod_range_hashingENS0_20_Default_ranged_hashENS0_20_Prime_rehash_policyELb0ELb0ELb1EEEEixERS3_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt3tr18__detail9_Map_baseImSt4pairIKmSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaISA_EEESt10_Select1stISD_ELb1ENS_10_HashtableImSD_SaISD_ESF_St8equal_toImENS_4hashImEENS0_18_Mod_range_hashingENS0_20_Default_ranged_hashENS0_20_Prime_rehash_policyELb0ELb0ELb1EEEEixERS3_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt5dequeI12reg_action_tSaIS0_EE16_M_push_back_auxIJRKS0_EEEvDpOT_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt5dequeIP15neigh_send_dataSaIS1_EE16_M_push_back_auxIJRKS1_EEEvDpOT_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt5dequeIP15socket_option_tSaIS1_EE16_M_push_back_auxIJS1_EEEvDpOT_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt5dequeIiSaIiEE16_M_push_back_auxIJiEEEvDpOT_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt6vectorI11flow_sink_tSaIS0_EE17_M_realloc_insertIJRKS0_EEEvN9__gnu_cxx17__normal_iteratorIPS0_S2_EEDpOT_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt6vectorIN12sockinfo_udp13port_socket_tESaIS1_EE17_M_realloc_insertIJRKS1_EEEvN9__gnu_cxx17__normal_iteratorIPS1_S3_EEDpOT_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE17_M_realloc_insertIJS5_EEEvN9__gnu_cxx17__normal_iteratorIPS5_S7_EEDpOT_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED1Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED2Ev@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt6vectorIP10ring_slaveSaIS1_EE17_M_realloc_insertIJRKS1_EEEvN9__gnu_cxx17__normal_iteratorIPS1_S3_EEDpOT_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt6vectorIP10slave_dataSaIS1_EE17_M_realloc_insertIJRKS1_EEEvN9__gnu_cxx17__normal_iteratorIPS1_S3_EEDpOT_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt6vectorIP18attach_flow_data_tSaIS1_EE17_M_realloc_insertIJRKS1_EEEvN9__gnu_cxx17__normal_iteratorIPS1_S3_EEDpOT_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt6vectorIP7ip_dataSaIS1_EE17_M_realloc_insertIJRKS1_EEEvN9__gnu_cxx17__normal_iteratorIPS1_S3_EEDpOT_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt6vectorIP8ibv_flowSaIS1_EE17_M_realloc_insertIJRKS1_EEEvN9__gnu_cxx17__normal_iteratorIPS1_S3_EEDpOT_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeI10flow_tupleSt4pairIKS0_P7tcp_pcbESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE24_M_get_insert_unique_posERS2_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeI10flow_tupleSt4pairIKS0_P7tcp_pcbESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS5_ERS2_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeI10flow_tupleSt4pairIKS0_P7tcp_pcbESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE8_M_eraseEPSt13_Rb_tree_nodeIS5_E@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeI13ip_frag_key_tSt4pairIKS0_P12ip_frag_descESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE24_M_get_insert_unique_posERS2_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeI13ip_frag_key_tSt4pairIKS0_P12ip_frag_descESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS5_ERS2_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeI13ip_frag_key_tSt4pairIKS0_P12ip_frag_descESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE4findERS2_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeI13ip_frag_key_tSt4pairIKS0_P12ip_frag_descESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE8_M_eraseEPSt13_Rb_tree_nodeIS5_E@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeI20e_netlink_event_typeSt4pairIKS0_P7subjectESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE8_M_eraseEPSt13_Rb_tree_nodeIS5_E@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeI8peer_keySt4pairIKS0_10vma_list_tI14mem_buf_desc_tXadL_ZNS4_18buffer_node_offsetEvEEEESt10_Select1stIS6_ESt4lessIS0_ESaIS6_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS6_ERS2_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeI8peer_keySt4pairIKS0_10vma_list_tI14mem_buf_desc_tXadL_ZNS4_18buffer_node_offsetEvEEEESt10_Select1stIS6_ESt4lessIS0_ESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeIP10ring_slaveSt4pairIKS1_P14mem_buf_desc_tESt10_Select1stIS6_ESt4lessIS1_ESaIS6_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS6_ERS3_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeIP10ring_slaveSt4pairIKS1_P14mem_buf_desc_tESt10_Select1stIS6_ESt4lessIS1_ESaIS6_EE7_M_copyINSC_11_Alloc_nodeEEEPSt13_Rb_tree_nodeIS6_EPKSG_PSt18_Rb_tree_node_baseRT_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeIP10ring_slaveSt4pairIKS1_P14mem_buf_desc_tESt10_Select1stIS6_ESt4lessIS1_ESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeIP21event_handler_ibverbsSt4pairIKS1_15ibverbs_event_tESt10_Select1stIS5_ESt4lessIS1_ESaIS5_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS5_ERS3_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeIP21event_handler_ibverbsSt4pairIKS1_15ibverbs_event_tESt10_Select1stIS5_ESt4lessIS1_ESaIS5_EE7_M_copyINSB_20_Reuse_or_alloc_nodeEEEPSt13_Rb_tree_nodeIS5_EPKSF_PSt18_Rb_tree_node_baseRT_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeIP21event_handler_ibverbsSt4pairIKS1_15ibverbs_event_tESt10_Select1stIS5_ESt4lessIS1_ESaIS5_EE8_M_eraseEPSt13_Rb_tree_nodeIS5_E@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeIP21event_handler_ibverbsSt4pairIKS1_15ibverbs_event_tESt10_Select1stIS5_ESt4lessIS1_ESaIS5_EEaSERKSB_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeIP7tcp_pcbSt4pairIKS1_iESt10_Select1stIS4_ESt4lessIS1_ESaIS4_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS4_ERS3_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeIP7tcp_pcbSt4pairIKS1_iESt10_Select1stIS4_ESt4lessIS1_ESaIS4_EE5eraseERS3_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeIP7tcp_pcbSt4pairIKS1_iESt10_Select1stIS4_ESt4lessIS1_ESaIS4_EE8_M_eraseEPSt13_Rb_tree_nodeIS4_E@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeIPvSt4pairIKS0_P21event_handler_rdma_cmESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS5_ERS2_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeIPvSt4pairIKS0_P21event_handler_rdma_cmESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE7_M_copyINSB_20_Reuse_or_alloc_nodeEEEPSt13_Rb_tree_nodeIS5_EPKSF_PSt18_Rb_tree_node_baseRT_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeIPvSt4pairIKS0_P21event_handler_rdma_cmESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EE8_M_eraseEPSt13_Rb_tree_nodeIS5_E@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeIPvSt4pairIKS0_P21event_handler_rdma_cmESt10_Select1stIS5_ESt4lessIS0_ESaIS5_EEaSERKSB_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeIPvSt4pairIKS0_S1_IS0_iEESt10_Select1stIS4_ESt4lessIS0_ESaIS4_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS4_ERS2_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeIPvSt4pairIKS0_S1_IS0_iEESt10_Select1stIS4_ESt4lessIS0_ESaIS4_EE8_M_eraseEPSt13_Rb_tree_nodeIS4_E@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeIiSt4pairIKi12event_data_tESt10_Select1stIS3_ESt4lessIiESaIS3_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS3_ERS1_@Base 8.8.1.really.8.7.7
+ (optional=templinst)_ZNSt8_Rb_treeIiSt4pairIKi12event_data_tESt10_Select1stIS3_ESt4lessIiESaIS3_EE8_M_eraseEPSt13_Rb_tree_nodeIS3_E@Base 8.8.1.really.8.7.7
+ _ZTI10IPoIB_addr@Base 8.8.1.really.8.7.7
+ _ZTI10L2_address@Base 8.8.1.really.8.7.7
+ _ZTI10flow_tuple@Base 8.8.1.really.8.7.7
+ _ZTI10ip_address@Base 8.8.1.really.8.7.7
+ _ZTI10lock_mutex@Base 8.8.1.really.8.7.7
+ _ZTI10qp_mgr_eth@Base 8.8.1.really.8.7.7
+ _ZTI10ring_slave@Base 8.8.1.really.8.7.7
+ _ZTI10rule_entry@Base 8.8.1.really.8.7.7
+ _ZTI11cpu_manager@Base 8.8.1.really.8.7.7
+ _ZTI11cq_mgr_mlx5@Base 8.8.1.really.8.7.7
+ _ZTI11io_mux_call@Base 8.8.1.really.8.7.7
+ _ZTI11neigh_entry@Base 8.8.1.really.8.7.7
+ _ZTI11ring_simple@Base 8.8.1.really.8.7.7
+ _ZTI11route_entry@Base 8.8.1.really.8.7.7
+ _ZTI11select_call@Base 8.8.1.really.8.7.7
+ _ZTI11wakeup_pipe@Base 8.8.1.really.8.7.7
+ _ZTI12data_updater@Base 8.8.1.really.8.7.7
+ _ZTI12igmp_handler@Base 8.8.1.really.8.7.7
+ _ZTI12neigh_ib_val@Base 8.8.1.really.8.7.7
+ _ZTI12ring_bond_ib@Base 8.8.1.really.8.7.7
+ _ZTI12sockinfo_tcp@Base 8.8.1.really.8.7.7
+ _ZTI12sockinfo_udp@Base 8.8.1.really.8.7.7
+ _ZTI12tcp_seg_pool@Base 8.8.1.really.8.7.7
+ _ZTI12timers_group@Base 8.8.1.really.8.7.7
+ _ZTI13cleanable_obj@Base 8.8.1.really.8.7.7
+ _ZTI13dst_entry_tcp@Base 8.8.1.really.8.7.7
+ _ZTI13dst_entry_udp@Base 8.8.1.really.8.7.7
+ _ZTI13fd_collection@Base 8.8.1.really.8.7.7
+ _ZTI13link_nl_event@Base 8.8.1.really.8.7.7
+ _ZTI13neigh_eth_val@Base 8.8.1.really.8.7.7
+ _ZTI13netlink_event@Base 8.8.1.really.8.7.7
+ _ZTI13pkt_rcvr_sink@Base 8.8.1.really.8.7.7
+ _ZTI13ring_bond_eth@Base 8.8.1.really.8.7.7
+ _ZTI13socket_fd_api@Base 8.8.1.really.8.7.7
+ _ZTI13timer_handler@Base 8.8.1.really.8.7.7
+ _ZTI13vma_exception@Base 8.8.1.really.8.7.7
+ _ZTI14cache_observer@Base 8.8.1.really.8.7.7
+ _ZTI14ib_ctx_handler@Base 8.8.1.really.8.7.7
+ _ZTI14neigh_nl_event@Base 8.8.1.really.8.7.7
+ _ZTI14neigh_observer@Base 8.8.1.really.8.7.7
+ _ZTI14net_device_val@Base 8.8.1.really.8.7.7
+ _ZTI14rfs_uc_tcp_gro@Base 8.8.1.really.8.7.7
+ _ZTI14route_nl_event@Base 8.8.1.really.8.7.7
+ _ZTI14rule_table_mgr@Base 8.8.1.really.8.7.7
+ _ZTI14time_converter@Base 8.8.1.really.8.7.7
+ _ZTI15cache_table_mgrI10ip_addressP14net_device_valE@Base 8.8.1.really.8.7.7
+ _ZTI15cache_table_mgrI20route_rule_table_keyP9route_valE@Base 8.8.1.really.8.7.7
+ _ZTI15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE@Base 8.8.1.really.8.7.7
+ _ZTI15cache_table_mgrI9neigh_keyP9neigh_valE@Base 8.8.1.really.8.7.7
+ _ZTI15command_netlink@Base 8.8.1.really.8.7.7
+ _ZTI15cq_channel_info@Base 8.8.1.really.8.7.7
+ _ZTI15epoll_wait_call@Base 8.8.1.really.8.7.7
+ _ZTI15ip_frag_manager@Base 8.8.1.really.8.7.7
+ _ZTI15neigh_send_data@Base 8.8.1.really.8.7.7
+ _ZTI15neigh_send_info@Base 8.8.1.really.8.7.7
+ _ZTI15neigh_table_mgr@Base 8.8.1.really.8.7.7
+ _ZTI15netlink_wrapper@Base 8.8.1.really.8.7.7
+ _ZTI15pkt_sndr_source@Base 8.8.1.really.8.7.7
+ _ZTI15qp_mgr_eth_mlx5@Base 8.8.1.really.8.7.7
+ _ZTI15route_table_mgr@Base 8.8.1.really.8.7.7
+ _ZTI16dst_entry_udp_mc@Base 8.8.1.really.8.7.7
+ _ZTI16net_device_entry@Base 8.8.1.really.8.7.7
+ _ZTI16ring_bond_netvsc@Base 8.8.1.really.8.7.7
+ _ZTI16wqe_send_handler@Base 8.8.1.really.8.7.7
+ _ZTI17net_device_val_ib@Base 8.8.1.really.8.7.7
+ _ZTI17netlink_link_info@Base 8.8.1.really.8.7.7
+ _ZTI17stats_data_reader@Base 8.8.1.really.8.7.7
+ _ZTI18header_pcp_updater@Base 8.8.1.really.8.7.7
+ _ZTI18header_tos_updater@Base 8.8.1.really.8.7.7
+ _ZTI18header_ttl_updater@Base 8.8.1.really.8.7.7
+ _ZTI18neigh_ib_broadcast@Base 8.8.1.really.8.7.7
+ _ZTI18net_device_val_eth@Base 8.8.1.really.8.7.7
+ _ZTI18netlink_neigh_info@Base 8.8.1.really.8.7.7
+ _ZTI18netlink_socket_mgrI8rule_valE@Base 8.8.1.really.8.7.7
+ _ZTI18netlink_socket_mgrI9route_valE@Base 8.8.1.really.8.7.7
+ _ZTI18time_converter_ptp@Base 8.8.1.really.8.7.7
+ _ZTI19cache_entry_subjectI10ip_addressP14net_device_valE@Base 8.8.1.really.8.7.7
+ _ZTI19cache_entry_subjectI20route_rule_table_keyP9route_valE@Base 8.8.1.really.8.7.7
+ _ZTI19cache_entry_subjectI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE@Base 8.8.1.really.8.7.7
+ _ZTI19cache_entry_subjectI9neigh_keyP9neigh_valE@Base 8.8.1.really.8.7.7
+ _ZTI19lock_spin_recursive@Base 8.8.1.really.8.7.7
+ _ZTI19vma_unsupported_api@Base 8.8.1.really.8.7.7
+ _ZTI19wqe_send_ib_handler@Base 8.8.1.really.8.7.7
+ _ZTI20lock_mutex_recursive@Base 8.8.1.really.8.7.7
+ _ZTI20net_device_table_mgr@Base 8.8.1.really.8.7.7
+ _ZTI20route_rule_table_key@Base 8.8.1.really.8.7.7
+ _ZTI21event_handler_ibverbs@Base 8.8.1.really.8.7.7
+ _ZTI21event_handler_manager@Base 8.8.1.really.8.7.7
+ _ZTI21event_handler_rdma_cm@Base 8.8.1.really.8.7.7
+ _ZTI21tcp_timers_collection@Base 8.8.1.really.8.7.7
+ _ZTI21time_converter_ib_ctx@Base 8.8.1.really.8.7.7
+ _ZTI21vlogger_timer_handler@Base 8.8.1.really.8.7.7
+ _ZTI24flow_tuple_with_local_if@Base 8.8.1.really.8.7.7
+ _ZTI24ring_alloc_logic_updater@Base 8.8.1.really.8.7.7
+ _ZTI3rfs@Base 8.8.1.really.8.7.7
+ _ZTI4ring@Base 8.8.1.really.8.7.7
+ _ZTI5agent@Base 8.8.1.really.8.7.7
+ _ZTI5event@Base 8.8.1.really.8.7.7
+ _ZTI5tostr@Base 8.8.1.really.8.7.7
+ _ZTI6cq_mgr@Base 8.8.1.really.8.7.7
+ _ZTI6header@Base 8.8.1.really.8.7.7
+ _ZTI6qp_mgr@Base 8.8.1.really.8.7.7
+ _ZTI6rfs_mc@Base 8.8.1.really.8.7.7
+ _ZTI6rfs_uc@Base 8.8.1.really.8.7.7
+ _ZTI6wakeup@Base 8.8.1.really.8.7.7
+ _ZTI7command@Base 8.8.1.really.8.7.7
+ _ZTI7gro_mgr@Base 8.8.1.really.8.7.7
+ _ZTI7ring_ib@Base 8.8.1.really.8.7.7
+ _ZTI7subject@Base 8.8.1.really.8.7.7
+ _ZTI8ETH_addr@Base 8.8.1.really.8.7.7
+ _ZTI8hash_mapI19flow_spec_tcp_key_tP3rfsE@Base 8.8.1.really.8.7.7
+ _ZTI8hash_mapI19flow_spec_udp_key_tP3rfsE@Base 8.8.1.really.8.7.7
+ _ZTI8igmp_mgr@Base 8.8.1.really.8.7.7
+ _ZTI8neigh_ib@Base 8.8.1.really.8.7.7
+ _ZTI8observer@Base 8.8.1.really.8.7.7
+ _ZTI8pipeinfo@Base 8.8.1.really.8.7.7
+ _ZTI8ring_eth@Base 8.8.1.really.8.7.7
+ _ZTI8ring_tap@Base 8.8.1.really.8.7.7
+ _ZTI8rule_val@Base 8.8.1.really.8.7.7
+ _ZTI8sockinfo@Base 8.8.1.really.8.7.7
+ _ZTI8vma_lwip@Base 8.8.1.really.8.7.7
+ _ZTI9dst_entry@Base 8.8.1.really.8.7.7
+ _ZTI9epfd_info@Base 8.8.1.really.8.7.7
+ _ZTI9lock_base@Base 8.8.1.really.8.7.7
+ _ZTI9lock_spin@Base 8.8.1.really.8.7.7
+ _ZTI9neigh_eth@Base 8.8.1.really.8.7.7
+ _ZTI9neigh_key@Base 8.8.1.really.8.7.7
+ _ZTI9neigh_val@Base 8.8.1.really.8.7.7
+ _ZTI9poll_call@Base 8.8.1.really.8.7.7
+ _ZTI9qp_mgr_ib@Base 8.8.1.really.8.7.7
+ _ZTI9ring_bond@Base 8.8.1.really.8.7.7
+ _ZTI9route_val@Base 8.8.1.really.8.7.7
+ _ZTI9send_data@Base 8.8.1.really.8.7.7
+ _ZTI9send_info@Base 8.8.1.really.8.7.7
+ _ZTI9vma_error@Base 8.8.1.really.8.7.7
+ _ZTIN11io_mux_call8io_errorE@Base 8.8.1.really.8.7.7
+ _ZTS10IPoIB_addr@Base 8.8.1.really.8.7.7
+ _ZTS10L2_address@Base 8.8.1.really.8.7.7
+ _ZTS10flow_tuple@Base 8.8.1.really.8.7.7
+ _ZTS10ip_address@Base 8.8.1.really.8.7.7
+ _ZTS10lock_mutex@Base 8.8.1.really.8.7.7
+ _ZTS10qp_mgr_eth@Base 8.8.1.really.8.7.7
+ _ZTS10ring_slave@Base 8.8.1.really.8.7.7
+ _ZTS10rule_entry@Base 8.8.1.really.8.7.7
+ _ZTS11cpu_manager@Base 8.8.1.really.8.7.7
+ _ZTS11cq_mgr_mlx5@Base 8.8.1.really.8.7.7
+ _ZTS11io_mux_call@Base 8.8.1.really.8.7.7
+ _ZTS11neigh_entry@Base 8.8.1.really.8.7.7
+ _ZTS11ring_simple@Base 8.8.1.really.8.7.7
+ _ZTS11route_entry@Base 8.8.1.really.8.7.7
+ _ZTS11select_call@Base 8.8.1.really.8.7.7
+ _ZTS11wakeup_pipe@Base 8.8.1.really.8.7.7
+ _ZTS12data_updater@Base 8.8.1.really.8.7.7
+ _ZTS12igmp_handler@Base 8.8.1.really.8.7.7
+ _ZTS12neigh_ib_val@Base 8.8.1.really.8.7.7
+ _ZTS12ring_bond_ib@Base 8.8.1.really.8.7.7
+ _ZTS12sockinfo_tcp@Base 8.8.1.really.8.7.7
+ _ZTS12sockinfo_udp@Base 8.8.1.really.8.7.7
+ _ZTS12tcp_seg_pool@Base 8.8.1.really.8.7.7
+ _ZTS12timers_group@Base 8.8.1.really.8.7.7
+ _ZTS13cleanable_obj@Base 8.8.1.really.8.7.7
+ _ZTS13dst_entry_tcp@Base 8.8.1.really.8.7.7
+ _ZTS13dst_entry_udp@Base 8.8.1.really.8.7.7
+ _ZTS13fd_collection@Base 8.8.1.really.8.7.7
+ _ZTS13link_nl_event@Base 8.8.1.really.8.7.7
+ _ZTS13neigh_eth_val@Base 8.8.1.really.8.7.7
+ _ZTS13netlink_event@Base 8.8.1.really.8.7.7
+ _ZTS13pkt_rcvr_sink@Base 8.8.1.really.8.7.7
+ _ZTS13ring_bond_eth@Base 8.8.1.really.8.7.7
+ _ZTS13socket_fd_api@Base 8.8.1.really.8.7.7
+ _ZTS13timer_handler@Base 8.8.1.really.8.7.7
+ _ZTS13vma_exception@Base 8.8.1.really.8.7.7
+ _ZTS14cache_observer@Base 8.8.1.really.8.7.7
+ _ZTS14ib_ctx_handler@Base 8.8.1.really.8.7.7
+ _ZTS14neigh_nl_event@Base 8.8.1.really.8.7.7
+ _ZTS14neigh_observer@Base 8.8.1.really.8.7.7
+ _ZTS14net_device_val@Base 8.8.1.really.8.7.7
+ _ZTS14rfs_uc_tcp_gro@Base 8.8.1.really.8.7.7
+ _ZTS14route_nl_event@Base 8.8.1.really.8.7.7
+ _ZTS14rule_table_mgr@Base 8.8.1.really.8.7.7
+ _ZTS14time_converter@Base 8.8.1.really.8.7.7
+ _ZTS15cache_table_mgrI10ip_addressP14net_device_valE@Base 8.8.1.really.8.7.7
+ _ZTS15cache_table_mgrI20route_rule_table_keyP9route_valE@Base 8.8.1.really.8.7.7
+ _ZTS15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE@Base 8.8.1.really.8.7.7
+ _ZTS15cache_table_mgrI9neigh_keyP9neigh_valE@Base 8.8.1.really.8.7.7
+ _ZTS15command_netlink@Base 8.8.1.really.8.7.7
+ _ZTS15cq_channel_info@Base 8.8.1.really.8.7.7
+ _ZTS15epoll_wait_call@Base 8.8.1.really.8.7.7
+ _ZTS15ip_frag_manager@Base 8.8.1.really.8.7.7
+ _ZTS15neigh_send_data@Base 8.8.1.really.8.7.7
+ _ZTS15neigh_send_info@Base 8.8.1.really.8.7.7
+ _ZTS15neigh_table_mgr@Base 8.8.1.really.8.7.7
+ _ZTS15netlink_wrapper@Base 8.8.1.really.8.7.7
+ _ZTS15pkt_sndr_source@Base 8.8.1.really.8.7.7
+ _ZTS15qp_mgr_eth_mlx5@Base 8.8.1.really.8.7.7
+ _ZTS15route_table_mgr@Base 8.8.1.really.8.7.7
+ _ZTS16dst_entry_udp_mc@Base 8.8.1.really.8.7.7
+ _ZTS16net_device_entry@Base 8.8.1.really.8.7.7
+ _ZTS16ring_bond_netvsc@Base 8.8.1.really.8.7.7
+ _ZTS16wqe_send_handler@Base 8.8.1.really.8.7.7
+ _ZTS17net_device_val_ib@Base 8.8.1.really.8.7.7
+ _ZTS17netlink_link_info@Base 8.8.1.really.8.7.7
+ _ZTS17stats_data_reader@Base 8.8.1.really.8.7.7
+ _ZTS18header_pcp_updater@Base 8.8.1.really.8.7.7
+ _ZTS18header_tos_updater@Base 8.8.1.really.8.7.7
+ _ZTS18header_ttl_updater@Base 8.8.1.really.8.7.7
+ _ZTS18neigh_ib_broadcast@Base 8.8.1.really.8.7.7
+ _ZTS18net_device_val_eth@Base 8.8.1.really.8.7.7
+ _ZTS18netlink_neigh_info@Base 8.8.1.really.8.7.7
+ _ZTS18netlink_socket_mgrI8rule_valE@Base 8.8.1.really.8.7.7
+ _ZTS18netlink_socket_mgrI9route_valE@Base 8.8.1.really.8.7.7
+ _ZTS18time_converter_ptp@Base 8.8.1.really.8.7.7
+ _ZTS19cache_entry_subjectI10ip_addressP14net_device_valE@Base 8.8.1.really.8.7.7
+ _ZTS19cache_entry_subjectI20route_rule_table_keyP9route_valE@Base 8.8.1.really.8.7.7
+ _ZTS19cache_entry_subjectI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE@Base 8.8.1.really.8.7.7
+ _ZTS19cache_entry_subjectI9neigh_keyP9neigh_valE@Base 8.8.1.really.8.7.7
+ _ZTS19lock_spin_recursive@Base 8.8.1.really.8.7.7
+ _ZTS19vma_unsupported_api@Base 8.8.1.really.8.7.7
+ _ZTS19wqe_send_ib_handler@Base 8.8.1.really.8.7.7
+ _ZTS20lock_mutex_recursive@Base 8.8.1.really.8.7.7
+ _ZTS20net_device_table_mgr@Base 8.8.1.really.8.7.7
+ _ZTS20route_rule_table_key@Base 8.8.1.really.8.7.7
+ _ZTS21event_handler_ibverbs@Base 8.8.1.really.8.7.7
+ _ZTS21event_handler_manager@Base 8.8.1.really.8.7.7
+ _ZTS21event_handler_rdma_cm@Base 8.8.1.really.8.7.7
+ _ZTS21tcp_timers_collection@Base 8.8.1.really.8.7.7
+ _ZTS21time_converter_ib_ctx@Base 8.8.1.really.8.7.7
+ _ZTS21vlogger_timer_handler@Base 8.8.1.really.8.7.7
+ _ZTS24flow_tuple_with_local_if@Base 8.8.1.really.8.7.7
+ _ZTS24ring_alloc_logic_updater@Base 8.8.1.really.8.7.7
+ _ZTS3rfs@Base 8.8.1.really.8.7.7
+ _ZTS4ring@Base 8.8.1.really.8.7.7
+ _ZTS5agent@Base 8.8.1.really.8.7.7
+ _ZTS5event@Base 8.8.1.really.8.7.7
+ _ZTS5tostr@Base 8.8.1.really.8.7.7
+ _ZTS6cq_mgr@Base 8.8.1.really.8.7.7
+ _ZTS6header@Base 8.8.1.really.8.7.7
+ _ZTS6qp_mgr@Base 8.8.1.really.8.7.7
+ _ZTS6rfs_mc@Base 8.8.1.really.8.7.7
+ _ZTS6rfs_uc@Base 8.8.1.really.8.7.7
+ _ZTS6wakeup@Base 8.8.1.really.8.7.7
+ _ZTS7command@Base 8.8.1.really.8.7.7
+ _ZTS7gro_mgr@Base 8.8.1.really.8.7.7
+ _ZTS7ring_ib@Base 8.8.1.really.8.7.7
+ _ZTS7subject@Base 8.8.1.really.8.7.7
+ _ZTS8ETH_addr@Base 8.8.1.really.8.7.7
+ _ZTS8hash_mapI19flow_spec_tcp_key_tP3rfsE@Base 8.8.1.really.8.7.7
+ _ZTS8hash_mapI19flow_spec_udp_key_tP3rfsE@Base 8.8.1.really.8.7.7
+ _ZTS8igmp_mgr@Base 8.8.1.really.8.7.7
+ _ZTS8neigh_ib@Base 8.8.1.really.8.7.7
+ _ZTS8observer@Base 8.8.1.really.8.7.7
+ _ZTS8pipeinfo@Base 8.8.1.really.8.7.7
+ _ZTS8ring_eth@Base 8.8.1.really.8.7.7
+ _ZTS8ring_tap@Base 8.8.1.really.8.7.7
+ _ZTS8rule_val@Base 8.8.1.really.8.7.7
+ _ZTS8sockinfo@Base 8.8.1.really.8.7.7
+ _ZTS8vma_lwip@Base 8.8.1.really.8.7.7
+ _ZTS9dst_entry@Base 8.8.1.really.8.7.7
+ _ZTS9epfd_info@Base 8.8.1.really.8.7.7
+ _ZTS9lock_base@Base 8.8.1.really.8.7.7
+ _ZTS9lock_spin@Base 8.8.1.really.8.7.7
+ _ZTS9neigh_eth@Base 8.8.1.really.8.7.7
+ _ZTS9neigh_key@Base 8.8.1.really.8.7.7
+ _ZTS9neigh_val@Base 8.8.1.really.8.7.7
+ _ZTS9poll_call@Base 8.8.1.really.8.7.7
+ _ZTS9qp_mgr_ib@Base 8.8.1.really.8.7.7
+ _ZTS9ring_bond@Base 8.8.1.really.8.7.7
+ _ZTS9route_val@Base 8.8.1.really.8.7.7
+ _ZTS9send_data@Base 8.8.1.really.8.7.7
+ _ZTS9send_info@Base 8.8.1.really.8.7.7
+ _ZTS9vma_error@Base 8.8.1.really.8.7.7
+ _ZTSN11io_mux_call8io_errorE@Base 8.8.1.really.8.7.7
+ _ZTV10IPoIB_addr@Base 8.8.1.really.8.7.7
+ _ZTV10L2_address@Base 8.8.1.really.8.7.7
+ _ZTV10flow_tuple@Base 8.8.1.really.8.7.7
+ _ZTV10ip_address@Base 8.8.1.really.8.7.7
+ _ZTV10lock_mutex@Base 8.8.1.really.8.7.7
+ _ZTV10qp_mgr_eth@Base 8.8.1.really.8.7.7
+ _ZTV10ring_slave@Base 8.8.1.really.8.7.7
+ _ZTV10rule_entry@Base 8.8.1.really.8.7.7
+ _ZTV11cpu_manager@Base 8.8.1.really.8.7.7
+ _ZTV11cq_mgr_mlx5@Base 8.8.1.really.8.7.7
+ _ZTV11io_mux_call@Base 8.8.1.really.8.7.7
+ _ZTV11neigh_entry@Base 8.8.1.really.8.7.7
+ _ZTV11ring_simple@Base 8.8.1.really.8.7.7
+ _ZTV11route_entry@Base 8.8.1.really.8.7.7
+ _ZTV11select_call@Base 8.8.1.really.8.7.7
+ _ZTV11wakeup_pipe@Base 8.8.1.really.8.7.7
+ _ZTV12igmp_handler@Base 8.8.1.really.8.7.7
+ _ZTV12neigh_ib_val@Base 8.8.1.really.8.7.7
+ _ZTV12ring_bond_ib@Base 8.8.1.really.8.7.7
+ _ZTV12sockinfo_tcp@Base 8.8.1.really.8.7.7
+ _ZTV12sockinfo_udp@Base 8.8.1.really.8.7.7
+ _ZTV12tcp_seg_pool@Base 8.8.1.really.8.7.7
+ _ZTV13cleanable_obj@Base 8.8.1.really.8.7.7
+ _ZTV13dst_entry_tcp@Base 8.8.1.really.8.7.7
+ _ZTV13dst_entry_udp@Base 8.8.1.really.8.7.7
+ _ZTV13fd_collection@Base 8.8.1.really.8.7.7
+ _ZTV13link_nl_event@Base 8.8.1.really.8.7.7
+ _ZTV13neigh_eth_val@Base 8.8.1.really.8.7.7
+ _ZTV13netlink_event@Base 8.8.1.really.8.7.7
+ _ZTV13pkt_rcvr_sink@Base 8.8.1.really.8.7.7
+ _ZTV13ring_bond_eth@Base 8.8.1.really.8.7.7
+ _ZTV13socket_fd_api@Base 8.8.1.really.8.7.7
+ _ZTV13timer_handler@Base 8.8.1.really.8.7.7
+ _ZTV13vma_exception@Base 8.8.1.really.8.7.7
+ _ZTV14cache_observer@Base 8.8.1.really.8.7.7
+ _ZTV14ib_ctx_handler@Base 8.8.1.really.8.7.7
+ _ZTV14neigh_nl_event@Base 8.8.1.really.8.7.7
+ _ZTV14net_device_val@Base 8.8.1.really.8.7.7
+ _ZTV14rfs_uc_tcp_gro@Base 8.8.1.really.8.7.7
+ _ZTV14route_nl_event@Base 8.8.1.really.8.7.7
+ _ZTV14rule_table_mgr@Base 8.8.1.really.8.7.7
+ _ZTV14time_converter@Base 8.8.1.really.8.7.7
+ _ZTV15cache_table_mgrI10ip_addressP14net_device_valE@Base 8.8.1.really.8.7.7
+ _ZTV15cache_table_mgrI20route_rule_table_keyP9route_valE@Base 8.8.1.really.8.7.7
+ _ZTV15cache_table_mgrI20route_rule_table_keyPSt5dequeIP8rule_valSaIS3_EEE@Base 8.8.1.really.8.7.7
+ _ZTV15cache_table_mgrI9neigh_keyP9neigh_valE@Base 8.8.1.really.8.7.7
+ _ZTV15command_netlink@Base 8.8.1.really.8.7.7
+ _ZTV15cq_channel_info@Base 8.8.1.really.8.7.7
+ _ZTV15epoll_wait_call@Base 8.8.1.really.8.7.7
+ _ZTV15ip_frag_manager@Base 8.8.1.really.8.7.7
+ _ZTV15neigh_send_data@Base 8.8.1.really.8.7.7
+ _ZTV15neigh_send_info@Base 8.8.1.really.8.7.7
+ _ZTV15neigh_table_mgr@Base 8.8.1.really.8.7.7
+ _ZTV15netlink_wrapper@Base 8.8.1.really.8.7.7
+ _ZTV15pkt_sndr_source@Base 8.8.1.really.8.7.7
+ _ZTV15qp_mgr_eth_mlx5@Base 8.8.1.really.8.7.7
+ _ZTV15route_table_mgr@Base 8.8.1.really.8.7.7
+ _ZTV16dst_entry_udp_mc@Base 8.8.1.really.8.7.7
+ _ZTV16net_device_entry@Base 8.8.1.really.8.7.7
+ _ZTV16ring_bond_netvsc@Base 8.8.1.really.8.7.7
+ _ZTV16wqe_send_handler@Base 8.8.1.really.8.7.7
+ _ZTV17net_device_val_ib@Base 8.8.1.really.8.7.7
+ _ZTV17netlink_link_info@Base 8.8.1.really.8.7.7
+ _ZTV17stats_data_reader@Base 8.8.1.really.8.7.7
+ _ZTV18header_pcp_updater@Base 8.8.1.really.8.7.7
+ _ZTV18header_tos_updater@Base 8.8.1.really.8.7.7
+ _ZTV18header_ttl_updater@Base 8.8.1.really.8.7.7
+ _ZTV18neigh_ib_broadcast@Base 8.8.1.really.8.7.7
+ _ZTV18net_device_val_eth@Base 8.8.1.really.8.7.7
+ _ZTV18netlink_neigh_info@Base 8.8.1.really.8.7.7
+ _ZTV18netlink_socket_mgrI8rule_valE@Base 8.8.1.really.8.7.7
+ _ZTV18netlink_socket_mgrI9route_valE@Base 8.8.1.really.8.7.7
+ _ZTV18time_converter_ptp@Base 8.8.1.really.8.7.7
+ _ZTV19lock_spin_recursive@Base 8.8.1.really.8.7.7
+ _ZTV19vma_unsupported_api@Base 8.8.1.really.8.7.7
+ _ZTV19wqe_send_ib_handler@Base 8.8.1.really.8.7.7
+ _ZTV20lock_mutex_recursive@Base 8.8.1.really.8.7.7
+ _ZTV20net_device_table_mgr@Base 8.8.1.really.8.7.7
+ _ZTV20route_rule_table_key@Base 8.8.1.really.8.7.7
+ _ZTV21event_handler_manager@Base 8.8.1.really.8.7.7
+ _ZTV21tcp_timers_collection@Base 8.8.1.really.8.7.7
+ _ZTV21time_converter_ib_ctx@Base 8.8.1.really.8.7.7
+ _ZTV21vlogger_timer_handler@Base 8.8.1.really.8.7.7
+ _ZTV24flow_tuple_with_local_if@Base 8.8.1.really.8.7.7
+ _ZTV24ring_alloc_logic_updater@Base 8.8.1.really.8.7.7
+ _ZTV3rfs@Base 8.8.1.really.8.7.7
+ _ZTV4ring@Base 8.8.1.really.8.7.7
+ _ZTV5agent@Base 8.8.1.really.8.7.7
+ _ZTV6cq_mgr@Base 8.8.1.really.8.7.7
+ _ZTV6header@Base 8.8.1.really.8.7.7
+ _ZTV6qp_mgr@Base 8.8.1.really.8.7.7
+ _ZTV6rfs_mc@Base 8.8.1.really.8.7.7
+ _ZTV6rfs_uc@Base 8.8.1.really.8.7.7
+ _ZTV6wakeup@Base 8.8.1.really.8.7.7
+ _ZTV7gro_mgr@Base 8.8.1.really.8.7.7
+ _ZTV7ring_ib@Base 8.8.1.really.8.7.7
+ _ZTV7subject@Base 8.8.1.really.8.7.7
+ _ZTV8ETH_addr@Base 8.8.1.really.8.7.7
+ _ZTV8hash_mapI19flow_spec_tcp_key_tP3rfsE@Base 8.8.1.really.8.7.7
+ _ZTV8hash_mapI19flow_spec_udp_key_tP3rfsE@Base 8.8.1.really.8.7.7
+ _ZTV8igmp_mgr@Base 8.8.1.really.8.7.7
+ _ZTV8neigh_ib@Base 8.8.1.really.8.7.7
+ _ZTV8pipeinfo@Base 8.8.1.really.8.7.7
+ _ZTV8ring_eth@Base 8.8.1.really.8.7.7
+ _ZTV8ring_tap@Base 8.8.1.really.8.7.7
+ _ZTV8rule_val@Base 8.8.1.really.8.7.7
+ _ZTV8sockinfo@Base 8.8.1.really.8.7.7
+ _ZTV8vma_lwip@Base 8.8.1.really.8.7.7
+ _ZTV9dst_entry@Base 8.8.1.really.8.7.7
+ _ZTV9epfd_info@Base 8.8.1.really.8.7.7
+ _ZTV9lock_spin@Base 8.8.1.really.8.7.7
+ _ZTV9neigh_eth@Base 8.8.1.really.8.7.7
+ _ZTV9neigh_key@Base 8.8.1.really.8.7.7
+ _ZTV9poll_call@Base 8.8.1.really.8.7.7
+ _ZTV9qp_mgr_ib@Base 8.8.1.really.8.7.7
+ _ZTV9ring_bond@Base 8.8.1.really.8.7.7
+ _ZTV9route_val@Base 8.8.1.really.8.7.7
+ _ZTV9send_data@Base 8.8.1.really.8.7.7
+ _ZTV9vma_error@Base 8.8.1.really.8.7.7
+ _ZTVN11io_mux_call8io_errorE@Base 8.8.1.really.8.7.7
+ _ZZ14gettimefromtscP8timespecE8ts_start@Base 8.8.1.really.8.7.7
+ _ZZ14gettimefromtscP8timespecE9tsc_start@Base 8.8.1.really.8.7.7
+ _ZZN11mce_sys_var8instanceEvE12the_instance@Base 8.8.1.really.8.7.7
+ _ZZN15sysctl_reader_t12get_tcp_rmemEbE7tcp_mem@Base 8.8.1.really.8.7.7
+ _ZZN15sysctl_reader_t12get_tcp_wmemEbE7tcp_mem@Base 8.8.1.really.8.7.7
+ _ZZN15sysctl_reader_t16get_net_ipv4_ttlEbE3val@Base 8.8.1.really.8.7.7
+ _ZZN15sysctl_reader_t18get_listen_maxconnEbE3val@Base 8.8.1.really.8.7.7
+ _ZZN15sysctl_reader_t21get_net_core_rmem_maxEbE3val@Base 8.8.1.really.8.7.7
+ _ZZN15sysctl_reader_t21get_net_core_wmem_maxEbE3val@Base 8.8.1.really.8.7.7
+ _ZZN15sysctl_reader_t22get_tcp_window_scalingEbE3val@Base 8.8.1.really.8.7.7
+ _ZZN15sysctl_reader_t23get_igmp_max_membershipEbE3val@Base 8.8.1.really.8.7.7
+ _ZZN15sysctl_reader_t23get_tcp_max_syn_backlogEbE3val@Base 8.8.1.really.8.7.7
+ _ZZN15sysctl_reader_t27get_net_ipv4_tcp_timestampsEbE3val@Base 8.8.1.really.8.7.7
+ _ZZN15sysctl_reader_t30get_igmp_max_source_membershipEbE3val@Base 8.8.1.really.8.7.7
+ _ZZN15sysctl_reader_t8instanceEvE12the_instance@Base 8.8.1.really.8.7.7
+ _ZZN8sockinfo10set_eventsEmE19enable_socketxtreme@Base 8.8.1.really.8.7.7
+ __instance_list@Base 8.8.1.really.8.7.7
+ __read_chk@Base 8.8.1.really.8.7.7
+ __recv_chk@Base 8.8.1.really.8.7.7
+ __recvfrom_chk@Base 8.8.1.really.8.7.7
+ __res_iclose@Base 8.8.1.really.8.7.7
+ __vma_config_empty@Base 8.8.1.really.8.7.7
+ __vma_config_line_num@Base 8.8.1.really.8.7.7
+ __vma_dump_address_port_rule_config_state@Base 8.8.1.really.8.7.7
+ __vma_free_resources@Base 8.8.1.really.8.7.7
+ __vma_match_by_program@Base 8.8.1.really.8.7.7
+ __vma_match_program_name@Base 8.8.1.really.8.7.7
+ __vma_match_tcp_client@Base 8.8.1.really.8.7.7
+ __vma_match_tcp_server@Base 8.8.1.really.8.7.7
+ __vma_match_udp_connect@Base 8.8.1.really.8.7.7
+ __vma_match_udp_receiver@Base 8.8.1.really.8.7.7
+ __vma_match_udp_sender@Base 8.8.1.really.8.7.7
+ __vma_match_user_defined_id@Base 8.8.1.really.8.7.7
+ __vma_min_level@Base 8.8.1.really.8.7.7
+ __vma_parse_config_file@Base 8.8.1.really.8.7.7
+ __vma_parse_config_line@Base 8.8.1.really.8.7.7
+ __vma_print_conf_file@Base 8.8.1.really.8.7.7
+ __vma_sockaddr_to_vma@Base 8.8.1.really.8.7.7
+ accept4@Base 8.8.1.really.8.7.7
+ accept@Base 8.8.1.really.8.7.7
+ bind@Base 8.8.1.really.8.7.7
+ cc_ack_received@Base 8.8.1.really.8.7.7
+ cc_cong_signal@Base 8.8.1.really.8.7.7
+ cc_conn_init@Base 8.8.1.really.8.7.7
+ cc_destroy@Base 8.8.1.really.8.7.7
+ cc_init@Base 8.8.1.really.8.7.7
+ cc_post_recovery@Base 8.8.1.really.8.7.7
+ close@Base 8.8.1.really.8.7.7
+ connect@Base 8.8.1.really.8.7.7
+ creat@Base 8.8.1.really.8.7.7
+ cubic_cc_algo@Base 8.8.1.really.8.7.7
+ daemon@Base 8.8.1.really.8.7.7
+ desc_base@Base 8.8.1.really.8.7.7
+ desc_free_list_count@Base 8.8.1.really.8.7.7
+ desc_free_list_head@Base 8.8.1.really.8.7.7
+ dup2@Base 8.8.1.really.8.7.7
+ dup@Base 8.8.1.really.8.7.7
+ enable_ts_option@Base 8.8.1.really.8.7.7
+ enable_wnd_scale@Base 8.8.1.really.8.7.7
+ epoll_create1@Base 8.8.1.really.8.7.7
+ epoll_create@Base 8.8.1.really.8.7.7
+ epoll_ctl@Base 8.8.1.really.8.7.7
+ epoll_pwait@Base 8.8.1.really.8.7.7
+ epoll_wait@Base 8.8.1.really.8.7.7
+ external_ip_output@Base 8.8.1.really.8.7.7
+ external_ip_route_mtu@Base 8.8.1.really.8.7.7
+ external_tcp_seg_alloc@Base 8.8.1.really.8.7.7
+ external_tcp_seg_free@Base 8.8.1.really.8.7.7
+ external_tcp_state_observer@Base 8.8.1.really.8.7.7
+ external_tcp_tx_pbuf_alloc@Base 8.8.1.really.8.7.7
+ external_tcp_tx_pbuf_free@Base 8.8.1.really.8.7.7
+ fcntl@Base 8.8.1.really.8.7.7
+ fork@Base 8.8.1.really.8.7.7
+ from_int@Base 8.8.1.really.8.7.7
+ from_str@Base 8.8.1.really.8.7.7
+ g_act_prev@Base 8.8.1.really.8.7.7
+ g_b_exit@Base 8.8.1.really.8.7.7
+ g_buffer_pool_rx@Base 8.8.1.really.8.7.7
+ g_buffer_pool_tx@Base 8.8.1.really.8.7.7
+ g_cpu_manager@Base 8.8.1.really.8.7.7
+ g_init_global_ctors_done@Base 8.8.1.really.8.7.7
+ g_init_ibv_fork_done@Base 8.8.1.really.8.7.7
+ g_is_forked_child@Base 8.8.1.really.8.7.7
+ g_last_zero_polling_time@Base 8.8.1.really.8.7.7
+ g_n_internal_thread_id@Base 8.8.1.really.8.7.7
+ g_n_last_checked_index@Base 8.8.1.really.8.7.7
+ g_n_thread_cpu_core@Base 8.8.1.really.8.7.7
+ g_p_agent@Base 8.8.1.really.8.7.7
+ g_p_event_handler_manager@Base 8.8.1.really.8.7.7
+ g_p_fd_collection@Base 8.8.1.really.8.7.7
+ g_p_ib_ctx_handler_collection@Base 8.8.1.really.8.7.7
+ g_p_igmp_mgr@Base 8.8.1.really.8.7.7
+ g_p_ip_frag_manager@Base 8.8.1.really.8.7.7
+ g_p_lwip@Base 8.8.1.really.8.7.7
+ g_p_neigh_table_mgr@Base 8.8.1.really.8.7.7
+ g_p_net_device_table_mgr@Base 8.8.1.really.8.7.7
+ g_p_netlink_handler@Base 8.8.1.really.8.7.7
+ g_p_ring_profile@Base 8.8.1.really.8.7.7
+ g_p_route_table_mgr@Base 8.8.1.really.8.7.7
+ g_p_rule_table_mgr@Base 8.8.1.really.8.7.7
+ g_p_stats_data_reader@Base 8.8.1.really.8.7.7
+ g_p_vlogger_details@Base 8.8.1.really.8.7.7
+ g_p_vlogger_level@Base 8.8.1.really.8.7.7
+ g_p_vlogger_timer_handler@Base 8.8.1.really.8.7.7
+ g_poll_stats@Base 8.8.1.really.8.7.7
+ g_polling_time_usec@Base 8.8.1.really.8.7.7
+ g_select_stats@Base 8.8.1.really.8.7.7
+ g_si_tscv_last_poll@Base 8.8.1.really.8.7.7
+ g_sighandler@Base 8.8.1.really.8.7.7
+ g_stats_file@Base 8.8.1.really.8.7.7
+ g_tcp_seg_pool@Base 8.8.1.really.8.7.7
+ g_tcp_timers_collection@Base 8.8.1.really.8.7.7
+ g_vlogger_cb@Base 8.8.1.really.8.7.7
+ g_vlogger_details@Base 8.8.1.really.8.7.7
+ g_vlogger_fd@Base 8.8.1.really.8.7.7
+ g_vlogger_file@Base 8.8.1.really.8.7.7
+ g_vlogger_level@Base 8.8.1.really.8.7.7
+ g_vlogger_log_in_colors@Base 8.8.1.really.8.7.7
+ g_vlogger_module_name@Base 8.8.1.really.8.7.7
+ g_vlogger_usec_on_startup@Base 8.8.1.really.8.7.7
+ get_color@Base 8.8.1.really.8.7.7
+ getpeername@Base 8.8.1.really.8.7.7
+ getsockname@Base 8.8.1.really.8.7.7
+ getsockopt@Base 8.8.1.really.8.7.7
+ gettid@Base 8.8.1.really.8.7.7
+ hole_base@Base 8.8.1.really.8.7.7
+ hole_free_list_count@Base 8.8.1.really.8.7.7
+ hole_free_list_head@Base 8.8.1.really.8.7.7
+ ioctl@Base 8.8.1.really.8.7.7
+ libvma_yy_create_buffer@Base 8.8.1.really.8.7.7
+ libvma_yy_delete_buffer@Base 8.8.1.really.8.7.7
+ libvma_yy_flex_debug@Base 8.8.1.really.8.7.7
+ libvma_yy_flush_buffer@Base 8.8.1.really.8.7.7
+ libvma_yy_scan_buffer@Base 8.8.1.really.8.7.7
+ libvma_yy_scan_bytes@Base 8.8.1.really.8.7.7
+ libvma_yy_scan_string@Base 8.8.1.really.8.7.7
+ libvma_yy_switch_to_buffer@Base 8.8.1.really.8.7.7
+ libvma_yyalloc@Base 8.8.1.really.8.7.7
+ libvma_yychar@Base 8.8.1.really.8.7.7
+ libvma_yyerror@Base 8.8.1.really.8.7.7
+ libvma_yyfree@Base 8.8.1.really.8.7.7
+ libvma_yyget_debug@Base 8.8.1.really.8.7.7
+ libvma_yyget_in@Base 8.8.1.really.8.7.7
+ libvma_yyget_leng@Base 8.8.1.really.8.7.7
+ libvma_yyget_lineno@Base 8.8.1.really.8.7.7
+ libvma_yyget_out@Base 8.8.1.really.8.7.7
+ libvma_yyget_text@Base 8.8.1.really.8.7.7
+ libvma_yyin@Base 8.8.1.really.8.7.7
+ libvma_yyleng@Base 8.8.1.really.8.7.7
+ libvma_yylex@Base 8.8.1.really.8.7.7
+ libvma_yylex_destroy@Base 8.8.1.really.8.7.7
+ libvma_yylineno@Base 8.8.1.really.8.7.7
+ libvma_yylval@Base 8.8.1.really.8.7.7
+ libvma_yynerrs@Base 8.8.1.really.8.7.7
+ libvma_yyout@Base 8.8.1.really.8.7.7
+ libvma_yyparse@Base 8.8.1.really.8.7.7
+ libvma_yypop_buffer_state@Base 8.8.1.really.8.7.7
+ libvma_yypush_buffer_state@Base 8.8.1.really.8.7.7
+ libvma_yyrealloc@Base 8.8.1.really.8.7.7
+ libvma_yyrestart@Base 8.8.1.really.8.7.7
+ libvma_yyset_debug@Base 8.8.1.really.8.7.7
+ libvma_yyset_in@Base 8.8.1.really.8.7.7
+ libvma_yyset_lineno@Base 8.8.1.really.8.7.7
+ libvma_yyset_out@Base 8.8.1.really.8.7.7
+ libvma_yytext@Base 8.8.1.really.8.7.7
+ libvma_yywrap@Base 8.8.1.really.8.7.7
+ link_event_callback@Base 8.8.1.really.8.7.7
+ listen@Base 8.8.1.really.8.7.7
+ lwip_cc_algo@Base 8.8.1.really.8.7.7
+ lwip_cc_algo_module@Base 8.8.1.really.8.7.7
+ lwip_init@Base 8.8.1.really.8.7.7
+ lwip_tcp_mss@Base 8.8.1.really.8.7.7
+ main_destroy@Base 8.8.1.really.8.7.7
+ main_init@Base 8.8.1.really.8.7.7
+ neigh_event_callback@Base 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to cache_table_mgr<ip_address, net_device_val*>::handle_timer_expired(void*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to cache_table_mgr<ip_address, net_device_val*>::~cache_table_mgr()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to cache_table_mgr<neigh_key, neigh_val*>::handle_timer_expired(void*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to cache_table_mgr<neigh_key, neigh_val*>::~cache_table_mgr()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to cache_table_mgr<route_rule_table_key, route_val*>::handle_timer_expired(void*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to cache_table_mgr<route_rule_table_key, route_val*>::~cache_table_mgr()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to cache_table_mgr<route_rule_table_key, std::deque<rule_val*, std::allocator<rule_val*> >*>::handle_timer_expired(void*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to cache_table_mgr<route_rule_table_key, std::deque<rule_val*, std::allocator<rule_val*> >*>::~cache_table_mgr()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to command_netlink::handle_timer_expired(void*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to command_netlink::~command_netlink()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to dst_entry::get_obs_transport_type() const@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to dst_entry::notify_cb()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to dst_entry::~dst_entry()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to dst_entry_tcp::~dst_entry_tcp()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to dst_entry_udp::~dst_entry_udp()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to dst_entry_udp_mc::~dst_entry_udp_mc()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to epfd_info::clean_obj()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to epfd_info::~epfd_info()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to fd_collection::handle_timer_expired(void*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to fd_collection::~fd_collection()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to igmp_handler::clean_obj()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to igmp_handler::get_obs_transport_type() const@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to igmp_handler::~igmp_handler()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to ip_frag_manager::handle_timer_expired(void*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to ip_frag_manager::~ip_frag_manager()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to neigh_entry::clean_obj()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to neigh_entry::handle_event_rdma_cm_cb(rdma_cm_event*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to neigh_entry::handle_timer_expired(void*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to neigh_entry::to_str[abi:cxx11]() const@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to neigh_entry::~neigh_entry()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to neigh_eth::~neigh_eth()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to neigh_ib::handle_event_ibverbs_cb(void*, void*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to neigh_ib::handle_timer_expired(void*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to neigh_ib::~neigh_ib()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to neigh_ib_broadcast::~neigh_ib_broadcast()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to neigh_table_mgr::notify_cb(event*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to neigh_table_mgr::~neigh_table_mgr()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to net_device_entry::handle_event_ibverbs_cb(void*, void*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to net_device_entry::handle_timer_expired(void*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to net_device_entry::~net_device_entry()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to net_device_table_mgr::handle_timer_expired(void*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to net_device_table_mgr::notify_cb(event*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to net_device_table_mgr::~net_device_table_mgr()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to net_device_val_ib::get_obs_transport_type() const@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to net_device_val_ib::~net_device_val_ib()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to pipeinfo::handle_timer_expired(void*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to pipeinfo::~pipeinfo()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to route_entry::notify_cb()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to route_entry::to_str[abi:cxx11]() const@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to route_entry::~route_entry()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to route_table_mgr::create_new_entry(route_rule_table_key, observer const*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to route_table_mgr::notify_cb(event*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to route_table_mgr::~route_table_mgr()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to rule_entry::to_str[abi:cxx11]() const@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to rule_entry::~rule_entry()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to rule_table_mgr::create_new_entry(route_rule_table_key, observer const*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to rule_table_mgr::~rule_table_mgr()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to sockinfo::do_wakeup()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to sockinfo::rx_add_ring_cb(flow_tuple_with_local_if&, ring*, bool)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to sockinfo::rx_del_ring_cb(flow_tuple_with_local_if&, ring*, bool)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to sockinfo::~sockinfo()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to sockinfo_tcp::handle_timer_expired(void*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to sockinfo_tcp::rx_input_cb(mem_buf_desc_t*, void*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to sockinfo_tcp::~sockinfo_tcp()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to sockinfo_udp::rx_add_ring_cb(flow_tuple_with_local_if&, ring*, bool)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to sockinfo_udp::rx_del_ring_cb(flow_tuple_with_local_if&, ring*, bool)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to sockinfo_udp::rx_input_cb(mem_buf_desc_t*, void*)@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to sockinfo_udp::~sockinfo_udp()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to tcp_timers_collection::clean_obj()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to tcp_timers_collection::~tcp_timers_collection()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to time_converter::clean_obj()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to time_converter_ib_ctx::~time_converter_ib_ctx()@Base" 8.8.1.really.8.7.7
+ (c++)"non-virtual thunk to time_converter_ptp::~time_converter_ptp()@Base" 8.8.1.really.8.7.7
+ none_cc_algo@Base 8.8.1.really.8.7.7
+ open@Base 8.8.1.really.8.7.7
+ orig_os_api@Base 8.8.1.really.8.7.7
+ pbuf_cat@Base 8.8.1.really.8.7.7
+ pbuf_clen@Base 8.8.1.really.8.7.7
+ pbuf_free@Base 8.8.1.really.8.7.7
+ pbuf_header@Base 8.8.1.really.8.7.7
+ pbuf_realloc@Base 8.8.1.really.8.7.7
+ pbuf_ref@Base 8.8.1.really.8.7.7
+ pbuf_split_64k@Base 8.8.1.really.8.7.7
+ pipe@Base 8.8.1.really.8.7.7
+ poll@Base 8.8.1.really.8.7.7
+ ppoll@Base 8.8.1.really.8.7.7
+ printed_bpool_limit_info@Base 8.8.1.really.8.7.7
+ printed_cq_limit_info@Base 8.8.1.really.8.7.7
+ printed_ring_limit_info@Base 8.8.1.really.8.7.7
+ printed_sock_limit_info@Base 8.8.1.really.8.7.7
+ printf_backtrace@Base 8.8.1.really.8.7.7
+ pselect@Base 8.8.1.really.8.7.7
+ rcv_wnd_scale@Base 8.8.1.really.8.7.7
+ read@Base 8.8.1.really.8.7.7
+ readv@Base 8.8.1.really.8.7.7
+ recv@Base 8.8.1.really.8.7.7
+ recvfrom@Base 8.8.1.really.8.7.7
+ recvmmsg@Base 8.8.1.really.8.7.7
+ recvmsg@Base 8.8.1.really.8.7.7
+ register_ip_output@Base 8.8.1.really.8.7.7
+ register_ip_route_mtu@Base 8.8.1.really.8.7.7
+ register_sys_now@Base 8.8.1.really.8.7.7
+ register_tcp_seg_alloc@Base 8.8.1.really.8.7.7
+ register_tcp_seg_free@Base 8.8.1.really.8.7.7
+ register_tcp_state_observer@Base 8.8.1.really.8.7.7
+ register_tcp_tx_pbuf_alloc@Base 8.8.1.really.8.7.7
+ register_tcp_tx_pbuf_free@Base 8.8.1.really.8.7.7
+ route_event_callback@Base 8.8.1.really.8.7.7
+ select@Base 8.8.1.really.8.7.7
+ send@Base 8.8.1.really.8.7.7
+ sendfile64@Base 8.8.1.really.8.7.7
+ sendfile@Base 8.8.1.really.8.7.7
+ sendmmsg@Base 8.8.1.really.8.7.7
+ sendmsg@Base 8.8.1.really.8.7.7
+ sendto@Base 8.8.1.really.8.7.7
+ setsockopt@Base 8.8.1.really.8.7.7
+ shutdown@Base 8.8.1.really.8.7.7
+ sigaction@Base 8.8.1.really.8.7.7
+ signal@Base 8.8.1.really.8.7.7
+ sock_redirect_exit@Base 8.8.1.really.8.7.7
+ sock_redirect_lib_load_constructor@Base 8.8.1.really.8.7.7
+ sock_redirect_lib_load_destructor@Base 8.8.1.really.8.7.7
+ sock_redirect_main@Base 8.8.1.really.8.7.7
+ socket@Base 8.8.1.really.8.7.7
+ socketpair@Base 8.8.1.really.8.7.7
+ sys_now@Base 8.8.1.really.8.7.7
+ tcp_backoff@Base 8.8.1.really.8.7.7
+ tcp_input_pcb@Base 8.8.1.really.8.7.7
+ tcp_persist_backoff@Base 8.8.1.really.8.7.7
+ tcp_ticks@Base 8.8.1.really.8.7.7
+ tcp_tmp_pcb@Base 8.8.1.really.8.7.7
+ to_str@Base 8.8.1.really.8.7.7
+ user_params@Base 8.8.1.really.8.7.7
+ vfork@Base 8.8.1.really.8.7.7
+ vlog_start@Base 8.8.1.really.8.7.7
+ vlog_stop@Base 8.8.1.really.8.7.7
+ vma_add_conf_rule@Base 8.8.1.really.8.7.7
+ vma_add_ring_profile@Base 8.8.1.really.8.7.7
+ vma_cyclic_buffer_read@Base 8.8.1.really.8.7.7
+ vma_dereg_mr_on_ring@Base 8.8.1.really.8.7.7
+ vma_dump_fd_stats@Base 8.8.1.really.8.7.7
+ vma_free_packets@Base 8.8.1.really.8.7.7
+ vma_get_mem_info@Base 8.8.1.really.8.7.7
+ vma_get_ring_direct_descriptors@Base 8.8.1.really.8.7.7
+ vma_get_socket_netowrk_header@Base 8.8.1.really.8.7.7
+ vma_get_socket_rings_fds@Base 8.8.1.really.8.7.7
+ vma_get_socket_rings_num@Base 8.8.1.really.8.7.7
+ vma_get_socket_tx_ring_fd@Base 8.8.1.really.8.7.7
+ vma_recvfrom_zcopy@Base 8.8.1.really.8.7.7
+ vma_reg_mr_on_ring@Base 8.8.1.really.8.7.7
+ vma_register_recv_callback@Base 8.8.1.really.8.7.7
+ vma_socketxtreme_free_vma_buff@Base 8.8.1.really.8.7.7
+ vma_socketxtreme_free_vma_packets@Base 8.8.1.really.8.7.7
+ vma_socketxtreme_poll@Base 8.8.1.really.8.7.7
+ vma_socketxtreme_ref_vma_buff@Base 8.8.1.really.8.7.7
+ vma_thread_offload@Base 8.8.1.really.8.7.7
+ vma_version_str@Base 8.8.1.really.8.7.7
+ write@Base 8.8.1.really.8.7.7
+ writev@Base 8.8.1.really.8.7.7
diff -pruN 8.8.1-1/debian/patches/typos.patch 8.8.1.really.8.7.7-1/debian/patches/typos.patch
--- 8.8.1-1/debian/patches/typos.patch	2019-01-23 04:56:45.000000000 +0000
+++ 8.8.1.really.8.7.7-1/debian/patches/typos.patch	2019-02-07 14:13:38.000000000 +0000
@@ -2,8 +2,8 @@ From: Tzafrir Cohen <tzafrir@debian.org>
 Subject: fix typos (lintian)
 Index: libvma/src/vma/dev/ring_eth_direct.cpp
 ===================================================================
---- libvma.orig/src/vma/dev/ring_eth_direct.cpp	2018-12-02 15:44:52.687543517 +0200
-+++ libvma/src/vma/dev/ring_eth_direct.cpp	2018-12-02 15:44:52.683543462 +0200
+--- libvma.orig/src/vma/dev/ring_eth_direct.cpp	2019-02-07 16:13:35.443166828 +0200
++++ libvma/src/vma/dev/ring_eth_direct.cpp	2019-02-07 16:13:35.439166825 +0200
 @@ -153,7 +153,7 @@
  
  	for (;it != m_mr_map.end();it++) {
@@ -15,9 +15,9 @@ Index: libvma/src/vma/dev/ring_eth_direc
  	m_mr_map.clear();
 Index: libvma/src/vma/event/event_handler_manager.cpp
 ===================================================================
---- libvma.orig/src/vma/event/event_handler_manager.cpp	2018-12-02 15:44:52.687543517 +0200
-+++ libvma/src/vma/event/event_handler_manager.cpp	2018-12-02 15:44:52.683543462 +0200
-@@ -1014,7 +1014,7 @@
+--- libvma.orig/src/vma/event/event_handler_manager.cpp	2019-02-07 16:13:35.443166828 +0200
++++ libvma/src/vma/event/event_handler_manager.cpp	2019-02-07 16:13:35.439166825 +0200
+@@ -1021,7 +1021,7 @@
  				break;
  			BULLSEYE_EXCLUDE_BLOCK_START
  			default:
@@ -28,8 +28,8 @@ Index: libvma/src/vma/event/event_handle
  		} // for idx
 Index: libvma/src/vma/lwip/tcp_in.c
 ===================================================================
---- libvma.orig/src/vma/lwip/tcp_in.c	2018-12-02 15:44:52.687543517 +0200
-+++ libvma/src/vma/lwip/tcp_in.c	2018-12-02 15:44:52.683543462 +0200
+--- libvma.orig/src/vma/lwip/tcp_in.c	2019-02-07 16:13:35.443166828 +0200
++++ libvma/src/vma/lwip/tcp_in.c	2019-02-07 16:13:35.439166825 +0200
 @@ -1333,7 +1333,7 @@
                  }
                  break;
@@ -41,9 +41,9 @@ Index: libvma/src/vma/lwip/tcp_in.c
                  break;
 Index: libvma/src/vma/sock/sockinfo_tcp.cpp
 ===================================================================
---- libvma.orig/src/vma/sock/sockinfo_tcp.cpp	2018-12-02 15:44:52.687543517 +0200
-+++ libvma/src/vma/sock/sockinfo_tcp.cpp	2018-12-02 16:30:13.192766297 +0200
-@@ -762,7 +762,7 @@
+--- libvma.orig/src/vma/sock/sockinfo_tcp.cpp	2019-02-07 16:13:35.443166828 +0200
++++ libvma/src/vma/sock/sockinfo_tcp.cpp	2019-02-07 16:13:35.439166825 +0200
+@@ -761,7 +761,7 @@
  			si_tcp_logdbg("TX while async-connect on socket return EAGAIN");
  			errno = EAGAIN;
  		} else if (m_conn_state == TCP_CONN_RESETED) {
@@ -52,7 +52,7 @@ Index: libvma/src/vma/sock/sockinfo_tcp.
  			errno = ECONNRESET;
  		} else if (m_conn_state == TCP_CONN_ERROR) {
  			si_tcp_logdbg("TX on connection failed socket");
-@@ -1745,7 +1745,7 @@
+@@ -1743,7 +1743,7 @@
  			si_tcp_logdbg("RX while async-connect on socket");
  			errno = EAGAIN;
  		} else if (m_conn_state == TCP_CONN_RESETED) {
@@ -61,7 +61,7 @@ Index: libvma/src/vma/sock/sockinfo_tcp.
  			m_conn_state = TCP_CONN_FAILED;
  			errno = ECONNRESET;
  		} else {
-@@ -3276,7 +3276,7 @@
+@@ -3223,7 +3223,7 @@
  			break;
  		BULLSEYE_EXCLUDE_BLOCK_START
  		default:
@@ -72,8 +72,8 @@ Index: libvma/src/vma/sock/sockinfo_tcp.
  	}	
 Index: libvma/tools/daemon/message.c
 ===================================================================
---- libvma.orig/tools/daemon/message.c	2018-12-02 15:44:52.687543517 +0200
-+++ libvma/tools/daemon/message.c	2018-12-02 15:44:52.687543517 +0200
+--- libvma.orig/tools/daemon/message.c	2019-02-07 16:13:35.443166828 +0200
++++ libvma/tools/daemon/message.c	2019-02-07 16:13:35.443166828 +0200
 @@ -154,7 +154,7 @@
  	while (len > 0) {
  		if (len < (int)sizeof(struct vma_hdr)) {
diff -pruN 8.8.1-1/debian/rules 8.8.1.really.8.7.7-1/debian/rules
--- 8.8.1-1/debian/rules	2019-01-23 04:56:45.000000000 +0000
+++ 8.8.1.really.8.7.7-1/debian/rules	2019-02-07 14:29:38.000000000 +0000
@@ -12,7 +12,7 @@ BUILD_DIR = debian/build_dir
 BUILD_OPT = --builddirectory=$(BUILD_DIR)
 
 %:
-	dh $@ --with-autoreconf
+	dh $@ --with-autoreconf,pkgkde_symbolshelper
 
 override_dh_auto_configure:
 	dh_auto_configure $(BUILD_OPT)
diff -pruN 8.8.1-1/journal.txt 8.8.1.really.8.7.7-1/journal.txt
--- 8.8.1-1/journal.txt	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/journal.txt	2019-01-30 12:11:38.000000000 +0000
@@ -1,31 +1,60 @@
+Version 8.7.7-0:
+Date + Time 2019-01-30
+=============================================================
+Added:
+        - RM #1647737 Modify Packet Pacing capability calculation
+        - RM #1605819 Add ring allocation logic control for all socket types
+        - RM #1576346 Modify RX HW timestamp capability calculation
+        - RM #1614459 Suppress pclose() ECHILD error
+        - RM #1610832 Cleanup socketxtreme in Jenkins
+        - RM #1450183 General code cleanups in ring headers
+        - RM #1450183 Move request_buffers_tx logic to ring_slave
+        - RM #1450183 Move rx_process_buffer logic to ring_slave
+        - RM #1450183 Move detach_flow logic to ring_slave
+        - RM #1450183 Move attach_flow logic to ring_slave
+        - RM #1450183 Move common fields and methods to ring_slave
+        - RM #1582189 Add Device Memory (Memic) support for upstream
+        - RM #1582188 Replace direct memcpy in dm_mgr
+        - RM #1574870 Print warning while RoCE LAG is enabled
+        - RM #1614436 Remove RoCE LAG warning duplications
+        - RM #1617358 Update License date to 2019
+        - RM #1592783 Add mlx5 PTP support for upstream
+        - RM #1608765 Clean redundant dead code from vma_lwip class
+
+Fixed:
+        - RM #1649370 Fix crash during Plugin event
+        - RM #1646743 Fix get_cqe64() processing
+        - RM #1649972 Fix incorrect TCP snd_wnd statistic
+        - RM #1522964 Fix can't be interrupted while VMA_SELECT_POLL=-1
+
 Version 8.8.1-0:
 Date + Time 2018-12-26
 =============================================================
 Added:
-        - RM # Simplify is_mp_ring() method
-        - RM # Cleanup performance counters
-        - RM # Improve UDP performance
-        - RM # Improve rx ring creation flow
-        - RM # Unify poll_and_process_element_rx() and drain_and_process()
-        - RM # Unify rfs_uc::rx_dispatch_packet()
-        - RM # Use single event update method
-        - RM # Disable draining for SocketXtreme
-        - RM # Add SocketXtreme API usage check
-        - RM # Set default parameters for SocketXtreme mode
-        - RM # Add VMA_SOCKETXTREME environment variable
-        - RM # Unify clean_cq() function
-        - RM # Add sanity check for correct SocketXtreme mode usage
-        - RM # Unify setting rx.context
-        - RM # Optimize get_cqe64()
-        - RM # Remove socketxtreme specific methods in cq_mgr_mlx5
-        - RM # Use m_mlx5_cq fields
-        - RM # Remove socketXtreme specific fields in cq_mgr_mlx5
-        - RM # Improve performance of cqe processing
-        - RM # Move socketxtreme cq processing to cq_mgr_mlx5
-        - RM # Use post_recv() in socketxtreme mode from qp_mgr_mlx5
-        - RM # Unify sockinfo code
-        - RM # Enable socketxtreme_poll() for all modes
-        - RM # Unify reclaim rx buffers
+        - RM #1075188 Simplify is_mp_ring() method
+        - RM #1075188 Cleanup performance counters
+        - RM #1075188 Improve UDP performance
+        - RM #1075188 Improve rx ring creation flow
+        - RM #1075188 Unify poll_and_process_element_rx() and drain_and_process()
+        - RM #1075188 Unify rfs_uc::rx_dispatch_packet()
+        - RM #1075188 Use single event update method
+        - RM #1075188 Disable draining for SocketXtreme
+        - RM #1075188 Add SocketXtreme API usage check
+        - RM #1075188 Set default parameters for SocketXtreme mode
+        - RM #1075188 Add VMA_SOCKETXTREME environment variable
+        - RM #1075188 Unify clean_cq() function
+        - RM #1075188 Add sanity check for correct SocketXtreme mode usage
+        - RM #1075188 Unify setting rx.context
+        - RM #1075188 Optimize get_cqe64()
+        - RM #1075188 Remove socketxtreme specific methods in cq_mgr_mlx5
+        - RM #1075188 Use m_mlx5_cq fields
+        - RM #1075188 Remove socketXtreme specific fields in cq_mgr_mlx5
+        - RM #1075188 Improve performance of cqe processing
+        - RM #1075188 Move socketxtreme cq processing to cq_mgr_mlx5
+        - RM #1075188 Use post_recv() in socketxtreme mode from qp_mgr_mlx5
+        - RM #1075188 Unify sockinfo code
+        - RM #1075188 Enable socketxtreme_poll() for all modes
+        - RM #1075188 Unify reclaim rx buffers
 
 Fixed:
         - RM #1603531 Fix pad length in umr mode
diff -pruN 8.8.1-1/LICENSE 8.8.1.really.8.7.7-1/LICENSE
--- 8.8.1-1/LICENSE	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/LICENSE	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/README.txt 8.8.1.really.8.7.7-1/README.txt
--- 8.8.1-1/README.txt	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/README.txt	2019-01-30 12:11:38.000000000 +0000
@@ -514,11 +514,8 @@ Default value is 100
 
 VMA_HW_TS_CONVERSION
 The above parameter defines the time stamp conversion method.
-Experimental verbs is required for converting the time stamp from hardware time (Hz)
-to system time (seconds.nano_seconds). Hence, hardware support is not guaranteed.
 The value of VMA_HW_TS_CONVERSION is determined by all devices - i.e if the hardware of
 one device does not support the conversion, then it will be disabled for the other devices.
-Currently only UDP RX flow is supported.
 Options = [0,1,2,3,4]:
 0 = Disabled
 1 = Raw-HW time                           - only convert the time stamp to seconds.nano_seconds time
@@ -526,7 +523,7 @@ Options = [0,1,2,3,4]:
 2 = Best possible - Raw-HW or system time - Sync to system time, then Raw hardware time -
                                             disable if none of them are supported by hardware.
 3 = Sync to system time                   - convert the time stamp to seconds.nano_seconds time units.
-                                            comparable to UDP receive software timestamp.
+                                            comparable to receive software timestamp.
                                             disable if hardware does not supports.
 4 = PTP Sync                              - convert the time stamp to seconds.nano_seconds time units.
                                             in case it is not supported - will apply option 3 (or disable
diff -pruN 8.8.1-1/src/state_machine/main.cpp 8.8.1.really.8.7.7-1/src/state_machine/main.cpp
--- 8.8.1-1/src/state_machine/main.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/state_machine/main.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/state_machine/sm.cpp 8.8.1.really.8.7.7-1/src/state_machine/sm.cpp
--- 8.8.1-1/src/state_machine/sm.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/state_machine/sm.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/state_machine/sm_fifo.cpp 8.8.1.really.8.7.7-1/src/state_machine/sm_fifo.cpp
--- 8.8.1-1/src/state_machine/sm_fifo.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/state_machine/sm_fifo.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/state_machine/sm_fifo.h 8.8.1.really.8.7.7-1/src/state_machine/sm_fifo.h
--- 8.8.1-1/src/state_machine/sm_fifo.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/state_machine/sm_fifo.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/state_machine/sm.h 8.8.1.really.8.7.7-1/src/state_machine/sm.h
--- 8.8.1-1/src/state_machine/sm.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/state_machine/sm.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/stats/stats_data_reader.h 8.8.1.really.8.7.7-1/src/stats/stats_data_reader.h
--- 8.8.1-1/src/stats/stats_data_reader.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/stats/stats_data_reader.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/stats/stats_printer.cpp 8.8.1.really.8.7.7-1/src/stats/stats_printer.cpp
--- 8.8.1-1/src/stats/stats_printer.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/stats/stats_printer.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -37,6 +37,8 @@
 #include "vma/util/utils.h"
 #include "vma/util/vma_stats.h"
 #include "vma/lwip/tcp.h"
+#include "vma/vma_extra.h"
+#include "vma/util/sys_vars.h"
 
 typedef enum {
 	e_K = 1024,
@@ -127,6 +129,15 @@ void print_full_stats(socket_stats_t* p_
 	}
 
 	//
+	// Ring Allocation Logic information
+	//
+	//
+	if (p_si_stats->ring_alloc_logic_rx == RING_LOGIC_PER_USER_ID)
+		fprintf(filename, "- RX: Ring User ID = %lu\n", p_si_stats->ring_user_id_rx);
+	if (p_si_stats->ring_alloc_logic_tx == RING_LOGIC_PER_USER_ID)
+		fprintf(filename, "- TX: Ring User ID = %lu\n", p_si_stats->ring_user_id_tx);
+
+	//
 	// Socket statistics
 	//
 	if (p_si_stats->counters.n_tx_sent_byte_count || p_si_stats->counters.n_tx_sent_pkt_count || p_si_stats->counters.n_tx_drops || p_si_stats->counters.n_tx_errors)
diff -pruN 8.8.1-1/src/stats/stats_publisher.cpp 8.8.1.really.8.7.7-1/src/stats/stats_publisher.cpp
--- 8.8.1-1/src/stats/stats_publisher.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/stats/stats_publisher.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/stats/stats_reader.cpp 8.8.1.really.8.7.7-1/src/stats/stats_reader.cpp
--- 8.8.1-1/src/stats/stats_reader.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/stats/stats_reader.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/utils/asm-arm64.h 8.8.1.really.8.7.7-1/src/utils/asm-arm64.h
--- 8.8.1-1/src/utils/asm-arm64.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/utils/asm-arm64.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/utils/asm.h 8.8.1.really.8.7.7-1/src/utils/asm.h
--- 8.8.1-1/src/utils/asm.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/utils/asm.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/utils/asm-ppc64.h 8.8.1.really.8.7.7-1/src/utils/asm-ppc64.h
--- 8.8.1-1/src/utils/asm-ppc64.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/utils/asm-ppc64.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/utils/asm-x86.h 8.8.1.really.8.7.7-1/src/utils/asm-x86.h
--- 8.8.1-1/src/utils/asm-x86.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/utils/asm-x86.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/utils/atomic.h 8.8.1.really.8.7.7-1/src/utils/atomic.h
--- 8.8.1-1/src/utils/atomic.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/utils/atomic.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/utils/bullseye.h 8.8.1.really.8.7.7-1/src/utils/bullseye.h
--- 8.8.1-1/src/utils/bullseye.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/utils/bullseye.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/utils/clock.h 8.8.1.really.8.7.7-1/src/utils/clock.h
--- 8.8.1-1/src/utils/clock.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/utils/clock.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/utils/lock_wrapper.h 8.8.1.really.8.7.7-1/src/utils/lock_wrapper.h
--- 8.8.1-1/src/utils/lock_wrapper.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/utils/lock_wrapper.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/utils/rdtsc.h 8.8.1.really.8.7.7-1/src/utils/rdtsc.h
--- 8.8.1-1/src/utils/rdtsc.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/utils/rdtsc.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/utils/timetest.cpp 8.8.1.really.8.7.7-1/src/utils/timetest.cpp
--- 8.8.1-1/src/utils/timetest.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/utils/timetest.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/utils/types.h 8.8.1.really.8.7.7-1/src/utils/types.h
--- 8.8.1-1/src/utils/types.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/utils/types.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vlogger/main.cpp 8.8.1.really.8.7.7-1/src/vlogger/main.cpp
--- 8.8.1-1/src/vlogger/main.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vlogger/main.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vlogger/vlogger.cpp 8.8.1.really.8.7.7-1/src/vlogger/vlogger.cpp
--- 8.8.1-1/src/vlogger/vlogger.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vlogger/vlogger.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vlogger/vlogger.h 8.8.1.really.8.7.7-1/src/vlogger/vlogger.h
--- 8.8.1-1/src/vlogger/vlogger.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vlogger/vlogger.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/allocator.cpp 8.8.1.really.8.7.7-1/src/vma/dev/allocator.cpp
--- 8.8.1-1/src/vma/dev/allocator.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/allocator.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/allocator.h 8.8.1.really.8.7.7-1/src/vma/dev/allocator.h
--- 8.8.1-1/src/vma/dev/allocator.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/allocator.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/buffer_pool.cpp 8.8.1.really.8.7.7-1/src/vma/dev/buffer_pool.cpp
--- 8.8.1-1/src/vma/dev/buffer_pool.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/buffer_pool.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/buffer_pool.h 8.8.1.really.8.7.7-1/src/vma/dev/buffer_pool.h
--- 8.8.1-1/src/vma/dev/buffer_pool.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/buffer_pool.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/cq_mgr.cpp 8.8.1.really.8.7.7-1/src/vma/dev/cq_mgr.cpp
--- 8.8.1-1/src/vma/dev/cq_mgr.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/cq_mgr.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/cq_mgr.h 8.8.1.really.8.7.7-1/src/vma/dev/cq_mgr.h
--- 8.8.1-1/src/vma/dev/cq_mgr.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/cq_mgr.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/cq_mgr.inl 8.8.1.really.8.7.7-1/src/vma/dev/cq_mgr.inl
--- 8.8.1-1/src/vma/dev/cq_mgr.inl	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/cq_mgr.inl	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/cq_mgr_mlx5.cpp 8.8.1.really.8.7.7-1/src/vma/dev/cq_mgr_mlx5.cpp
--- 8.8.1-1/src/vma/dev/cq_mgr_mlx5.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/cq_mgr_mlx5.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -676,22 +676,26 @@ inline struct mlx5_cqe64* cq_mgr_mlx5::c
 inline struct mlx5_cqe64 *cq_mgr_mlx5::get_cqe64(struct mlx5_cqe64 **cqe_err)
 {
 	struct mlx5_cqe64 *cqe = (struct mlx5_cqe64 *)(((uint8_t*)m_mlx5_cq.cq_buf) +
-			((m_mlx5_cq.cq_ci & (m_mlx5_cq.cqe_count - 1)) << m_mlx5_cq.cqe_size_log));
+		((m_mlx5_cq.cq_ci & (m_mlx5_cq.cqe_count - 1)) << m_mlx5_cq.cqe_size_log));
 	uint8_t op_own = cqe->op_own;
 
-	if (likely(op_own >> 4 != MLX5_CQE_INVALID) &&
-			((op_own & MLX5_CQE_OWNER_MASK) != !(m_mlx5_cq.cq_ci & m_mlx5_cq.cqe_count))) {
-		++m_mlx5_cq.cq_ci;
-		rmb();
-		*m_mlx5_cq.dbrec = htonl(m_mlx5_cq.cq_ci);
-
-		return cqe;
-	}
-	if ((op_own & 0x80) && cqe_err) {
+	/* Check ownership and invalid opcode
+	 * Return cqe_err for 0x80 - MLX5_CQE_REQ_ERR, MLX5_CQE_RESP_ERR or MLX5_CQE_INVALID
+	 */
+ 	if (unlikely((op_own & MLX5_CQE_OWNER_MASK) == !(m_mlx5_cq.cq_ci & m_mlx5_cq.cqe_count))) {
+		return NULL;
+	} else if (unlikely((op_own >> 4) == MLX5_CQE_INVALID)) {
+		return NULL;
+	} else if (cqe_err && (op_own & 0x80)) {
 		*cqe_err = check_error_completion(cqe, &m_mlx5_cq.cq_ci, op_own);
+		return NULL;
 	}
 
-	return NULL;
+ 	++m_mlx5_cq.cq_ci;
+	rmb();
+	*m_mlx5_cq.dbrec = htonl(m_mlx5_cq.cq_ci);
+
+ 	return cqe;
 }
 
 int cq_mgr_mlx5::poll_and_process_error_element_tx(struct mlx5_cqe64 *cqe, uint64_t* p_cq_poll_sn)
diff -pruN 8.8.1-1/src/vma/dev/cq_mgr_mlx5.h 8.8.1.really.8.7.7-1/src/vma/dev/cq_mgr_mlx5.h
--- 8.8.1-1/src/vma/dev/cq_mgr_mlx5.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/cq_mgr_mlx5.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/cq_mgr_mlx5.inl 8.8.1.really.8.7.7-1/src/vma/dev/cq_mgr_mlx5.inl
--- 8.8.1-1/src/vma/dev/cq_mgr_mlx5.inl	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/cq_mgr_mlx5.inl	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/cq_mgr_mp.cpp 8.8.1.really.8.7.7-1/src/vma/dev/cq_mgr_mp.cpp
--- 8.8.1-1/src/vma/dev/cq_mgr_mp.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/cq_mgr_mp.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/cq_mgr_mp.h 8.8.1.really.8.7.7-1/src/vma/dev/cq_mgr_mp.h
--- 8.8.1-1/src/vma/dev/cq_mgr_mp.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/cq_mgr_mp.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/dm_mgr.cpp 8.8.1.really.8.7.7-1/src/vma/dev/dm_mgr.cpp
--- 8.8.1-1/src/vma/dev/dm_mgr.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/dm_mgr.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -54,7 +54,7 @@
 
 dm_mgr::dm_mgr() :
 	m_p_dm_mr(NULL),
-	m_p_mlx5_dm(NULL),
+	m_p_ibv_dm(NULL),
 	m_p_ring_stat(NULL),
 	m_allocation(0),
 	m_used(0),
@@ -67,9 +67,8 @@ dm_mgr::dm_mgr() :
 bool dm_mgr::allocate_resources(ib_ctx_handler* ib_ctx, ring_stats_t* ring_stats)
 {
 	size_t allocation_size = DM_ALIGN_SIZE(safe_mce_sys().ring_dev_mem_tx, DM_MEMORY_MASK_64);
-	struct ibv_exp_alloc_dm_attr dm_attr = {allocation_size, 0};
-	struct ibv_exp_reg_mr_in mr_in;
-	struct ibv_exp_dm *ibv_dm;
+	vma_ibv_alloc_dm_attr dm_attr;
+	vma_ibv_reg_mr_in mr_in;
 	m_p_ring_stat = ring_stats;
 	if (!allocation_size) {
 		// On Device Memory usage was disabled by the user
@@ -82,31 +81,30 @@ bool dm_mgr::allocate_resources(ib_ctx_h
 	}
 
 	// Allocate on device memory buffer
-	ibv_dm = ibv_exp_alloc_dm(ib_ctx->get_ibv_context(), &dm_attr);
-	if (!ibv_dm) {
+	memset(&dm_attr, 0, sizeof(dm_attr));
+	dm_attr.length = allocation_size;
+	m_p_ibv_dm = vma_ibv_alloc_dm(ib_ctx->get_ibv_context(), &dm_attr);
+	if (!m_p_ibv_dm) {
 		// Memory allocation can fail if we have already allocated the maximum possible.
-		dm_logdbg("ibv_exp_alloc_dm() error - On Device Memory allocation failed, %d %m", errno);
+		dm_logdbg("ibv_alloc_dm error - On Device Memory allocation failed, %d %m", errno);
 		errno = 0;
 		return false;
 	}
 
 	// Initialize MR attributes
 	memset(&mr_in, 0, sizeof(mr_in));
-	mr_in.pd = ib_ctx->get_ibv_pd();
-	mr_in.comp_mask = IBV_EXP_REG_MR_DM;
-	mr_in.length = allocation_size;
-	mr_in.dm = ibv_dm;
+	vma_ibv_init_dm_mr(mr_in, ib_ctx->get_ibv_pd(), allocation_size, m_p_ibv_dm);
 
 	// Register On Device Memory MR
-	m_p_dm_mr = ibv_exp_reg_mr(&mr_in);
+	m_p_dm_mr = vma_ibv_reg_dm_mr(&mr_in);
 	if (!m_p_dm_mr) {
-		ibv_exp_free_dm(ibv_dm);
-		dm_logerr("ibv_exp_free_dm error - dm_mr registration failed, %d %m", errno);
+		vma_ibv_free_dm(m_p_ibv_dm);
+		m_p_ibv_dm = NULL;
+		dm_logerr("ibv_free_dm error - dm_mr registration failed, %d %m", errno);
 		return false;
 	}
 
 	m_allocation = allocation_size;
-	m_p_mlx5_dm = reinterpret_cast<struct vma_mlx5_dm *> (ibv_dm);
 	m_p_ring_stat->simple.n_tx_dev_mem_allocated = m_allocation;
 
 	dm_logdbg("Device memory allocation completed successfully! device[%s] bytes[%zu] dm_mr handle[%d] dm_mr lkey[%d]",
@@ -129,13 +127,13 @@ void dm_mgr::release_resources()
 		m_p_dm_mr = NULL;
 	}
 
-	if (m_p_mlx5_dm) {
-		if (ibv_exp_free_dm((struct ibv_exp_dm*) m_p_mlx5_dm)) {
+	if (m_p_ibv_dm) {
+		if (vma_ibv_free_dm(m_p_ibv_dm)) {
 			dm_logerr("ibv_free_dm failed %d %m", errno);
 		} else {
 			dm_logdbg("ibv_free_dm success");
 		}
-		m_p_mlx5_dm = NULL;
+		m_p_ibv_dm = NULL;
 	}
 
 	m_p_ring_stat = NULL;
@@ -190,9 +188,8 @@ void dm_mgr::release_resources()
  */
 bool dm_mgr::copy_data(struct mlx5_wqe_data_seg* seg, uint8_t* src, uint32_t length, mem_buf_desc_t* buff)
 {
+	vma_ibv_memcpy_dm_attr memcpy_attr;
 	uint32_t length_aligned_8 = DM_ALIGN_SIZE(length, DM_MEMORY_MASK_8);
-	uint32_t offset = 0;
-	uint64_t data_64 = 0;
 	size_t continuous_left = 0;
 	size_t &dev_mem_length = buff->tx.dev_mem_length = 0;
 
@@ -217,17 +214,15 @@ bool dm_mgr::copy_data(struct mlx5_wqe_d
 		goto dev_mem_oob;
 	}
 
-	/* Copy data into the On Device Memory buffer.
-	 * The copy is done using a volatile pointer (and not using memcpy of the whole buffer) to prevent any
-	 * optimizations which can lead to unaligned writes.
-	 * The first memcpy is to support architectures without unaligned access support - this should be optimized
-	 * out for architectures with unaligned access.
-	 */
-	while (offset < length_aligned_8) {
-		memcpy(&data_64, src + offset, sizeof(data_64));
-		*((volatile typeof(data_64) *)(m_p_mlx5_dm->start_va + m_head + offset)) = data_64;
-		offset += sizeof(data_64);
-	};
+	// Initialize memcopy attributes
+	memset(&memcpy_attr, 0, sizeof(memcpy_attr));
+	vma_ibv_init_memcpy_dm(memcpy_attr, src, m_head, length_aligned_8);
+
+	// Copy data into the On Device Memory buffer.
+	if (vma_ibv_memcpy_dm(m_p_ibv_dm, &memcpy_attr)) {
+		dm_logfunc("Failed to memcopy data into the memic buffer %m");
+		return false;
+	}
 
 	// Update values
 	seg->lkey = htonl(m_p_dm_mr->lkey);
diff -pruN 8.8.1-1/src/vma/dev/dm_mgr.h 8.8.1.really.8.7.7-1/src/vma/dev/dm_mgr.h
--- 8.8.1-1/src/vma/dev/dm_mgr.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/dm_mgr.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -44,12 +44,6 @@ class ib_ctx_handler;
 
 #define DM_COMPLETION_THRESHOLD 8192
 
-struct vma_mlx5_dm {
-	struct ibv_exp_dm  ibv_dm;
-	size_t             length;
-	char               *start_va;
-};
-
 class dm_mgr {
 public:
 
@@ -63,7 +57,7 @@ public:
 private:
 
 	struct ibv_mr  *m_p_dm_mr;
-	vma_mlx5_dm    *m_p_mlx5_dm;
+	vma_ibv_dm     *m_p_ibv_dm;
 	ring_stats_t   *m_p_ring_stat;
 	size_t         m_allocation;         // Size of device memory buffer (bytes)
 	size_t         m_used;               // Next available index inside the buffer
diff -pruN 8.8.1-1/src/vma/dev/gro_mgr.cpp 8.8.1.really.8.7.7-1/src/vma/dev/gro_mgr.cpp
--- 8.8.1-1/src/vma/dev/gro_mgr.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/gro_mgr.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/gro_mgr.h 8.8.1.really.8.7.7-1/src/vma/dev/gro_mgr.h
--- 8.8.1-1/src/vma/dev/gro_mgr.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/gro_mgr.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/ib_ctx_handler_collection.cpp 8.8.1.really.8.7.7-1/src/vma/dev/ib_ctx_handler_collection.cpp
--- 8.8.1-1/src/vma/dev/ib_ctx_handler_collection.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ib_ctx_handler_collection.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -53,8 +53,7 @@
 
 ib_ctx_handler_collection* g_p_ib_ctx_handler_collection = NULL;
 
-ib_ctx_handler_collection::ib_ctx_handler_collection() :
-		m_ctx_time_conversion_mode(TS_CONVERSION_MODE_DISABLE)
+ib_ctx_handler_collection::ib_ctx_handler_collection()
 {
 	ibchc_logdbg("");
 
@@ -106,14 +105,8 @@ void ib_ctx_handler_collection::update_t
 
 	BULLSEYE_EXCLUDE_BLOCK_END
 
-	if (!ifa_name) {
-		/* Get common time conversion mode for all devices */
-		m_ctx_time_conversion_mode = time_converter::get_devices_converter_status(dev_list, num_devices);
-		ibchc_logdbg("TS converter status was set to %d", m_ctx_time_conversion_mode);
-	}
-
 	for (i = 0; i < num_devices; i++) {
-		struct ib_ctx_handler::ib_ctx_handler_desc desc = {dev_list[i], m_ctx_time_conversion_mode};
+		struct ib_ctx_handler::ib_ctx_handler_desc desc = {dev_list[i]};
 
 		/* 2. Skip existing devices (compare by name) */
 		if (ifa_name && !check_device_name_ib_name(ifa_name, dev_list[i]->name)) {
diff -pruN 8.8.1-1/src/vma/dev/ib_ctx_handler_collection.h 8.8.1.really.8.7.7-1/src/vma/dev/ib_ctx_handler_collection.h
--- 8.8.1-1/src/vma/dev/ib_ctx_handler_collection.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ib_ctx_handler_collection.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -59,14 +59,10 @@ public:
 	inline size_t get_num_devices() {
 		return m_ib_ctx_map.size();
 	};
-	inline ts_conversion_mode_t get_ctx_time_conversion_mode() {
-		return m_ctx_time_conversion_mode;
-	};
 
 private:
 
 	ib_context_map_t	m_ib_ctx_map;
-	ts_conversion_mode_t m_ctx_time_conversion_mode;
 };
 
 extern ib_ctx_handler_collection* g_p_ib_ctx_handler_collection;
diff -pruN 8.8.1-1/src/vma/dev/ib_ctx_handler.cpp 8.8.1.really.8.7.7-1/src/vma/dev/ib_ctx_handler.cpp
--- 8.8.1-1/src/vma/dev/ib_ctx_handler.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ib_ctx_handler.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -97,56 +97,16 @@ ib_ctx_handler::ib_ctx_handler(struct ib
 		goto err;
 	} ENDIF_VERBS_FAILURE;
 
-#ifdef DEFINED_IBV_CQ_TIMESTAMP
-	switch (desc->ctx_time_converter_mode) {
-	case TS_CONVERSION_MODE_DISABLE:
-		m_p_ctx_time_converter = new time_converter_ib_ctx(m_p_ibv_context, TS_CONVERSION_MODE_DISABLE, 0);
-	break;
-	case TS_CONVERSION_MODE_PTP: {
-# ifdef DEFINED_IBV_EXP_VALUES_CLOCK_INFO
-		struct ibv_exp_values ibv_exp_values_tmp;
-		memset(&ibv_exp_values_tmp, 0, sizeof(ibv_exp_values_tmp));
-		int ret = ibv_exp_query_values(m_p_ibv_context,
-					       IBV_EXP_VALUES_CLOCK_INFO,
-					       &ibv_exp_values_tmp);
-		if (!ret) {
-			m_p_ctx_time_converter = new time_converter_ptp(m_p_ibv_context);
-		} else { // revert to mode TS_CONVERSION_MODE_SYNC
-			m_p_ctx_time_converter = new time_converter_ib_ctx(m_p_ibv_context,
-							TS_CONVERSION_MODE_SYNC,
-							m_p_ibv_device_attr->hca_core_clock);
-			ibch_logwarn("ibv_exp_query_values failure for clock_info, "
-					"reverting to mode TS_CONVERSION_MODE_SYNC "
-					"(ibv context %p) (return value=%d)",
-					m_p_ibv_context, ret);
-		}
-# else
-		m_p_ctx_time_converter = new time_converter_ib_ctx(m_p_ibv_context,
-				TS_CONVERSION_MODE_SYNC,
-				m_p_ibv_device_attr->hca_core_clock);
-		ibch_logwarn("PTP is not supported by the underlying Infiniband "
-				"verbs. IBV_EXP_VALUES_CLOCK_INFO not defined. "
-				"reverting to mode TS_CONVERSION_MODE_SYNC");
-# endif // DEFINED_IBV_EXP_VALUES_CLOCK_INFO
-	}
-	break;
-	default:
-		m_p_ctx_time_converter = new time_converter_ib_ctx(m_p_ibv_context,
-				desc->ctx_time_converter_mode,
-				m_p_ibv_device_attr->hca_core_clock);
-		break;
-	}
-#else
-	m_p_ctx_time_converter = new time_converter_ib_ctx(m_p_ibv_context, TS_CONVERSION_MODE_DISABLE, 0);
-	if (desc->ctx_time_converter_mode != TS_CONVERSION_MODE_DISABLE) {
-		ibch_logwarn("time converter mode not applicable (configuration "
-				"value=%d). set to TS_CONVERSION_MODE_DISABLE.",
-				desc->ctx_time_converter_mode);
-	}
-#endif // DEFINED_IBV_CQ_TIMESTAMP
 	// update device memory capabilities
 	m_on_device_memory = vma_ibv_dm_size(m_p_ibv_device_attr);
 
+#ifdef DEFINED_IBV_EXP_QP_RATE_LIMIT
+	if (get_ibv_device_attr()->comp_mask & IBV_EXP_DEVICE_ATTR_PACKET_PACING_CAPS) {
+		m_pacing_caps.rate_limit_min = get_ibv_device_attr()->packet_pacing_caps.qp_rate_limit_min;
+		m_pacing_caps.rate_limit_max = get_ibv_device_attr()->packet_pacing_caps.qp_rate_limit_max;
+	}
+#endif
+
 	g_p_event_handler_manager->register_ibverbs_event(m_p_ibv_context->async_fd,
 						this, m_p_ibv_context, 0);
 
@@ -198,7 +158,9 @@ ib_ctx_handler::~ib_ctx_handler()
 		m_p_ibv_pd = NULL;
 	}
 
-	m_p_ctx_time_converter->clean_obj();
+	if (m_p_ctx_time_converter) {
+		m_p_ctx_time_converter->clean_obj();
+	}
 	delete m_p_ibv_device_attr;
 
 	ibv_close_device(m_p_ibv_context);
@@ -209,7 +171,7 @@ ib_ctx_handler::~ib_ctx_handler()
 
 void ib_ctx_handler::set_str()
 {
-	char str_x[255] = {0};
+	char str_x[512] = {0};
 
 	m_str[0] = '\0';
 
@@ -236,6 +198,10 @@ void ib_ctx_handler::set_str()
 	str_x[0] = '\0';
 	sprintf(str_x, " on_device_memory: %zu", m_on_device_memory);
 	strcat(m_str, str_x);
+
+	str_x[0] = '\0';
+	sprintf(str_x, " packet_pacing_caps: min rate %u, max rate %u", m_pacing_caps.rate_limit_min, m_pacing_caps.rate_limit_max);
+	strcat(m_str, str_x);
 }
 
 void ib_ctx_handler::print_val()
@@ -244,9 +210,57 @@ void ib_ctx_handler::print_val()
 	ibch_logdbg("%s", m_str);
 }
 
+void ib_ctx_handler::set_ctx_time_converter_status(ts_conversion_mode_t conversion_mode)
+{
+#ifdef DEFINED_IBV_CQ_TIMESTAMP
+	switch (conversion_mode) {
+	case TS_CONVERSION_MODE_DISABLE:
+		m_p_ctx_time_converter = new time_converter_ib_ctx(m_p_ibv_context, TS_CONVERSION_MODE_DISABLE, 0);
+	break;
+	case TS_CONVERSION_MODE_PTP: {
+#ifdef DEFINED_IBV_CLOCK_INFO
+		if (strncmp(get_ibname(), "mlx4", 4) == 0) {
+			m_p_ctx_time_converter = new time_converter_ib_ctx(m_p_ibv_context, TS_CONVERSION_MODE_SYNC, m_p_ibv_device_attr->hca_core_clock);
+			ibch_logwarn("ptp is not supported for mlx4 devices, reverting to mode TS_CONVERSION_MODE_SYNC (ibv context %p)",
+					m_p_ibv_context);
+		} else {
+			vma_ibv_clock_info clock_info;
+			memset(&clock_info, 0, sizeof(clock_info));
+			int ret = vma_ibv_query_clock_info(m_p_ibv_context, &clock_info);
+			if (ret == 0) {
+				m_p_ctx_time_converter = new time_converter_ptp(m_p_ibv_context);
+			} else {
+				m_p_ctx_time_converter = new time_converter_ib_ctx(m_p_ibv_context, TS_CONVERSION_MODE_SYNC, m_p_ibv_device_attr->hca_core_clock);
+				ibch_logwarn("vma_ibv_query_clock_info failure for clock_info, reverting to mode TS_CONVERSION_MODE_SYNC (ibv context %p) (ret %d)",
+						m_p_ibv_context, ret);
+			}
+		}
+# else
+		m_p_ctx_time_converter = new time_converter_ib_ctx(m_p_ibv_context, TS_CONVERSION_MODE_SYNC, m_p_ibv_device_attr->hca_core_clock);
+		ibch_logwarn("PTP is not supported by the underlying Infiniband verbs. DEFINED_IBV_CLOCK_INFO not defined. "
+				"reverting to mode TS_CONVERSION_MODE_SYNC");
+# endif // DEFINED_IBV_CLOCK_INFO
+	}
+	break;
+	default:
+		m_p_ctx_time_converter = new time_converter_ib_ctx(m_p_ibv_context,
+				conversion_mode,
+				m_p_ibv_device_attr->hca_core_clock);
+		break;
+	}
+#else
+	m_p_ctx_time_converter = new time_converter_ib_ctx(m_p_ibv_context, TS_CONVERSION_MODE_DISABLE, 0);
+	if (conversion_mode != TS_CONVERSION_MODE_DISABLE) {
+		ibch_logwarn("time converter mode not applicable (configuration "
+				"value=%d). set to TS_CONVERSION_MODE_DISABLE.",
+				conversion_mode);
+	}
+#endif // DEFINED_IBV_CQ_TIMESTAMP
+}
+
 ts_conversion_mode_t ib_ctx_handler::get_ctx_time_converter_status()
 {
-	return m_p_ctx_time_converter->get_converter_status();
+	return m_p_ctx_time_converter ? m_p_ctx_time_converter->get_converter_status(): TS_CONVERSION_MODE_DISABLE;
 }
 
 uint32_t ib_ctx_handler::mem_reg(void *addr, size_t length, uint64_t access)
@@ -311,6 +325,20 @@ void ib_ctx_handler::set_flow_tag_capabi
 	m_flow_tag_enabled = flow_tag_capability;
 }
 
+void ib_ctx_handler::set_burst_capability(bool burst)
+{
+	m_pacing_caps.burst = burst;
+}
+
+bool ib_ctx_handler::is_packet_pacing_supported(uint32_t rate /* =1 */)
+{
+	if (rate) {
+		return m_pacing_caps.rate_limit_min <= rate && rate <= m_pacing_caps.rate_limit_max;
+	} else {
+		return true;
+	}
+}
+
 bool ib_ctx_handler::is_active(int port_num)
 {
 	ibv_port_attr port_attr;
diff -pruN 8.8.1-1/src/vma/dev/ib_ctx_handler.h 8.8.1.really.8.7.7-1/src/vma/dev/ib_ctx_handler.h
--- 8.8.1-1/src/vma/dev/ib_ctx_handler.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ib_ctx_handler.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -44,6 +44,14 @@
 
 typedef std::tr1::unordered_map<uint32_t, struct ibv_mr*> mr_map_lkey_t;
 
+struct pacing_caps_t {
+	uint32_t rate_limit_min;
+	uint32_t rate_limit_max;
+	bool burst;
+
+	pacing_caps_t() : rate_limit_min(0), rate_limit_max(0), burst(false) {};
+};
+
 // client to event manager 'command' invoker (??)
 //
 class ib_ctx_handler : public event_handler_ibverbs
@@ -51,7 +59,6 @@ class ib_ctx_handler : public event_hand
 public:
 	struct ib_ctx_handler_desc {
 		struct ibv_device *device;
-		ts_conversion_mode_t ctx_time_converter_mode;
 	};
 public:
 	ib_ctx_handler(struct ib_ctx_handler_desc *desc);
@@ -71,9 +78,13 @@ public:
 	void                    mem_dereg(uint32_t lkey);
 	struct ibv_mr*          get_mem_reg(uint32_t lkey);
 	bool                    is_removed() { return m_removed;}
+	void                    set_ctx_time_converter_status(ts_conversion_mode_t conversion_mode);
 	ts_conversion_mode_t    get_ctx_time_converter_status();
 	void                    set_flow_tag_capability(bool flow_tag_capability); 
 	bool                    get_flow_tag_capability() { return m_flow_tag_enabled; } // m_flow_tag_capability
+	void                    set_burst_capability(bool burst);
+	bool                    get_burst_capability() { return m_pacing_caps.burst; }
+	bool                    is_packet_pacing_supported(uint32_t rate = 1);
 	size_t                  get_on_device_memory_size() { return m_on_device_memory; }
 	bool                    is_active(int port_num);
 	virtual void            handle_event_ibverbs_cb(void *ev_data, void *ctx);
@@ -93,6 +104,7 @@ private:
 	vma_ibv_device_attr_ex* m_p_ibv_device_attr;
 	ibv_pd*                 m_p_ibv_pd;
 	bool                    m_flow_tag_enabled;
+	pacing_caps_t           m_pacing_caps;
 	size_t                  m_on_device_memory;
 	bool                    m_removed;
 	lock_spin               m_lock_umr;
diff -pruN 8.8.1-1/src/vma/dev/net_device_entry.cpp 8.8.1.really.8.7.7-1/src/vma/dev/net_device_entry.cpp
--- 8.8.1-1/src/vma/dev/net_device_entry.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/net_device_entry.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/net_device_entry.h 8.8.1.really.8.7.7-1/src/vma/dev/net_device_entry.h
--- 8.8.1-1/src/vma/dev/net_device_entry.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/net_device_entry.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/net_device_table_mgr.cpp 8.8.1.really.8.7.7-1/src/vma/dev/net_device_table_mgr.cpp
--- 8.8.1-1/src/vma/dev/net_device_table_mgr.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/net_device_table_mgr.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -69,7 +69,10 @@ enum net_device_table_mgr_timers {
 	RING_ADAPT_CQ_MODERATION_TIMER
 };
 
-net_device_table_mgr::net_device_table_mgr() : cache_table_mgr<ip_address,net_device_val*>("net_device_table_mgr"), m_lock("net_device_table_mgr")
+net_device_table_mgr::net_device_table_mgr() :
+		cache_table_mgr<ip_address,net_device_val*>("net_device_table_mgr"),
+		m_lock("net_device_table_mgr"),
+		m_time_conversion_mode(TS_CONVERSION_MODE_DISABLE)
 {
 	m_num_devices = 0;
 	m_global_ring_epfd = 0;
@@ -117,6 +120,9 @@ net_device_table_mgr::net_device_table_m
 	//Print table
 	print_val_tbl();
 
+	// Calculate and update time conversion mode
+	m_time_conversion_mode = time_converter::update_device_converters_status(m_net_device_map_index);
+
 	// register to netlink event
 	g_p_netlink_handler->register_event(nlgrpLINK, this);
 	ndtm_logdbg("Registered to g_p_netlink_handler");
diff -pruN 8.8.1-1/src/vma/dev/net_device_table_mgr.h 8.8.1.really.8.7.7-1/src/vma/dev/net_device_table_mgr.h
--- 8.8.1-1/src/vma/dev/net_device_table_mgr.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/net_device_table_mgr.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -108,6 +108,10 @@ public:
 
 	uint32_t get_max_mtu();
 
+	inline ts_conversion_mode_t get_ctx_time_conversion_mode() {
+		return m_time_conversion_mode;
+	};
+
 private:
 	void del_link_event(const netlink_link_info* info);
 	void new_link_event(const netlink_link_info* info);
@@ -116,6 +120,7 @@ private:
 	void                            set_max_mtu(uint32_t);
 	
 	lock_mutex                      m_lock;
+	ts_conversion_mode_t            m_time_conversion_mode;
 	net_device_map_addr_t           m_net_device_map_addr;
 	net_device_map_index_t          m_net_device_map_index;
 	int                             m_num_devices;
diff -pruN 8.8.1-1/src/vma/dev/net_device_val.cpp 8.8.1.really.8.7.7-1/src/vma/dev/net_device_val.cpp
--- 8.8.1-1/src/vma/dev/net_device_val.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/net_device_val.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -895,6 +895,7 @@ void net_device_val::update_netvsc_slave
 			s->port_num = get_port_from_ifname(if_name);
 			m_slaves.push_back(s);
 
+			up_ib_ctx->set_ctx_time_converter_status(g_p_net_device_table_mgr->get_ctx_time_conversion_mode());
 			g_buffer_pool_rx->register_memory(s->p_ib_ctx);
 			g_buffer_pool_tx->register_memory(s->p_ib_ctx);
 			found = true;
@@ -1519,6 +1520,20 @@ bool net_device_val::verify_bond_ipoib_o
 		vlog_printf(VLOG_WARNING,"* Bond %s will not be offloaded due to problem with its slaves.\n", get_ifname());
 		vlog_printf(VLOG_WARNING,"* Check warning messages for more information.\n");
 		vlog_printf(VLOG_WARNING,"*******************************************************************************************************\n");
+	} else {
+		/*
+		 * Print warning message while bond device contains two slaves of the same HCA
+		 * while RoCE LAG is enabled for both slaves.
+		 */
+		sys_image_guid_map_t::iterator guid_iter;
+		for (guid_iter = m_sys_image_guid_map.begin(); guid_iter != m_sys_image_guid_map.end(); guid_iter++) {
+			char bond_roce_lag_path[256] = {0};
+			if (guid_iter->second.size() > 1 &&
+					check_bond_roce_lag_exist(bond_roce_lag_path, sizeof(bond_roce_lag_path), guid_iter->second.front().c_str()) &&
+					check_bond_roce_lag_exist(bond_roce_lag_path, sizeof(bond_roce_lag_path), guid_iter->second.back().c_str())) {
+				print_roce_lag_warnings(get_ifname_link(), bond_roce_lag_path, guid_iter->second.front().c_str(), guid_iter->second.back().c_str());
+			}
+		}
 	}
 	return bond_ok;
 }
@@ -1622,35 +1637,26 @@ bool net_device_val::verify_qp_creation(
 		nd_logdbg("Cant find ib_ctx for interface %s", base_ifname);
 		if (qp_type == IBV_QPT_RAW_PACKET && m_bond != NO_BOND) {
 			if (check_bond_roce_lag_exist(bond_roce_lag_path, sizeof(bond_roce_lag_path), ifname)) {
-				vlog_printf(VLOG_WARNING,"*******************************************************************************************************\n");
-				vlog_printf(VLOG_WARNING,"* Interface %s will not be offloaded.\n", get_ifname_link());
-				vlog_printf(VLOG_WARNING,"* VMA cannot offload the device while RoCE LAG is enabled.\n");
-				vlog_printf(VLOG_WARNING,"* In order to disable RoCE LAG please use:\n");
-				vlog_printf(VLOG_WARNING,"* echo 0 > %s\n", bond_roce_lag_path);
-				vlog_printf(VLOG_WARNING,"******************************************************************************************************\n");
+				print_roce_lag_warnings(get_ifname_link(), bond_roce_lag_path);
 			} else if ((p_ib_ctx = g_p_ib_ctx_handler_collection->get_ib_ctx(get_ifname_link()))
 					&& strstr(p_ib_ctx->get_ibname(), "bond")) {
-				vlog_printf(VLOG_WARNING,"*******************************************************************************************************\n");
-				vlog_printf(VLOG_WARNING,"* Interface %s will not be offloaded.\n", get_ifname_link());
-				vlog_printf(VLOG_WARNING,"* VMA cannot offload the device while RoCE LAG is enabled.\n");
-				vlog_printf(VLOG_WARNING,"* Please refer to VMA Release Notes for more info\n");
-				vlog_printf(VLOG_WARNING,"******************************************************************************************************\n");
-
+				print_roce_lag_warnings(get_ifname_link());
 			}
 		}
 		goto release_resources;
 	} else if (port_num > p_ib_ctx->get_ibv_device_attr()->phys_port_cnt) {
 		nd_logdbg("Invalid port for interface %s", base_ifname);
 		if (qp_type == IBV_QPT_RAW_PACKET && m_bond != NO_BOND && !strncmp(p_ib_ctx->get_ibname(), "mlx4", 4)) {
-			vlog_printf(VLOG_WARNING,"*******************************************************************************************************\n");
-			vlog_printf(VLOG_WARNING,"* Interface %s will not be offloaded.\n", get_ifname_link());
-			vlog_printf(VLOG_WARNING,"* VMA cannot offload the device while RoCE LAG is enabled.\n");
-			vlog_printf(VLOG_WARNING,"* Please refer to VMA Release Notes for more info\n");
-			vlog_printf(VLOG_WARNING,"******************************************************************************************************\n");
+			print_roce_lag_warnings(get_ifname_link());
 		}
 		goto release_resources;
 	}
 
+	// Add to guid map in order to detect roce lag issue
+	if (qp_type == IBV_QPT_RAW_PACKET && m_bond != NO_BOND) {
+		m_sys_image_guid_map[p_ib_ctx->get_ibv_device_attr()->sys_image_guid].push_back(base_ifname);
+	}
+
 	//create qp resources
 	channel = ibv_create_comp_channel(p_ib_ctx->get_ibv_context());
 	if (!channel) {
@@ -1683,11 +1689,16 @@ bool net_device_val::verify_qp_creation(
 			goto qp_failure;
 		} else {
 			success = true;
+
 			if (qp_type == IBV_QPT_RAW_PACKET && !priv_ibv_query_flow_tag_supported(qp, port_num)) {
 				p_ib_ctx->set_flow_tag_capability(true);
-
 			}
 			nd_logdbg("verified interface %s for flow tag capabilities : %s", ifname, p_ib_ctx->get_flow_tag_capability() ? "enabled" : "disabled");
+
+			if (qp_type == IBV_QPT_RAW_PACKET && p_ib_ctx->is_packet_pacing_supported() && !priv_ibv_query_burst_supported(qp, port_num)) {
+				p_ib_ctx->set_burst_capability(true);
+			}
+			nd_logdbg("verified interface %s for burst capabilities : %s", ifname, p_ib_ctx->get_burst_capability() ? "enabled" : "disabled");
 		}
 	} else {
 		nd_logdbg("QP creation failed on interface %s (errno=%d %m), Traffic will not be offloaded", ifname, errno);
diff -pruN 8.8.1-1/src/vma/dev/net_device_val.h 8.8.1.really.8.7.7-1/src/vma/dev/net_device_val.h
--- 8.8.1-1/src/vma/dev/net_device_val.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/net_device_val.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -54,6 +54,7 @@
 
 class L2_address;
 class ring;
+class ib_ctx_handler;
 class neigh_ib_broadcast;
 
 #define RING_ALLOC_STR_SIZE	256
@@ -131,7 +132,7 @@ private:
 typedef ring_alloc_logic_attr resource_allocation_key;
 // each ring has a ref count
 typedef std::tr1::unordered_map<resource_allocation_key *, std::pair<ring*, int>, ring_alloc_logic_attr, ring_alloc_logic_attr> rings_hash_map_t;
-
+typedef std::tr1::unordered_map<uint64_t, std::vector<std::string> > sys_image_guid_map_t;
 typedef std::tr1::unordered_map<resource_allocation_key *, std::pair<resource_allocation_key *, int> ,ring_alloc_logic_attr, ring_alloc_logic_attr> rings_key_redirection_hash_map_t;
 
 #define THE_RING                        ring_iter->second.first
@@ -283,6 +284,7 @@ protected:
 	transport_type_t	m_transport_type;
 	lock_mutex_recursive	m_lock;
 	rings_hash_map_t	m_h_ring_map;
+	sys_image_guid_map_t	m_sys_image_guid_map;
 	rings_key_redirection_hash_map_t        m_h_ring_key_redirection_map;
 
 	state			m_state;          /* device current state */
diff -pruN 8.8.1-1/src/vma/dev/qp_mgr.cpp 8.8.1.really.8.7.7-1/src/vma/dev/qp_mgr.cpp
--- 8.8.1-1/src/vma/dev/qp_mgr.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/qp_mgr.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -589,7 +589,6 @@ void qp_mgr_eth::modify_qp_to_ready_stat
 		qp_logpanic("failed to modify QP from INIT to RTS state (ret = %d)", ret);
 	}
 
-	modify_qp_ratelimit(m_rate_limit, RL_RATE | RL_BURST_SIZE | RL_PKT_SIZE);
 	BULLSEYE_EXCLUDE_BLOCK_END
 }
 
@@ -749,40 +748,6 @@ uint32_t qp_mgr::is_ratelimit_change(str
 	return rl_changes;
 }
 
-bool qp_mgr::is_ratelimit_supported(vma_ibv_device_attr *attr, struct vma_rate_limit_t &rate_limit)
-{
-#ifdef DEFINED_IBV_EXP_QP_RATE_LIMIT
-	if (!(attr->comp_mask & IBV_EXP_DEVICE_ATTR_PACKET_PACING_CAPS))
-		return false;
-
-	ibv_exp_packet_pacing_caps pp_caps = attr->packet_pacing_caps;
-
-	/* for any rate limit settings the rate must be between the supported min and max values */
-	if (rate_limit.rate < pp_caps.qp_rate_limit_min || pp_caps.qp_rate_limit_max < rate_limit.rate) {
-		return false;
-	}
-
-	uint32_t rl_changes = is_ratelimit_change(rate_limit);
-
-	/* burst support capability is required to handle any burst/packet size change */
-	if (rl_changes & (RL_BURST_SIZE | RL_PKT_SIZE)) {
-#ifdef DEFINED_IBV_EXP_QP_SUPPORT_BURST
-		if (!(pp_caps.cap_flags & IBV_EXP_QP_SUPPORT_BURST)) {
-			return false;
-		}
-#else
-		return false;
-#endif
-	}
-
-	return true;
-#else
-	NOT_IN_USE(attr);
-	NOT_IN_USE(rate_limit);
-	return false;
-#endif
-}
-
 int qp_mgr::modify_qp_ratelimit(struct vma_rate_limit_t &rate_limit, uint32_t rl_changes)
 {
 	int ret;
diff -pruN 8.8.1-1/src/vma/dev/qp_mgr_eth_direct.cpp 8.8.1.really.8.7.7-1/src/vma/dev/qp_mgr_eth_direct.cpp
--- 8.8.1-1/src/vma/dev/qp_mgr_eth_direct.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/qp_mgr_eth_direct.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/qp_mgr_eth_direct.h 8.8.1.really.8.7.7-1/src/vma/dev/qp_mgr_eth_direct.h
--- 8.8.1-1/src/vma/dev/qp_mgr_eth_direct.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/qp_mgr_eth_direct.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/qp_mgr_eth_mlx5.cpp 8.8.1.really.8.7.7-1/src/vma/dev/qp_mgr_eth_mlx5.cpp
--- 8.8.1-1/src/vma/dev/qp_mgr_eth_mlx5.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/qp_mgr_eth_mlx5.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/qp_mgr_eth_mlx5.h 8.8.1.really.8.7.7-1/src/vma/dev/qp_mgr_eth_mlx5.h
--- 8.8.1-1/src/vma/dev/qp_mgr_eth_mlx5.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/qp_mgr_eth_mlx5.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/qp_mgr.h 8.8.1.really.8.7.7-1/src/vma/dev/qp_mgr.h
--- 8.8.1-1/src/vma/dev/qp_mgr.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/qp_mgr.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -74,8 +74,6 @@ operator==(ibv_gid const& key1, ibv_gid
     #pragma BullseyeCoverage on
 #endif
 
-typedef hash_map<ibv_gid, uint32_t> mgid_ref_count_map_t;
-
 /**
  * @class qp_mgr
  *
@@ -135,7 +133,6 @@ public:
 	void                release_tx_buffers();
 	virtual void        trigger_completion_for_all_sent_packets();
 	uint32_t            is_ratelimit_change(struct vma_rate_limit_t &rate_limit);
-	bool                is_ratelimit_supported(vma_ibv_device_attr *attr, struct vma_rate_limit_t &rate_limit);
 	int                 modify_qp_ratelimit(struct vma_rate_limit_t &rate_limit, uint32_t rl_changes);
 	static inline bool  is_lib_mlx5(const char* device_name) {return strstr(device_name, "mlx5");}
 	virtual void        dm_release_data(mem_buf_desc_t* buff) { NOT_IN_USE(buff); }
@@ -180,8 +177,6 @@ protected:
 	uint16_t            m_n_ip_id_offset;
 	struct vma_rate_limit_t m_rate_limit;
 
-	mgid_ref_count_map_t  m_attach_mc_grp_ref_cnt;
-
 	int             configure(struct ibv_comp_channel* p_rx_comp_event_channel);
 	virtual int     prepare_ibv_qp(vma_ibv_qp_init_attr& qp_init_attr) = 0;
 	inline void     set_unsignaled_count(void) { m_n_unsignaled_count = m_n_sysvar_tx_num_wr_to_signal - 1;	}
diff -pruN 8.8.1-1/src/vma/dev/qp_mgr_mp.cpp 8.8.1.really.8.7.7-1/src/vma/dev/qp_mgr_mp.cpp
--- 8.8.1-1/src/vma/dev/qp_mgr_mp.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/qp_mgr_mp.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/qp_mgr_mp.h 8.8.1.really.8.7.7-1/src/vma/dev/qp_mgr_mp.h
--- 8.8.1-1/src/vma/dev/qp_mgr_mp.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/qp_mgr_mp.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/rfs.cpp 8.8.1.really.8.7.7-1/src/vma/dev/rfs.cpp
--- 8.8.1-1/src/vma/dev/rfs.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/rfs.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/rfs.h 8.8.1.really.8.7.7-1/src/vma/dev/rfs.h
--- 8.8.1-1/src/vma/dev/rfs.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/rfs.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/rfs_mc.cpp 8.8.1.really.8.7.7-1/src/vma/dev/rfs_mc.cpp
--- 8.8.1-1/src/vma/dev/rfs_mc.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/rfs_mc.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/rfs_mc.h 8.8.1.really.8.7.7-1/src/vma/dev/rfs_mc.h
--- 8.8.1-1/src/vma/dev/rfs_mc.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/rfs_mc.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/rfs_uc.cpp 8.8.1.really.8.7.7-1/src/vma/dev/rfs_uc.cpp
--- 8.8.1-1/src/vma/dev/rfs_uc.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/rfs_uc.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/rfs_uc.h 8.8.1.really.8.7.7-1/src/vma/dev/rfs_uc.h
--- 8.8.1-1/src/vma/dev/rfs_uc.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/rfs_uc.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/rfs_uc_tcp_gro.cpp 8.8.1.really.8.7.7-1/src/vma/dev/rfs_uc_tcp_gro.cpp
--- 8.8.1-1/src/vma/dev/rfs_uc_tcp_gro.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/rfs_uc_tcp_gro.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/rfs_uc_tcp_gro.h 8.8.1.really.8.7.7-1/src/vma/dev/rfs_uc_tcp_gro.h
--- 8.8.1-1/src/vma/dev/rfs_uc_tcp_gro.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/rfs_uc_tcp_gro.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/ring_allocation_logic.cpp 8.8.1.really.8.7.7-1/src/vma/dev/ring_allocation_logic.cpp
--- 8.8.1-1/src/vma/dev/ring_allocation_logic.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ring_allocation_logic.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/ring_allocation_logic.h 8.8.1.really.8.7.7-1/src/vma/dev/ring_allocation_logic.h
--- 8.8.1-1/src/vma/dev/ring_allocation_logic.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ring_allocation_logic.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/ring_bond.cpp 8.8.1.really.8.7.7-1/src/vma/dev/ring_bond.cpp
--- 8.8.1-1/src/vma/dev/ring_bond.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ring_bond.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -31,22 +31,8 @@
  */
 
 #include "ring_bond.h"
-#include <netinet/tcp.h>
-#include <netinet/udp.h>
-#include <netinet/igmp.h>
-
-#include "utils/bullseye.h"
-#include "vma/util/utils.h"
-#include "vma/proto/ip_frag.h"
-#include "vma/proto/L2_address.h"
-#include "vma/proto/igmp_mgr.h"
-#include "vma/sock/sockinfo_tcp.h"
-#include "vma/sock/fd_collection.h"
-#include "vma/dev/rfs_mc.h"
-#include "vma/dev/rfs_uc.h"
-#include "vma/dev/rfs_uc_tcp_gro.h"
-#include "vma/dev/cq_mgr.h"
-#include "vma/dev/ring_slave.h"
+
+#include "vma/sock/sockinfo.h"
 #include "vma/dev/ring_simple.h"
 #include "vma/dev/ring_tap.h"
 
@@ -58,7 +44,6 @@
 /* Set limitation for number of rings for bonding device */
 #define MAX_NUM_RING_RESOURCES 10
 
-
 ring_bond::ring_bond(int if_index) :
 	ring(),
 	m_lock_ring_rx("ring_bond:lock_rx"), m_lock_ring_tx("ring_bond:lock_tx")
@@ -552,12 +537,12 @@ int ring_bond::request_notification(cq_t
 	return ret;
 }
 
-void ring_bond::inc_tx_retransmissions(ring_user_id_t id)
+void ring_bond::inc_tx_retransmissions_stats(ring_user_id_t id)
 {
 	auto_unlocker lock(m_lock_ring_tx);
 	ring_slave* active_ring = m_bond_rings[id];
 	if (likely(active_ring->m_active)) {
-		active_ring->inc_tx_retransmissions(id);
+		active_ring->inc_tx_retransmissions_stats(id);
 	}
 }
 
@@ -595,10 +580,9 @@ bool ring_bond::reclaim_recv_buffers(des
 	return true;
 }
 
-bool ring_bond::reclaim_recv_buffers(mem_buf_desc_t* rx_reuse_lst)
+bool ring_bond::reclaim_recv_buffers(mem_buf_desc_t*)
 {
 	/* TODO: not supported */
-	NOT_IN_USE(rx_reuse_lst);
 	return false;
 }
 
@@ -777,23 +761,8 @@ int ring_bond::modify_ratelimit(struct v
 	return 0;
 }
 
-bool ring_bond::is_ratelimit_supported(struct vma_rate_limit_t &rate_limit)
-{
-	for (uint32_t i = 0; i < m_bond_rings.size(); i++) {
-		if (m_bond_rings[i] &&
-		    !m_bond_rings[i]->is_ratelimit_supported(rate_limit)) {
-				return false;
-		}
-	}
-	return true;
-}
-
-int ring_bond::socketxtreme_poll(struct vma_completion_t *vma_completions, unsigned int ncompletions, int flags)
+int ring_bond::socketxtreme_poll(struct vma_completion_t *, unsigned int, int)
 {
-	NOT_IN_USE(vma_completions);
-	NOT_IN_USE(ncompletions);
-	NOT_IN_USE(flags);
-
 	return 0;
 }
 
diff -pruN 8.8.1-1/src/vma/dev/ring_bond.h 8.8.1.really.8.7.7-1/src/vma/dev/ring_bond.h
--- 8.8.1-1/src/vma/dev/ring_bond.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ring_bond.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -34,9 +34,8 @@
 #define RING_BOND_H
 
 #include "ring.h"
-#include "ring_slave.h"
-#include "ring_tap.h"
-#include "vma/util/agent.h"
+
+#include "vma/dev/ring_tap.h"
 #include "vma/dev/net_device_table_mgr.h"
 
 typedef std::vector<ring_slave*> ring_slave_vector_t;
@@ -46,7 +45,6 @@ struct flow_sink_t {
 	pkt_rcvr_sink *sink;
 };
 
-
 class ring_bond : public ring {
 
 public:
@@ -69,7 +67,7 @@ public:
 	virtual void		restart();
 	virtual mem_buf_desc_t* mem_buf_tx_get(ring_user_id_t id, bool b_block, int n_num_mem_bufs = 1);
 	virtual int		mem_buf_tx_release(mem_buf_desc_t* p_mem_buf_desc_list, bool b_accounting, bool trylock = false);
-	virtual void		inc_tx_retransmissions(ring_user_id_t id);
+	virtual void		inc_tx_retransmissions_stats(ring_user_id_t id);
 	virtual void		send_ring_buffer(ring_user_id_t id, vma_ibv_send_wr* p_send_wqe, vma_wr_tx_packet_attr attr);
 	virtual void		send_lwip_buffer(ring_user_id_t id, vma_ibv_send_wr* p_send_wqe, vma_wr_tx_packet_attr attr);
 	virtual void		mem_buf_desc_return_single_to_owner_tx(mem_buf_desc_t* p_mem_buf_desc);
@@ -78,7 +76,6 @@ public:
 	virtual ring_user_id_t	generate_id(const address_t src_mac, const address_t dst_mac, uint16_t eth_proto, uint16_t encap_proto, uint32_t src_ip, uint32_t dst_ip, uint16_t src_port, uint16_t dst_port);
 	virtual bool 		get_hw_dummy_send_support(ring_user_id_t id, vma_ibv_send_wr* p_send_wqe);
 	virtual int		modify_ratelimit(struct vma_rate_limit_t &rate_limit);
-	virtual bool		is_ratelimit_supported(struct vma_rate_limit_t &rate_limit);
 	int 			socketxtreme_poll(struct vma_completion_t *vma_completions, unsigned int ncompletions, int flags);
 	virtual void    slave_create(int if_index) = 0;
 	virtual void    slave_destroy(int if_index);
diff -pruN 8.8.1-1/src/vma/dev/ring.cpp 8.8.1.really.8.7.7-1/src/vma/dev/ring.cpp
--- 8.8.1-1/src/vma/dev/ring.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ring.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/ring_eth_cb.cpp 8.8.1.really.8.7.7-1/src/vma/dev/ring_eth_cb.cpp
--- 8.8.1-1/src/vma/dev/ring_eth_cb.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ring_eth_cb.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -100,7 +100,7 @@ ring_eth_cb::ring_eth_cb(int if_index, v
 	}
 	// stride size is headers + user payload aligned to power of 2
 	uint16_t net_len = 0;
-	if (get_partition()) {
+	if (m_partition) {
 		net_len = ETH_VLAN_HDR_LEN + sizeof(struct iphdr) + sizeof(struct udphdr);
 	} else {
 		net_len = ETH_HDR_LEN + sizeof(struct iphdr) + sizeof(struct udphdr);
@@ -184,7 +184,7 @@ qp_mgr* ring_eth_cb::create_qp_mgr(const
 				   struct ibv_comp_channel *p_rx_comp_event_channel)
 {
 	return new qp_mgr_mp(this, ib_ctx, port_num, p_rx_comp_event_channel,
-			get_tx_num_wr(), get_partition(), m_buff_data,
+			get_tx_num_wr(), m_partition, m_buff_data,
 			m_external_mem);
 }
 
diff -pruN 8.8.1-1/src/vma/dev/ring_eth_cb.h 8.8.1.really.8.7.7-1/src/vma/dev/ring_eth_cb.h
--- 8.8.1-1/src/vma/dev/ring_eth_cb.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ring_eth_cb.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/ring_eth_direct.cpp 8.8.1.really.8.7.7-1/src/vma/dev/ring_eth_direct.cpp
--- 8.8.1-1/src/vma/dev/ring_eth_direct.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ring_eth_direct.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -58,7 +58,7 @@ qp_mgr* ring_eth_direct::create_qp_mgr(c
 {
 #if defined(DEFINED_DIRECT_VERBS)
 	return new qp_mgr_eth_direct(this, ib_ctx, port_num, p_rx_comp_event_channel,
-				     get_tx_num_wr(), get_partition());
+				     get_tx_num_wr(), m_partition);
 #endif
 	NOT_IN_USE(ib_ctx);
 	NOT_IN_USE(port_num);
diff -pruN 8.8.1-1/src/vma/dev/ring_eth_direct.h 8.8.1.really.8.7.7-1/src/vma/dev/ring_eth_direct.h
--- 8.8.1-1/src/vma/dev/ring_eth_direct.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ring_eth_direct.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/ring.h 8.8.1.really.8.7.7-1/src/vma/dev/ring.h
--- 8.8.1-1/src/vma/dev/ring.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ring.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -39,9 +39,6 @@
 #include "vma/sock/socket_fd_api.h"
 
 class pkt_rcvr_sink;
-class ib_ctx_handler;
-class L2_address;
-class ring_slave;
 
 #define ring_logpanic 		__log_info_panic
 #define ring_logerr			__log_info_err
@@ -109,14 +106,13 @@ public:
 	virtual void		adapt_cq_moderation() = 0;
 	virtual void		mem_buf_desc_return_single_to_owner_tx(mem_buf_desc_t* p_mem_buf_desc) = 0;
 
-	virtual void		inc_tx_retransmissions(ring_user_id_t id) = 0;
+	virtual void		inc_tx_retransmissions_stats(ring_user_id_t id) = 0;
 	virtual bool		is_member(ring_slave* rng) = 0;
 	virtual bool		is_active_member(ring_slave* rng, ring_user_id_t id) = 0;
 	ring*			get_parent() { return m_parent; };
 	ring_user_id_t		generate_id() { return 0; };
 	virtual ring_user_id_t	generate_id(const address_t src_mac, const address_t dst_mac, uint16_t eth_proto, uint16_t encap_proto, uint32_t src_ip, uint32_t dst_ip, uint16_t src_port, uint16_t dst_port) = 0;
 	virtual int		modify_ratelimit(struct vma_rate_limit_t &rate_limit) = 0;
-	virtual bool		is_ratelimit_supported(struct vma_rate_limit_t &rate_limit) = 0;
 	virtual int		reg_mr(void *addr, size_t length, uint32_t &lkey) { NOT_IN_USE(addr); NOT_IN_USE(length); NOT_IN_USE(lkey); return -1;};
 	virtual int		dereg_mr(void *addr, size_t length) { NOT_IN_USE(addr);NOT_IN_USE(length); return -1;};
 
diff -pruN 8.8.1-1/src/vma/dev/ring_profile.cpp 8.8.1.really.8.7.7-1/src/vma/dev/ring_profile.cpp
--- 8.8.1-1/src/vma/dev/ring_profile.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ring_profile.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/ring_profile.h 8.8.1.really.8.7.7-1/src/vma/dev/ring_profile.h
--- 8.8.1-1/src/vma/dev/ring_profile.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ring_profile.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/ring_simple.cpp 8.8.1.really.8.7.7-1/src/vma/dev/ring_simple.cpp
--- 8.8.1-1/src/vma/dev/ring_simple.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ring_simple.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -33,26 +33,11 @@
 
 #include "ring_simple.h"
 
-#include <netinet/tcp.h>
-#include <netinet/udp.h>
-#include <netinet/igmp.h>
-
-#include "utils/bullseye.h"
-#include "vma/util/utils.h"
 #include "vma/util/valgrind.h"
 #include "vma/util/sg_array.h"
-#include "vma/proto/ip_frag.h"
-#include "vma/proto/L2_address.h"
-#include "vma/proto/igmp_mgr.h"
-#include "vma/sock/pkt_rcvr_sink.h"
-#include "vma/sock/sockinfo_tcp.h"
 #include "vma/sock/fd_collection.h"
-#include "vma/dev/rfs_mc.h"
-#include "vma/dev/rfs_uc.h"
-#include "vma/dev/rfs_uc_tcp_gro.h"
-#include "vma/dev/cq_mgr.h"
 #if defined(DEFINED_DIRECT_VERBS)
-#include "qp_mgr_eth_mlx5.h"
+#include "vma/dev/qp_mgr_eth_mlx5.h"
 #endif
 
 #undef  MODULE_NAME
@@ -66,9 +51,6 @@
 #define RING_LOCK_AND_RUN(__lock__, __func_and_params__) 	\
 		__lock__.lock(); __func_and_params__; __lock__.unlock();
 
-#define RING_LOCK_RUN_AND_UPDATE_RET(__lock__, __func_and_params__) 	\
-		__lock__.lock(); ret = __func_and_params__; __lock__.unlock();
-
 #define RING_TRY_LOCK_RUN_AND_UPDATE_RET(__lock__, __func_and_params__) \
 		if (!__lock__.trylock()) { ret = __func_and_params__; __lock__.unlock(); } \
 		else { errno = EBUSY; }
@@ -104,31 +86,15 @@ qp_mgr* ring_eth::create_qp_mgr(const ib
 {
 #if defined(DEFINED_DIRECT_VERBS)
 	if (qp_mgr::is_lib_mlx5(((ib_ctx_handler*)ib_ctx)->get_ibname())) {
-		return new qp_mgr_eth_mlx5(this, ib_ctx, port_num, p_rx_comp_event_channel, get_tx_num_wr(), get_partition());
+		return new qp_mgr_eth_mlx5(this, ib_ctx, port_num, p_rx_comp_event_channel, get_tx_num_wr(), m_partition);
 	}
 #endif
-	return new qp_mgr_eth(this, ib_ctx, port_num, p_rx_comp_event_channel, get_tx_num_wr(), get_partition());
-}
-
-bool ring_eth::is_ratelimit_supported(struct vma_rate_limit_t &rate_limit)
-{
-#ifdef DEFINED_IBV_EXP_QP_RATE_LIMIT
-	return m_p_qp_mgr->is_ratelimit_supported(m_p_ib_ctx->get_ibv_device_attr(), rate_limit);
-#else
-	NOT_IN_USE(rate_limit);
-	return false;
-#endif
+	return new qp_mgr_eth(this, ib_ctx, port_num, p_rx_comp_event_channel, get_tx_num_wr(), m_partition);
 }
 
 qp_mgr* ring_ib::create_qp_mgr(const ib_ctx_handler* ib_ctx, uint8_t port_num, struct ibv_comp_channel* p_rx_comp_event_channel)
 {
-	return new qp_mgr_ib(this, ib_ctx, port_num, p_rx_comp_event_channel, get_tx_num_wr(), get_partition());
-}
-
-bool ring_ib::is_ratelimit_supported(struct vma_rate_limit_t &rate_limit)
-{
-	NOT_IN_USE(rate_limit);
-	return false;
+	return new qp_mgr_ib(this, ib_ctx, port_num, p_rx_comp_event_channel, get_tx_num_wr(), m_partition);
 }
 
 ring_simple::ring_simple(int if_index, ring* parent, ring_type_t type):
@@ -136,17 +102,12 @@ ring_simple::ring_simple(int if_index, r
 	m_p_ib_ctx(NULL),
 	m_p_qp_mgr(NULL),
 	m_p_cq_mgr_rx(NULL),
-	m_lock_ring_rx("ring_simple:lock_rx"),
 	m_p_cq_mgr_tx(NULL),
-	m_lock_ring_tx("ring_simple:lock_tx"),
 	m_lock_ring_tx_buf_wait("ring:lock_tx_buf_wait"), m_tx_num_bufs(0), m_tx_num_wr(0), m_tx_num_wr_free(0),
 	m_b_qp_tx_first_flushed_completion_handled(false), m_missing_buf_ref_count(0),
 	m_tx_lkey(0),
 	m_gro_mgr(safe_mce_sys().gro_streams_max, MAX_GRO_BUFS), m_up(false),
 	m_p_rx_comp_event_channel(NULL), m_p_tx_comp_event_channel(NULL), m_p_l2_addr(NULL)
-	, m_b_sysvar_eth_mc_l2_only_rules(safe_mce_sys().eth_mc_l2_only_rules)
-	, m_b_sysvar_mc_force_flowtag(safe_mce_sys().mc_force_flowtag)
-	, m_flow_tag_enabled(false)
 {
 	net_device_val* p_ndev = g_p_net_device_table_mgr->get_net_device_val(m_parent->get_if_index());
 	const slave_data_t * p_slave = p_ndev->get_slave(get_if_index());
@@ -168,16 +129,9 @@ ring_simple::ring_simple(int if_index, r
 	}
 	BULLSEYE_EXCLUDE_BLOCK_END
 
-	/* initialize m_partition in ring_eth() or ring_ib() */
-	m_partition = 0;
-
 	/* initialization basing on ndev information */
-	m_local_if = p_ndev->get_local_addr();
 	m_mtu = p_ndev->get_mtu();
 
-	// coverity[uninit_member]
-	m_tx_pool.set_id("ring_simple (%p) : m_tx_pool", this);
-
 	memset(&m_cq_moderation_info, 0, sizeof(m_cq_moderation_info));
 
 	m_socketxtreme.active = safe_mce_sys().enable_socketxtreme;
@@ -243,9 +197,6 @@ ring_simple::~ring_simple()
 			((m_tx_num_wr - m_tx_num_wr_free) ? "bad accounting!!":"good accounting"), (m_tx_num_wr - m_tx_num_wr_free));
 	ring_logdbg("Rx buffer pool: %d free global buffers available", m_tx_pool.size());
 
-	// Release Tx buffers
-	g_buffer_pool_tx->put_buffers_thread_safe(&m_tx_pool, m_tx_pool.size());
-
 	// Release verbs resources
 	if (m_p_tx_comp_event_channel) {
 		IF_VERBS_FAILURE(ibv_destroy_comp_channel(m_p_tx_comp_event_channel)) {
@@ -321,15 +272,6 @@ void ring_simple::create_resources()
 		g_p_fd_collection->add_cq_channel_fd(m_p_tx_comp_event_channel->fd, this);
 	}
 
-#if 0
-TODO:
-The following 3 lines were copied form below. Can it be OK for experimental if these lines
-remain below as in master?
-	m_tx_lkey = g_buffer_pool_tx->find_lkey_by_ib_ctx_thread_safe(p_ring_info->p_ib_ctx);
-
-	request_more_tx_buffers(RING_TX_BUFS_COMPENSATE);
-	m_tx_num_bufs = m_tx_pool.size();
-#endif // 0
 	m_p_qp_mgr = create_qp_mgr(m_p_ib_ctx, p_slave->port_num, m_p_rx_comp_event_channel);
 	BULLSEYE_EXCLUDE_BLOCK_START
 	if (m_p_qp_mgr == NULL) {
@@ -357,750 +299,6 @@ remain below as in master?
 	ring_logdbg("new ring_simple() completed");
 }
 
-bool ring_simple::attach_flow(flow_tuple& flow_spec_5t, pkt_rcvr_sink *sink)
-{
-	rfs* p_rfs;
-	rfs* p_tmp_rfs = NULL;
-	sockinfo* si = static_cast<sockinfo*> (sink);
-
-	if (si == NULL)
-		return false;
-
-	uint32_t flow_tag_id = si->get_flow_tag_val(); // spec will not be attached to rule
-	if (!m_flow_tag_enabled) {
-		flow_tag_id = 0;
-	}
-	ring_logdbg("flow: %s, with sink (%p), flow tag id %d "
-		    "m_flow_tag_enabled: %d", flow_spec_5t.to_str(), si,
-		    flow_tag_id, m_flow_tag_enabled);
-
-	/*
-	 * //auto_unlocker lock(m_lock_ring_rx);
-	 * todo instead of locking the whole function which have many "new" calls,
-	 * we'll only lock the parts that touch the ring members.
-	 * if some of the constructors need the ring locked, we need to modify
-	 * and add separate functions for that, which will be called after ctor with ring locked.
-	 * currently we assume the ctors does not require the ring to be locked.
-	 */
-	m_lock_ring_rx.lock();
-
-	/* Get the appropriate hash map (tcp, uc or mc) from the 5t details */
-	if (flow_spec_5t.is_udp_uc()) {
-		flow_spec_udp_key_t key_udp_uc(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_dst_port());
-		if (flow_tag_id && si->flow_in_reuse()) {
-			flow_tag_id = FLOW_TAG_MASK;
-			ring_logdbg("UC flow tag for socketinfo=%p is disabled: SO_REUSEADDR or SO_REUSEPORT were enabled", si);
-		}
-		p_rfs = m_flow_udp_uc_map.get(key_udp_uc, NULL);
-		if (p_rfs == NULL) {
-			// No rfs object exists so a new one must be created and inserted in the flow map
-			m_lock_ring_rx.unlock();
-			try {
-				p_tmp_rfs = new rfs_uc(&flow_spec_5t, this, NULL, flow_tag_id);
-			} catch(vma_exception& e) {
-				ring_logerr("%s", e.message);
-				return false;
-			}
-			BULLSEYE_EXCLUDE_BLOCK_START
-			if (p_tmp_rfs == NULL) {
-				ring_logerr("Failed to allocate rfs!");
-				return false;
-			}
-			BULLSEYE_EXCLUDE_BLOCK_END
-			m_lock_ring_rx.lock();
-			p_rfs = m_flow_udp_uc_map.get(key_udp_uc, NULL);
-			if (p_rfs) {
-				delete p_tmp_rfs;
-			} else {
-				p_rfs = p_tmp_rfs;
-				m_flow_udp_uc_map.set(key_udp_uc, p_rfs);
-			}
-		}
-	} else if (flow_spec_5t.is_udp_mc()) {
-		flow_spec_udp_key_t key_udp_mc(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_dst_port());
-
-		if (flow_tag_id) {
-			if (m_b_sysvar_mc_force_flowtag || !si->flow_in_reuse()) {
-				ring_logdbg("MC flow tag ID=%d for socketinfo=%p is enabled: force_flowtag=%d, SO_REUSEADDR | SO_REUSEPORT=%d",
-					flow_tag_id, si, m_b_sysvar_mc_force_flowtag, si->flow_in_reuse());
-			} else {
-				flow_tag_id = FLOW_TAG_MASK;
-				ring_logdbg("MC flow tag for socketinfo=%p is disabled: force_flowtag=0, SO_REUSEADDR or SO_REUSEPORT were enabled", si);
-			}
-		}
-		// Note for CX3:
-		// For IB MC flow, the port is zeroed in the ibv_flow_spec when calling to ibv_flow_spec().
-		// It means that for every MC group, even if we have sockets with different ports - only one rule in the HW.
-		// So the hash map below keeps track of the number of sockets per rule so we know when to call ibv_attach and ibv_detach
-		rfs_rule_filter* l2_mc_ip_filter = NULL;
-		if ((m_transport_type == VMA_TRANSPORT_IB && 0 == m_p_qp_mgr->get_underly_qpn()) || m_b_sysvar_eth_mc_l2_only_rules) {
-			rule_filter_map_t::iterator l2_mc_iter = m_l2_mc_ip_attach_map.find(key_udp_mc.dst_ip);
-			if (l2_mc_iter == m_l2_mc_ip_attach_map.end()) { // It means that this is the first time attach called with this MC ip
-				m_l2_mc_ip_attach_map[key_udp_mc.dst_ip].counter = 1;
-			} else {
-				m_l2_mc_ip_attach_map[key_udp_mc.dst_ip].counter = ((l2_mc_iter->second.counter) + 1);
-			}
-		}
-		p_rfs = m_flow_udp_mc_map.get(key_udp_mc, NULL);
-		if (p_rfs == NULL) {		// It means that no rfs object exists so I need to create a new one and insert it to the flow map
-			m_lock_ring_rx.unlock();
-			if ((m_transport_type == VMA_TRANSPORT_IB && 0 == m_p_qp_mgr->get_underly_qpn()) || m_b_sysvar_eth_mc_l2_only_rules) {
-				l2_mc_ip_filter = new rfs_rule_filter(m_l2_mc_ip_attach_map, key_udp_mc.dst_ip, flow_spec_5t);
-			}
-			try {
-				p_tmp_rfs = new rfs_mc(&flow_spec_5t, this, l2_mc_ip_filter, flow_tag_id);
-			} catch(vma_exception& e) {
-				ring_logerr("%s", e.message);
-				return false;
-			} catch(const std::bad_alloc &e) {
-				NOT_IN_USE(e);
-				ring_logerr("Failed to allocate rfs!");
-				return false;
-			}
-			m_lock_ring_rx.lock();
-			p_rfs = m_flow_udp_mc_map.get(key_udp_mc, NULL);
-			if (p_rfs) {
-				delete p_tmp_rfs;
-			} else {
-				p_rfs = p_tmp_rfs;
-				m_flow_udp_mc_map.set(key_udp_mc, p_rfs);
-			}
-		}
-	} else if (flow_spec_5t.is_tcp()) {
-		flow_spec_tcp_key_t key_tcp(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_src_ip(),
-				flow_spec_5t.get_dst_port(), flow_spec_5t.get_src_port());
-		rule_key_t rule_key(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_dst_port());
-		rfs_rule_filter* tcp_dst_port_filter = NULL;
-		if (safe_mce_sys().tcp_3t_rules) {
-			rule_filter_map_t::iterator tcp_dst_port_iter = m_tcp_dst_port_attach_map.find(rule_key.key);
-			if (tcp_dst_port_iter == m_tcp_dst_port_attach_map.end()) {
-				m_tcp_dst_port_attach_map[rule_key.key].counter = 1;
-			} else {
-				m_tcp_dst_port_attach_map[rule_key.key].counter = ((tcp_dst_port_iter->second.counter) + 1);
-			}
-		}
-
-		p_rfs = m_flow_tcp_map.get(key_tcp, NULL);
-		if (p_rfs == NULL) {		// It means that no rfs object exists so I need to create a new one and insert it to the flow map
-			m_lock_ring_rx.unlock();
-			if (safe_mce_sys().tcp_3t_rules) {
-				flow_tuple tcp_3t_only(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_dst_port(), 0, 0, flow_spec_5t.get_protocol());
-				tcp_dst_port_filter = new rfs_rule_filter(m_tcp_dst_port_attach_map, rule_key.key, tcp_3t_only);
-			}
-			if(safe_mce_sys().gro_streams_max && flow_spec_5t.is_5_tuple()) {
-				// When the gro mechanism is being used, packets must be processed in the rfs
-				// layer. This must not be bypassed by using flow tag.
-				if (flow_tag_id) {
-					flow_tag_id = FLOW_TAG_MASK;
-					ring_logdbg("flow_tag_id = %d is disabled to enable TCP GRO socket to be processed on RFS!", flow_tag_id);
-				}
-				p_tmp_rfs = new (std::nothrow)rfs_uc_tcp_gro(&flow_spec_5t, this, tcp_dst_port_filter, flow_tag_id);
-			} else {
-				try {
-					p_tmp_rfs = new (std::nothrow)rfs_uc(&flow_spec_5t, this, tcp_dst_port_filter, flow_tag_id);
-				} catch(vma_exception& e) {
-					ring_logerr("%s", e.message);
-					return false;
-				}
-			}
-			BULLSEYE_EXCLUDE_BLOCK_START
-			if (p_tmp_rfs == NULL) {
-				ring_logerr("Failed to allocate rfs!");
-				return false;
-			}
-			BULLSEYE_EXCLUDE_BLOCK_END
-			/* coverity[double_lock] TODO: RM#1049980 */
-			m_lock_ring_rx.lock();
-			p_rfs = m_flow_tcp_map.get(key_tcp, NULL);
-			if (p_rfs) {
-				delete p_tmp_rfs;
-			} else {
-				p_rfs = p_tmp_rfs;
-				m_flow_tcp_map.set(key_tcp, p_rfs);
-			}
-		}
-	BULLSEYE_EXCLUDE_BLOCK_START
-	} else {
-		m_lock_ring_rx.unlock();
-		ring_logerr("Could not find map (TCP, UC or MC) for requested flow");
-		return false;
-	}
-	BULLSEYE_EXCLUDE_BLOCK_END
-
-	bool ret = p_rfs->attach_flow(sink);
-	if (ret) {
-		if (flow_tag_id && (flow_tag_id != FLOW_TAG_MASK)) {
-			// A flow with FlowTag was attached succesfully, check stored rfs for fast path be tag_id
-			si->set_flow_tag(flow_tag_id);
-			ring_logdbg("flow_tag: %d registration is done!", flow_tag_id);
-		}
-		if (flow_spec_5t.is_tcp() && !flow_spec_5t.is_3_tuple()) {
-			// save the single 5tuple TCP connected socket for improved fast path
-			si->set_tcp_flow_is_5t();
-			ring_logdbg("single 5T TCP update m_tcp_flow_is_5t m_flow_tag_enabled: %d", m_flow_tag_enabled);
-		}
-	} else {
-		ring_logerr("attach_flow=%d failed!", ret);
-	}
-	/* coverity[double_unlock] TODO: RM#1049980 */
-	m_lock_ring_rx.unlock();
-	return ret;
-}
-
-bool ring_simple::detach_flow(flow_tuple& flow_spec_5t, pkt_rcvr_sink* sink)
-{
-	rfs* p_rfs = NULL;
-
-	ring_logdbg("flow: %s, with sink (%p)", flow_spec_5t.to_str(), sink);
-
-	auto_unlocker lock(m_lock_ring_rx);
-
-	/* Get the appropriate hash map (tcp, uc or mc) from the 5t details */
-	if (flow_spec_5t.is_udp_uc()) {
-		flow_spec_udp_key_t key_udp_uc(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_dst_port());
-		p_rfs = m_flow_udp_uc_map.get(key_udp_uc, NULL);
-		BULLSEYE_EXCLUDE_BLOCK_START
-		if (p_rfs == NULL) {
-			ring_logdbg("Could not find rfs object to detach!");
-			return false;
-		}
-		BULLSEYE_EXCLUDE_BLOCK_END
-		p_rfs->detach_flow(sink);
-		if (p_rfs->get_num_of_sinks() == 0) {
-			BULLSEYE_EXCLUDE_BLOCK_START
-			if (!(m_flow_udp_uc_map.del(key_udp_uc))) {
-				ring_logdbg("Could not find rfs object to delete in ring udp uc hash map!");
-			}
-			BULLSEYE_EXCLUDE_BLOCK_END
-			delete p_rfs;
-		}
-	} else if (flow_spec_5t.is_udp_mc()) {
-		int keep_in_map = 1;
-		flow_spec_udp_key_t key_udp_mc(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_dst_port());
-		if (m_transport_type == VMA_TRANSPORT_IB || m_b_sysvar_eth_mc_l2_only_rules) {
-			rule_filter_map_t::iterator l2_mc_iter = m_l2_mc_ip_attach_map.find(key_udp_mc.dst_ip);
-			BULLSEYE_EXCLUDE_BLOCK_START
-			if (l2_mc_iter == m_l2_mc_ip_attach_map.end()) {
-				ring_logdbg("Could not find matching counter for the MC group!");
-			BULLSEYE_EXCLUDE_BLOCK_END
-			} else {
-				keep_in_map = m_l2_mc_ip_attach_map[key_udp_mc.dst_ip].counter = MAX(0 , ((l2_mc_iter->second.counter) - 1));
-			}
-		}
-		p_rfs = m_flow_udp_mc_map.get(key_udp_mc, NULL);
-		BULLSEYE_EXCLUDE_BLOCK_START
-		if (p_rfs == NULL) {
-			ring_logdbg("Could not find rfs object to detach!");
-			return false;
-		}
-		BULLSEYE_EXCLUDE_BLOCK_END
-		p_rfs->detach_flow(sink);
-		if(!keep_in_map){
-			m_l2_mc_ip_attach_map.erase(m_l2_mc_ip_attach_map.find(key_udp_mc.dst_ip));
-		}
-		if (p_rfs->get_num_of_sinks() == 0) {
-			BULLSEYE_EXCLUDE_BLOCK_START
-			if (!(m_flow_udp_mc_map.del(key_udp_mc))) {
-				ring_logdbg("Could not find rfs object to delete in ring udp mc hash map!");
-			}
-			BULLSEYE_EXCLUDE_BLOCK_END
-			delete p_rfs;
-		}
-	} else if (flow_spec_5t.is_tcp()) {
-		int keep_in_map = 1;
-		flow_spec_tcp_key_t key_tcp(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_src_ip(),
-				flow_spec_5t.get_dst_port(), flow_spec_5t.get_src_port());
-		rule_key_t rule_key(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_dst_port());
-		if (safe_mce_sys().tcp_3t_rules) {
-			rule_filter_map_t::iterator tcp_dst_port_iter = m_tcp_dst_port_attach_map.find(rule_key.key);
-			BULLSEYE_EXCLUDE_BLOCK_START
-			if (tcp_dst_port_iter == m_tcp_dst_port_attach_map.end()) {
-				ring_logdbg("Could not find matching counter for TCP src port!");
-				BULLSEYE_EXCLUDE_BLOCK_END
-			} else {
-				keep_in_map = m_tcp_dst_port_attach_map[rule_key.key].counter = MAX(0 , ((tcp_dst_port_iter->second.counter) - 1));
-			}
-		}
-		p_rfs = m_flow_tcp_map.get(key_tcp, NULL);
-		BULLSEYE_EXCLUDE_BLOCK_START
-		if (p_rfs == NULL) {
-			ring_logdbg("Could not find rfs object to detach!");
-			return false;
-		}
-		BULLSEYE_EXCLUDE_BLOCK_END
-
-		p_rfs->detach_flow(sink);
-		if(!keep_in_map){
-			m_tcp_dst_port_attach_map.erase(m_tcp_dst_port_attach_map.find(rule_key.key));
-		}
-		if (p_rfs->get_num_of_sinks() == 0) {
-			BULLSEYE_EXCLUDE_BLOCK_START
-			if (!(m_flow_tcp_map.del(key_tcp))) {
-				ring_logdbg("Could not find rfs object to delete in ring tcp hash map!");
-			}
-			BULLSEYE_EXCLUDE_BLOCK_END
-			delete p_rfs;
-		}
-	BULLSEYE_EXCLUDE_BLOCK_START
-	} else {
-		ring_logerr("Could not find map (TCP, UC or MC) for requested flow");
-		return false;
-	}
-	BULLSEYE_EXCLUDE_BLOCK_END
-
-	return true;
-}
-
-#ifndef IGMP_V3_MEMBERSHIP_REPORT
-#define IGMP_V3_MEMBERSHIP_REPORT	0x22	/* V3 version of 0x11 */ /* ALEXR: taken from <linux/igmp.h> */
-#endif
-
-// String formating helper function for IGMP
-const char* priv_igmp_type_tostr(uint8_t igmptype)
-{
-	switch (igmptype) {
-	case IGMP_HOST_MEMBERSHIP_QUERY:        return "IGMP_QUERY";
-	case IGMP_HOST_MEMBERSHIP_REPORT:       return "IGMPV1_REPORT";
-	case IGMP_V2_MEMBERSHIP_REPORT:     	return "IGMPV2_REPORT";
-	case IGMP_V3_MEMBERSHIP_REPORT:     	return "IGMPV3_REPORT";
-	case IGMP_HOST_LEAVE_MESSAGE:           return "IGMP_LEAVE_MESSAGE";
-	default:                                return "IGMP type UNKNOWN";
-	}
-}
-
-// calling sockinfo callback with RFS bypass
-static inline bool check_rx_packet(sockinfo *si, mem_buf_desc_t* p_rx_wc_buf_desc, void *fd_ready_array)
-{
-	// Dispatching: Notify new packet to the FIRST registered receiver ONLY
-#ifdef RDTSC_MEASURE_RX_DISPATCH_PACKET
-	RDTSC_TAKE_START(g_rdtsc_instr_info_arr[RDTSC_FLOW_RX_DISPATCH_PACKET]);
-#endif //RDTSC_MEASURE_RX_DISPATCH_PACKET
-
-	p_rx_wc_buf_desc->reset_ref_count();
-	p_rx_wc_buf_desc->inc_ref_count();
-
-	si->rx_input_cb(p_rx_wc_buf_desc,fd_ready_array);
-
-#ifdef RDTSC_MEASURE_RX_DISPATCH_PACKET
-	RDTSC_TAKE_END(g_rdtsc_instr_info_arr[RDTSC_FLOW_RX_DISPATCH_PACKET]);
-#endif //RDTSC_MEASURE_RX_DISPATCH_PACKET
-
-	// Check packet ref_count to see the last receiver is interested in this packet
-	if (p_rx_wc_buf_desc->dec_ref_count() > 1) {
-		// The sink will be responsible to return the buffer to CQ for reuse
-		return true;
-	}
-	// Reuse this data buffer & mem_buf_desc
-	return false;
-}
-
-// All CQ wce come here for some basic sanity checks and then are distributed to the correct ring handler
-// Return values: false = Reuse this data buffer & mem_buf_desc
-bool ring_simple::rx_process_buffer(mem_buf_desc_t* p_rx_wc_buf_desc, void* pv_fd_ready_array)
-{
-	size_t sz_data = 0;
-	size_t transport_header_len;
-	uint16_t ip_hdr_len = 0;
-	uint16_t ip_tot_len = 0;
-	uint16_t ip_frag_off = 0;
-	uint16_t n_frag_offset = 0;
-	struct ethhdr* p_eth_h = (struct ethhdr*)(p_rx_wc_buf_desc->p_buffer);
-	struct iphdr* p_ip_h = NULL;
-	struct udphdr* p_udp_h = NULL;
-
-	// Validate buffer size
-	sz_data = p_rx_wc_buf_desc->sz_data;
-	if (unlikely(sz_data > p_rx_wc_buf_desc->sz_buffer)) {
-		if (sz_data == IP_FRAG_FREED) {
-			ring_logfuncall("Rx buffer dropped - old fragment part");
-		} else {
-			ring_logwarn("Rx buffer dropped - buffer too small (%d, %d)", sz_data, p_rx_wc_buf_desc->sz_buffer);
-		}
-		return false;
-	}
-
-	m_cq_moderation_info.bytes += sz_data;
-	++m_cq_moderation_info.packets;
-
-	m_p_ring_stat->n_rx_byte_count += sz_data;
-	++m_p_ring_stat->n_rx_pkt_count;
-
-	// This is an internal function (within ring and 'friends'). No need for lock mechanism.
-	if (likely(m_flow_tag_enabled && p_rx_wc_buf_desc->rx.flow_tag_id &&
-		   p_rx_wc_buf_desc->rx.flow_tag_id != FLOW_TAG_MASK &&
-		   !p_rx_wc_buf_desc->rx.is_sw_csum_need)) {
-		sockinfo* si = NULL;
-		// trying to get sockinfo per flow_tag_id-1 as it was incremented at attach
-		// to allow mapping sockfd=0
-		si = static_cast <sockinfo* >(g_p_fd_collection->get_sockfd(p_rx_wc_buf_desc->rx.flow_tag_id-1));
-
-		if (likely((si != NULL) && si->flow_tag_enabled())) { 
-			// will process packets with set flow_tag_id and enabled for the socket
-			if (p_eth_h->h_proto == htons(ETH_P_8021Q)) {
-				// Handle VLAN header as next protocol
-				transport_header_len = ETH_VLAN_HDR_LEN;
-			} else {
-				transport_header_len = ETH_HDR_LEN;
-			}
-			p_ip_h = (struct iphdr*)(p_rx_wc_buf_desc->p_buffer + transport_header_len);
-			ip_hdr_len = 20; //(int)(p_ip_h->ihl)*4;
-			ip_tot_len = ntohs(p_ip_h->tot_len);
-
-			ring_logfunc("FAST PATH Rx packet info: transport_header_len: %d, IP_header_len: %d L3 proto: %d tcp_5t: %d",
-				transport_header_len, p_ip_h->ihl, p_ip_h->protocol, si->tcp_flow_is_5t());
-
-			if (likely(si->tcp_flow_is_5t())) {
-				// we have a single 5tuple TCP connected socket, use simpler fast path
-				struct tcphdr* p_tcp_h = (struct tcphdr*)((uint8_t*)p_ip_h + ip_hdr_len);
-
-				// Update the L3 and L4 info
-				p_rx_wc_buf_desc->rx.src.sin_family      = AF_INET;
-				p_rx_wc_buf_desc->rx.src.sin_port        = p_tcp_h->source;
-				p_rx_wc_buf_desc->rx.src.sin_addr.s_addr = p_ip_h->saddr;
-
-				p_rx_wc_buf_desc->rx.dst.sin_family      = AF_INET;
-				p_rx_wc_buf_desc->rx.dst.sin_port        = p_tcp_h->dest;
-				p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr = p_ip_h->daddr;
-				// Update packet descriptor with datagram base address and length
-				p_rx_wc_buf_desc->rx.frag.iov_base = (uint8_t*)p_tcp_h + sizeof(struct tcphdr);
-				p_rx_wc_buf_desc->rx.frag.iov_len  = ip_tot_len - ip_hdr_len - sizeof(struct tcphdr);
-				p_rx_wc_buf_desc->rx.sz_payload    = ip_tot_len - ip_hdr_len - p_tcp_h->doff*4;
-
-				p_rx_wc_buf_desc->rx.tcp.p_ip_h                 = p_ip_h;
-				p_rx_wc_buf_desc->rx.tcp.p_tcp_h                = p_tcp_h;
-				p_rx_wc_buf_desc->rx.tcp.n_transport_header_len = transport_header_len;
-				p_rx_wc_buf_desc->rx.n_frags = 1;
-
-				ring_logfunc("FAST PATH Rx TCP segment info: src_port=%d, dst_port=%d, flags='%s%s%s%s%s%s' seq=%u, ack=%u, win=%u, payload_sz=%u",
-					ntohs(p_tcp_h->source), ntohs(p_tcp_h->dest),
-					p_tcp_h->urg?"U":"", p_tcp_h->ack?"A":"", p_tcp_h->psh?"P":"",
-					p_tcp_h->rst?"R":"", p_tcp_h->syn?"S":"", p_tcp_h->fin?"F":"",
-					ntohl(p_tcp_h->seq), ntohl(p_tcp_h->ack_seq), ntohs(p_tcp_h->window),
-					p_rx_wc_buf_desc->rx.sz_payload);
-
-				return check_rx_packet(si, p_rx_wc_buf_desc, pv_fd_ready_array);
-
-			} else if (likely(p_ip_h->protocol==IPPROTO_UDP)) {
-				// Get the udp header pointer + udp payload size
-				p_udp_h = (struct udphdr*)((uint8_t*)p_ip_h + ip_hdr_len);
-
-				// Update the L3 and L4 info
-				p_rx_wc_buf_desc->rx.src.sin_family      = AF_INET;
-				p_rx_wc_buf_desc->rx.src.sin_port        = p_udp_h->source;
-				p_rx_wc_buf_desc->rx.src.sin_addr.s_addr = p_ip_h->saddr;
-
-				p_rx_wc_buf_desc->rx.dst.sin_family      = AF_INET;
-				p_rx_wc_buf_desc->rx.dst.sin_port        = p_udp_h->dest;
-				p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr = p_ip_h->daddr;
-				// Update packet descriptor with datagram base address and length
-				p_rx_wc_buf_desc->rx.frag.iov_base = (uint8_t*)p_udp_h + sizeof(struct udphdr);
-				p_rx_wc_buf_desc->rx.frag.iov_len  = ip_tot_len - ip_hdr_len - sizeof(struct udphdr);
-				p_rx_wc_buf_desc->rx.sz_payload    = ntohs(p_udp_h->len) - sizeof(struct udphdr);
-
-				p_rx_wc_buf_desc->rx.udp.local_if        = m_local_if;
-				p_rx_wc_buf_desc->rx.n_frags = 1;
-
-				ring_logfunc("FAST PATH Rx UDP datagram info: src_port=%d, dst_port=%d, payload_sz=%d, csum=%#x",
-					     ntohs(p_udp_h->source), ntohs(p_udp_h->dest), p_rx_wc_buf_desc->rx.sz_payload, p_udp_h->check);
-
-				return check_rx_packet(si, p_rx_wc_buf_desc, pv_fd_ready_array);
-			}
-		}
-	}
-
-	// Validate transport type headers
-	switch (m_transport_type) {
-	case VMA_TRANSPORT_IB:
-	{
-		// Get the data buffer start pointer to the ipoib header pointer
-		struct ipoibhdr* p_ipoib_h = (struct ipoibhdr*)(p_rx_wc_buf_desc->p_buffer + GRH_HDR_LEN);
-
-		transport_header_len = GRH_HDR_LEN + IPOIB_HDR_LEN;
-
-		// Validate IPoIB header
-		if (unlikely(p_ipoib_h->ipoib_header != htonl(IPOIB_HEADER))) {
-			ring_logwarn("Rx buffer dropped - Invalid IPOIB Header Type (%#x : %#x)", p_ipoib_h->ipoib_header, htonl(IPOIB_HEADER));
-			return false;
-		}
-	}
-	break;
-	case VMA_TRANSPORT_ETH:
-	{
-//		printf("\nring_simple::rx_process_buffer\n");
-//		{
-//			struct ethhdr* p_eth_h = (struct ethhdr*)(p_rx_wc_buf_desc->p_buffer);
-//
-//			int i = 0;
-//			printf("p_eth_h->h_dest [0]=%d, [1]=%d, [2]=%d, [3]=%d, [4]=%d, [5]=%d\n",
-//					(uint8_t)p_eth_h->h_dest[0], (uint8_t)p_eth_h->h_dest[1], (uint8_t)p_eth_h->h_dest[2], (uint8_t)p_eth_h->h_dest[3], (uint8_t)p_eth_h->h_dest[4], (uint8_t)p_eth_h->h_dest[5]);
-//			printf("p_eth_h->h_source [0]=%d, [1]=%d, [2]=%d, [3]=%d, [4]=%d, [5]=%d\n",
-//					(uint8_t)p_eth_h->h_source[0], (uint8_t)p_eth_h->h_source[1], (uint8_t)p_eth_h->h_source[2], (uint8_t)p_eth_h->h_source[3], (uint8_t)p_eth_h->h_source[4], (uint8_t)p_eth_h->h_source[5]);
-//
-//			while(i++<62){
-//				printf("%d, ", (uint8_t)p_rx_wc_buf_desc->p_buffer[i]);
-//			}
-//			printf("\n");
-//		}
-
-		uint16_t* p_h_proto = &p_eth_h->h_proto;
-
-		ring_logfunc("Rx buffer Ethernet dst=" ETH_HW_ADDR_PRINT_FMT " <- src=" ETH_HW_ADDR_PRINT_FMT " type=%#x",
-				ETH_HW_ADDR_PRINT_ADDR(p_eth_h->h_dest),
-				ETH_HW_ADDR_PRINT_ADDR(p_eth_h->h_source),
-				htons(*p_h_proto));
-
-		// Handle VLAN header as next protocol
-		struct vlanhdr* p_vlan_hdr = NULL;
-		uint16_t packet_vlan = 0;
-		if (*p_h_proto == htons(ETH_P_8021Q)) {
-			p_vlan_hdr = (struct vlanhdr*)((uint8_t*)p_eth_h + ETH_HDR_LEN);
-			transport_header_len = ETH_VLAN_HDR_LEN;
-			p_h_proto = &p_vlan_hdr->h_vlan_encapsulated_proto;
-			packet_vlan = (htons(p_vlan_hdr->h_vlan_TCI) & VLAN_VID_MASK);
-		} else {
-			transport_header_len = ETH_HDR_LEN;
-		}
-
-		//TODO: Remove this code when handling vlan in flow steering will be available. Change this code if vlan stripping is performed.
-		if((m_partition & VLAN_VID_MASK) != packet_vlan) {
-			ring_logfunc("Rx buffer dropped- Mismatched vlan. Packet vlan = %d, Local vlan = %d", packet_vlan, m_partition & VLAN_VID_MASK);
-			return false;
-		}
-
-		// Validate IP header as next protocol
-		if (unlikely(*p_h_proto != htons(ETH_P_IP))) {
-			ring_logwarn("Rx buffer dropped - Invalid Ethr Type (%#x : %#x)", p_eth_h->h_proto, htons(ETH_P_IP));
-			return false;
-		}
-	}
-	break;
-	default:
-		ring_logwarn("Rx buffer dropped - Unknown transport type %d", m_transport_type);
-		return false;
-	}
-
-	// Jump to IP header - Skip IB (GRH and IPoIB) or Ethernet (MAC) header sizes
-	sz_data -= transport_header_len;
-
-	// Validate size for IPv4 header
-	if (unlikely(sz_data < sizeof(struct iphdr))) {
-		ring_logwarn("Rx buffer dropped - buffer too small for IPv4 header (%d, %d)", sz_data, sizeof(struct iphdr));
-		return false;
-	}
-
-	// Get the ip header pointer
-	p_ip_h = (struct iphdr*)(p_rx_wc_buf_desc->p_buffer + transport_header_len);
-
-	// Drop all non IPv4 packets
-	if (unlikely(p_ip_h->version != IPV4_VERSION)) {
-		ring_logwarn("Rx packet dropped - not IPV4 packet (got version: %#x)", p_ip_h->version);
-		return false;
-	}
-
-	// Check that received buffer size is not smaller then the ip datagram total size
-	ip_tot_len = ntohs(p_ip_h->tot_len);
-	if (unlikely(sz_data < ip_tot_len)) {
-		ring_logwarn("Rx packet dropped - buffer too small for received datagram (RxBuf:%d IP:%d)", sz_data, ip_tot_len);
-		ring_loginfo("Rx packet info (buf->%p, bufsize=%d), id=%d", p_rx_wc_buf_desc->p_buffer, p_rx_wc_buf_desc->sz_data, ntohs(p_ip_h->id));
-		vlog_print_buffer(VLOG_INFO, "rx packet data: ", "\n", (const char*)p_rx_wc_buf_desc->p_buffer, min(112, (int)p_rx_wc_buf_desc->sz_data));
-		return false;
-	} else if (sz_data > ip_tot_len) {
-		p_rx_wc_buf_desc->sz_data -= (sz_data - ip_tot_len);
-	}
-
-	// Read fragmentation parameters
-	ip_frag_off = ntohs(p_ip_h->frag_off);
-	n_frag_offset = (ip_frag_off & FRAGMENT_OFFSET) * 8;
-
-	ring_logfunc("Rx ip packet info: dst=%d.%d.%d.%d, src=%d.%d.%d.%d, packet_sz=%d, offset=%d, id=%d, proto=%s[%d] (local if: %d.%d.%d.%d)",
-			NIPQUAD(p_ip_h->daddr), NIPQUAD(p_ip_h->saddr),
-			(sz_data > ip_tot_len ? ip_tot_len : sz_data), n_frag_offset, ntohs(p_ip_h->id),
-			iphdr_protocol_type_to_str(p_ip_h->protocol), p_ip_h->protocol,
-			NIPQUAD(p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr));
-
-	// Check that the ip datagram has at least the udp header size for the first ip fragment (besides the ip header)
-	ip_hdr_len = (int)(p_ip_h->ihl)*4;
-	if (unlikely((n_frag_offset == 0) && (ip_tot_len < (ip_hdr_len + sizeof(struct udphdr))))) {
-		ring_logwarn("Rx packet dropped - ip packet too small (%d bytes)- udp header cut!", ip_tot_len);
-		return false;
-	}
-
-	// Handle fragmentation
-	p_rx_wc_buf_desc->rx.n_frags = 1;
-	if (unlikely((ip_frag_off & MORE_FRAGMENTS_FLAG) || n_frag_offset)) { // Currently we don't expect to receive fragments
-		//for disabled fragments handling:
-		/*ring_logwarn("Rx packet dropped - VMA doesn't support fragmentation in receive flow!");
-		ring_logwarn("packet info: dst=%d.%d.%d.%d, src=%d.%d.%d.%d, packet_sz=%d, frag_offset=%d, id=%d, proto=%s[%d], transport type=%s, (local if: %d.%d.%d.%d)",
-				NIPQUAD(p_ip_h->daddr), NIPQUAD(p_ip_h->saddr),
-				(sz_data > ip_tot_len ? ip_tot_len : sz_data), n_frag_offset, ntohs(p_ip_h->id),
-				iphdr_protocol_type_to_str(p_ip_h->protocol), p_ip_h->protocol, (m_transport_type ? "ETH" : "IB"),
-				NIPQUAD(local_addr));
-		return false;*/
-#if 1 //handle fragments
-		// Update fragments descriptor with datagram base address and length
-		p_rx_wc_buf_desc->rx.frag.iov_base = (uint8_t*)p_ip_h + ip_hdr_len;
-		p_rx_wc_buf_desc->rx.frag.iov_len  = ip_tot_len - ip_hdr_len;
-
-		// Add ip fragment packet to out fragment manager
-		mem_buf_desc_t* new_buf = NULL;
-		int ret = -1;
-		if (g_p_ip_frag_manager)
-			ret = g_p_ip_frag_manager->add_frag(p_ip_h, p_rx_wc_buf_desc, &new_buf);
-		if (ret < 0)  // Finished with error
-			return false;
-		if (!new_buf)  // This is fragment
-			return true;
-
-		// Re-calc all ip related values for new ip packet of head fragmentation list
-		p_rx_wc_buf_desc = new_buf;
-		p_ip_h = (struct iphdr*)(p_rx_wc_buf_desc->p_buffer + transport_header_len);
-		ip_hdr_len = (int)(p_ip_h->ihl)*4;
-		ip_tot_len = ntohs(p_ip_h->tot_len);
-
-		mem_buf_desc_t *tmp;
-		for (tmp = p_rx_wc_buf_desc; tmp; tmp = tmp->p_next_desc) {
-			++p_rx_wc_buf_desc->rx.n_frags;
-		}
-#endif
-	}
-
-	if (p_rx_wc_buf_desc->rx.is_sw_csum_need && compute_ip_checksum((unsigned short*)p_ip_h, p_ip_h->ihl * 2)) {
-		return false; // false ip checksum
-	}
-
-//We want to enable loopback between processes for IB
-#if 0
-	//AlexV: We don't support Tx MC Loopback today!
-	if (p_ip_h->saddr == m_local_if) {
-		ring_logfunc("Rx udp datagram discarded - mc loop disabled");
-		return false;
-	}
-#endif
-	rfs* p_rfs = NULL;
-
-	// Update the L3 info
-	p_rx_wc_buf_desc->rx.src.sin_family      = AF_INET;
-	p_rx_wc_buf_desc->rx.src.sin_addr.s_addr = p_ip_h->saddr;
-	p_rx_wc_buf_desc->rx.dst.sin_family      = AF_INET;
-	p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr = p_ip_h->daddr;
-
-	switch (p_ip_h->protocol) {
-	case IPPROTO_UDP:
-	{
-		// Get the udp header pointer + udp payload size
-		p_udp_h = (struct udphdr*)((uint8_t*)p_ip_h + ip_hdr_len);
-
-		// Update packet descriptor with datagram base address and length
-		p_rx_wc_buf_desc->rx.frag.iov_base = (uint8_t*)p_udp_h + sizeof(struct udphdr);
-		p_rx_wc_buf_desc->rx.frag.iov_len  = ip_tot_len - ip_hdr_len - sizeof(struct udphdr);
-
-		if (p_rx_wc_buf_desc->rx.is_sw_csum_need && p_udp_h->check && compute_udp_checksum_rx(p_ip_h, p_udp_h, p_rx_wc_buf_desc)) {
-			return false; // false udp checksum
-		}
-
-		size_t sz_payload = ntohs(p_udp_h->len) - sizeof(struct udphdr);
-		ring_logfunc("Rx udp datagram info: src_port=%d, dst_port=%d, payload_sz=%d, csum=%#x",
-				ntohs(p_udp_h->source), ntohs(p_udp_h->dest), sz_payload, p_udp_h->check);
-
-		// Update the L3 info
-		p_rx_wc_buf_desc->rx.udp.local_if        = m_local_if;
-
-		// Update the L4 info
-		p_rx_wc_buf_desc->rx.src.sin_port        = p_udp_h->source;
-		p_rx_wc_buf_desc->rx.dst.sin_port        = p_udp_h->dest;
-		p_rx_wc_buf_desc->rx.sz_payload          = sz_payload;
-
-		// Find the relevant hash map and pass the packet to the rfs for dispatching
-		if (!(IN_MULTICAST_N(p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr))) {      // This is UDP UC packet
-			p_rfs = m_flow_udp_uc_map.get(flow_spec_udp_key_t(p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr,
-				p_rx_wc_buf_desc->rx.dst.sin_port), NULL);
-		} else {        // This is UDP MC packet
-			p_rfs = m_flow_udp_mc_map.get(flow_spec_udp_key_t(p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr,
-				p_rx_wc_buf_desc->rx.dst.sin_port), NULL);
-		}
-	}
-	break;
-
-	case IPPROTO_TCP:
-	{
-		// Get the tcp header pointer + tcp payload size
-		struct tcphdr* p_tcp_h = (struct tcphdr*)((uint8_t*)p_ip_h + ip_hdr_len);
-
-		if (p_rx_wc_buf_desc->rx.is_sw_csum_need && compute_tcp_checksum(p_ip_h, (unsigned short*) p_tcp_h)) {
-			return false; // false tcp checksum
-		}
-
-		size_t sz_payload = ip_tot_len - ip_hdr_len - p_tcp_h->doff*4;
-		ring_logfunc("Rx TCP segment info: src_port=%d, dst_port=%d, flags='%s%s%s%s%s%s' seq=%u, ack=%u, win=%u, payload_sz=%u",
-				ntohs(p_tcp_h->source), ntohs(p_tcp_h->dest),
-				p_tcp_h->urg?"U":"", p_tcp_h->ack?"A":"", p_tcp_h->psh?"P":"",
-				p_tcp_h->rst?"R":"", p_tcp_h->syn?"S":"", p_tcp_h->fin?"F":"",
-				ntohl(p_tcp_h->seq), ntohl(p_tcp_h->ack_seq), ntohs(p_tcp_h->window),
-				sz_payload);
-
-		// Update packet descriptor with datagram base address and length
-		p_rx_wc_buf_desc->rx.frag.iov_base = (uint8_t*)p_tcp_h + sizeof(struct tcphdr);
-		p_rx_wc_buf_desc->rx.frag.iov_len  = ip_tot_len - ip_hdr_len - sizeof(struct tcphdr);
-
-		// Update the L4 info
-		p_rx_wc_buf_desc->rx.src.sin_port        = p_tcp_h->source;
-		p_rx_wc_buf_desc->rx.dst.sin_port        = p_tcp_h->dest;
-		p_rx_wc_buf_desc->rx.sz_payload          = sz_payload;
-
-		p_rx_wc_buf_desc->rx.tcp.p_ip_h = p_ip_h;
-		p_rx_wc_buf_desc->rx.tcp.p_tcp_h = p_tcp_h;
-
-		// Find the relevant hash map and pass the packet to the rfs for dispatching
-		p_rfs = m_flow_tcp_map.get(flow_spec_tcp_key_t(p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr,
-				p_rx_wc_buf_desc->rx.src.sin_addr.s_addr, p_rx_wc_buf_desc->rx.dst.sin_port,
-				p_rx_wc_buf_desc->rx.src.sin_port), NULL);
-
-		p_rx_wc_buf_desc->rx.tcp.n_transport_header_len = transport_header_len;
-
-		if (unlikely(p_rfs == NULL)) {	// If we didn't find a match for TCP 5T, look for a match with TCP 3T
-			p_rfs = m_flow_tcp_map.get(flow_spec_tcp_key_t(p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr, 0,
-					p_rx_wc_buf_desc->rx.dst.sin_port, 0), NULL);
-		}
-	}
-	break;
-
-	case IPPROTO_IGMP:
-	{
-		struct igmp* p_igmp_h= (struct igmp*)((uint8_t*)p_ip_h + ip_hdr_len);
-		NOT_IN_USE(p_igmp_h); /* to supress warning in case VMA_MAX_DEFINED_LOG_LEVEL */
-		ring_logdbg("Rx IGMP packet info: type=%s (%d), group=%d.%d.%d.%d, code=%d",
-				priv_igmp_type_tostr(p_igmp_h->igmp_type), p_igmp_h->igmp_type,
-				NIPQUAD(p_igmp_h->igmp_group.s_addr), p_igmp_h->igmp_code);
-		if (m_transport_type == VMA_TRANSPORT_IB  || m_b_sysvar_eth_mc_l2_only_rules) {
-			ring_logdbg("Transport type is IB (or eth_mc_l2_only_rules), passing igmp packet to igmp_manager to process");
-			if(g_p_igmp_mgr) {
-				(g_p_igmp_mgr->process_igmp_packet(p_ip_h, m_local_if));
-				return false; // we return false in order to free the buffer, although we handled the packet
-			}
-			ring_logdbg("IGMP packet drop. IGMP manager does not exist.");
-			return false;
-		}
-		ring_logerr("Transport type is ETH, dropping the packet");
-		return false;
-	}
-	break;
-
-	default:
-		ring_logwarn("Rx packet dropped - undefined protocol = %d", p_ip_h->protocol);
-		return false;
-	}
-
-	if (unlikely(p_rfs == NULL)) {
-		ring_logdbg("Rx packet dropped - rfs object not found: dst:%d.%d.%d.%d:%d, src%d.%d.%d.%d:%d, proto=%s[%d]",
-				NIPQUAD(p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr), ntohs(p_rx_wc_buf_desc->rx.dst.sin_port),
-				NIPQUAD(p_rx_wc_buf_desc->rx.src.sin_addr.s_addr), ntohs(p_rx_wc_buf_desc->rx.src.sin_port),
-				iphdr_protocol_type_to_str(p_ip_h->protocol), p_ip_h->protocol);
-
-		return false;
-	}
-	return p_rfs->rx_dispatch_packet(p_rx_wc_buf_desc, pv_fd_ready_array);
-}
-
 int ring_simple::request_notification(cq_type_t cq_type, uint64_t poll_sn)
 {
 	int ret = 1;
@@ -1366,6 +564,7 @@ mem_buf_desc_t* ring_simple::mem_buf_tx_
 	// Increase counter in order to keep track of how many buffers ring is missing when reclaiming them during ring->restart()
 	m_missing_buf_ref_count += n_num_mem_bufs;
 
+	/* coverity[double_unlock] TODO: RM#1049980 */
 	m_lock_ring_tx.unlock();
 	return buff_list;
 }
@@ -1458,55 +657,6 @@ void ring_simple::send_lwip_buffer(ring_
 	send_status_handler(ret, p_send_wqe);
 }
 
-void ring_simple::flow_udp_del_all()
-{
-	flow_spec_udp_key_t map_key_udp;
-	flow_spec_udp_map_t::iterator itr_udp;
-
-	itr_udp = m_flow_udp_uc_map.begin();
-	while (itr_udp != m_flow_udp_uc_map.end()) {
-		rfs *p_rfs = itr_udp->second;
-		map_key_udp = itr_udp->first;
-		if (p_rfs) {
-			delete p_rfs;
-		}
-		if (!(m_flow_udp_uc_map.del(map_key_udp))) {
-			ring_logdbg("Could not find rfs object to delete in ring udp uc hash map!");
-		}
-		itr_udp =  m_flow_udp_uc_map.begin();
-	}
-
-	itr_udp = m_flow_udp_mc_map.begin();
-	while (itr_udp != m_flow_udp_mc_map.end()) {
-		rfs *p_rfs = itr_udp->second;
-		map_key_udp = itr_udp->first;
-		if (p_rfs) {
-			delete p_rfs;
-		}
-		if (!(m_flow_udp_mc_map.del(map_key_udp))) {
-			ring_logdbg("Could not find rfs object to delete in ring udp mc hash map!");
-		}
-		itr_udp =  m_flow_udp_mc_map.begin();
-	}
-}
-
-void ring_simple::flow_tcp_del_all()
-{
-	flow_spec_tcp_key_t map_key_tcp;
-	flow_spec_tcp_map_t::iterator itr_tcp;
-
-	while ((itr_tcp = m_flow_tcp_map.begin()) != m_flow_tcp_map.end()) {
-		rfs *p_rfs = itr_tcp->second;
-		map_key_tcp = itr_tcp->first;
-		if (p_rfs) {
-			delete p_rfs;
-		}
-		if (!(m_flow_tcp_map.del(map_key_tcp))) {
-			ring_logdbg("Could not find rfs object to delete in ring tcp hash map!");
-		}
-	}
-}
-
 /*
  * called under m_lock_ring_tx lock
  */
@@ -1602,24 +752,16 @@ bool ring_simple::is_available_qp_wr(boo
 	return true;
 }
 
-//call under m_lock_ring_tx lock
-bool ring_simple::request_more_tx_buffers(uint32_t count)
+void ring_simple::init_tx_buffers(uint32_t count)
 {
-	ring_logfuncall("Allocating additional %d buffers for internal use", count);
-
-	bool res = g_buffer_pool_tx->get_buffers_thread_safe(m_tx_pool, this, count, m_tx_lkey);
-	if (!res) {
-		ring_logfunc("Out of mem_buf_desc from TX free pool for internal object pool");
-		return false;
-	}
-
-	return true;
+	request_more_tx_buffers(count, m_tx_lkey);
+	m_tx_num_bufs = m_tx_pool.size();
 }
 
-void ring_simple::init_tx_buffers(uint32_t count)
+void ring_simple::inc_cq_moderation_stats(size_t sz_data)
 {
-	request_more_tx_buffers(count);
-	m_tx_num_bufs = m_tx_pool.size();
+	m_cq_moderation_info.bytes += sz_data;
+	++m_cq_moderation_info.packets;
 }
 
 //call under m_lock_ring_tx lock
@@ -1628,7 +770,7 @@ mem_buf_desc_t* ring_simple::get_tx_buff
 	mem_buf_desc_t* head = NULL;
 	if (unlikely(m_tx_pool.size() < n_num_mem_bufs)) {
 		int count = MAX(RING_TX_BUFS_COMPENSATE, n_num_mem_bufs);
-		if (request_more_tx_buffers(count)) {
+		if (request_more_tx_buffers(count, m_tx_lkey)) {
 			m_tx_num_bufs += count;
 		}
 
@@ -1829,6 +971,16 @@ bool ring_simple::is_up() {
 
 int ring_simple::modify_ratelimit(struct vma_rate_limit_t &rate_limit)
 {
+	if (!m_p_ib_ctx->is_packet_pacing_supported(rate_limit.rate)) {
+		ring_logwarn("Packet pacing is not supported for this device");
+		return -1;
+	}
+
+	if ((rate_limit.max_burst_sz || rate_limit.typical_pkt_sz) && !m_p_ib_ctx->get_burst_capability()) {
+		ring_logwarn("Burst is not supported for this device");
+		return -1;
+	}
+
 	uint32_t rl_changes = m_p_qp_mgr->is_ratelimit_change(rate_limit);
 
 	if (m_up && rl_changes)
@@ -1841,7 +993,7 @@ int ring_simple::get_ring_descriptors(vm
 {
 	d.dev_data.vendor_id = m_p_ib_ctx->get_ibv_device_attr()->vendor_id;
 	d.dev_data.vendor_part_id = m_p_ib_ctx->get_ibv_device_attr()->vendor_part_id;
-	if (vma_is_packet_pacing_supported(m_p_ib_ctx->get_ibv_device_attr())) {
+	if (m_p_ib_ctx->is_packet_pacing_supported()) {
 		d.dev_data.device_cap |= VMA_HW_PP_EN;
 	}
 	if (vma_is_umr_supported(m_p_ib_ctx->get_ibv_device_attr())) {
diff -pruN 8.8.1-1/src/vma/dev/ring_simple.h 8.8.1.really.8.7.7-1/src/vma/dev/ring_simple.h
--- 8.8.1-1/src/vma/dev/ring_simple.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ring_simple.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -34,15 +34,10 @@
 #define RING_SIMPLE_H
 
 #include "ring_slave.h"
-#include <vector>
 
-#include "vma/ib/base/verbs_extra.h"
 #include "vma/dev/gro_mgr.h"
-#include "vma/util/utils.h"
-#include "vma/vma_extra.h"
 #include "vma/dev/net_device_table_mgr.h"
 
-
 struct cq_moderation_info {
 	uint32_t period;
 	uint32_t count;
@@ -83,8 +78,6 @@ public:
 	void			mem_buf_desc_return_to_owner_rx(mem_buf_desc_t* p_mem_buf_desc, void* pv_fd_ready_array = NULL);
 	virtual int		get_max_tx_inline();
 	inline int		send_buffer(vma_ibv_send_wr* p_send_wqe, vma_wr_tx_packet_attr attr);
-	virtual bool		attach_flow(flow_tuple& flow_spec_5t, pkt_rcvr_sink* sink);
-	virtual bool		detach_flow(flow_tuple& flow_spec_5t, pkt_rcvr_sink* sink);
 	virtual bool		is_up();
 	void			start_active_qp_mgr();
 	void			stop_active_qp_mgr();
@@ -96,6 +89,7 @@ public:
 	virtual bool 		get_hw_dummy_send_support(ring_user_id_t id, vma_ibv_send_wr* p_send_wqe);
 	inline void 		convert_hw_time_to_system_time(uint64_t hwtime, struct timespec* systime) { m_p_ib_ctx->convert_hw_time_to_system_time(hwtime, systime); }
 	inline uint32_t		get_qpn() const { return (m_p_l2_addr ? ((IPoIB_addr *)m_p_l2_addr)->get_qpn() : 0); }
+	virtual uint32_t	get_underly_qpn() { return m_p_qp_mgr->get_underly_qpn(); }
 	virtual int		modify_ratelimit(struct vma_rate_limit_t &rate_limit);
 	virtual int		get_tx_channel_fd() const { return m_p_tx_comp_event_channel ? m_p_tx_comp_event_channel->fd : -1; };
 	struct ibv_comp_channel* get_tx_comp_event_channel() { return m_p_tx_comp_event_channel; }
@@ -114,26 +108,16 @@ public:
 protected:
 	virtual qp_mgr*		create_qp_mgr(const ib_ctx_handler* ib_ctx, uint8_t port_num, struct ibv_comp_channel* p_rx_comp_event_channel) = 0;
 	void			create_resources();
-	// Internal functions. No need for locks mechanism.
-	bool			rx_process_buffer(mem_buf_desc_t* p_rx_wc_buf_desc, void* pv_fd_ready_array);
-	//	void	print_ring_flow_to_rfs_map(flow_spec_map_t *p_flow_map);
-	void			flow_udp_del_all();
-	void			flow_tcp_del_all();
 	virtual void		init_tx_buffers(uint32_t count);
-	bool			request_more_tx_buffers(uint32_t count);
+	virtual void		inc_cq_moderation_stats(size_t sz_data);
 	uint32_t		get_tx_num_wr() { return m_tx_num_wr; }
-	void			set_partition(uint16_t partition) { m_partition = partition; }
-	uint16_t		get_partition() { return m_partition; }
 	uint32_t		get_mtu() { return m_mtu; }
 
 	ib_ctx_handler*		m_p_ib_ctx;
 	qp_mgr*			m_p_qp_mgr;
 	struct cq_moderation_info m_cq_moderation_info;
 	cq_mgr*			m_p_cq_mgr_rx;
-	lock_spin_recursive	m_lock_ring_rx;
 	cq_mgr*			m_p_cq_mgr_tx;
-	lock_spin_recursive	m_lock_ring_tx;
-
 private:
 	bool is_socketxtreme(void) {return m_socketxtreme.active;}
 
@@ -201,32 +185,18 @@ private:
 	void			delete_l2_address() { if (m_p_l2_addr) delete m_p_l2_addr; m_p_l2_addr = NULL; };
 
 	lock_mutex		m_lock_ring_tx_buf_wait;
-	descq_t			m_tx_pool;
 	uint32_t		m_tx_num_bufs;
 	uint32_t		m_tx_num_wr;
 	int32_t			m_tx_num_wr_free;
 	bool			m_b_qp_tx_first_flushed_completion_handled;
 	uint32_t		m_missing_buf_ref_count;
 	uint32_t		m_tx_lkey; // this is the registered memory lkey for a given specific device for the buffer pool use
-	uint16_t		m_partition; //vlan or pkey
 	gro_mgr			m_gro_mgr;
 	bool			m_up;
 	struct ibv_comp_channel* m_p_rx_comp_event_channel;
 	struct ibv_comp_channel* m_p_tx_comp_event_channel;
 	L2_address*		m_p_l2_addr;
-	in_addr_t		m_local_if;
 	uint32_t		m_mtu;
-	// For IB MC flow, the port is zeroed in the ibv_flow_spec when calling to ibv_flow_spec().
-	// It means that for every MC group, even if we have sockets with different ports - only one rule in the HW.
-	// So the hash map below keeps track of the number of sockets per rule so we know when to call ibv_attach and ibv_detach
-	rule_filter_map_t	m_l2_mc_ip_attach_map;
-	rule_filter_map_t	m_tcp_dst_port_attach_map;
-	flow_spec_tcp_map_t	m_flow_tcp_map;
-	flow_spec_udp_map_t	m_flow_udp_mc_map;
-	flow_spec_udp_map_t	m_flow_udp_uc_map;
-	const bool		m_b_sysvar_eth_mc_l2_only_rules;
-	const bool		m_b_sysvar_mc_force_flowtag;
-	bool			m_flow_tag_enabled;
 };
 
 class ring_eth : public ring_simple
@@ -238,7 +208,7 @@ public:
 		net_device_val_eth* p_ndev =
 				dynamic_cast<net_device_val_eth *>(g_p_net_device_table_mgr->get_net_device_val(m_parent->get_if_index()));
 		if (p_ndev) {
-			set_partition(p_ndev->get_vlan());
+			m_partition = p_ndev->get_vlan();
 
 			/* Do resource initialization for 
 			 * ring_eth_direct, ring_eth_cb inside related
@@ -250,7 +220,6 @@ public:
 			}
 		}
 	}
-	virtual bool is_ratelimit_supported(struct vma_rate_limit_t &rate_limit);
 protected:
 	virtual qp_mgr* create_qp_mgr(const ib_ctx_handler* ib_ctx, uint8_t port_num, struct ibv_comp_channel* p_rx_comp_event_channel);
 };
@@ -264,11 +233,10 @@ public:
 		net_device_val_ib* p_ndev =
 				dynamic_cast<net_device_val_ib *>(g_p_net_device_table_mgr->get_net_device_val(m_parent->get_if_index()));
 		if (p_ndev) {
-			set_partition(p_ndev->get_pkey());
+			m_partition = p_ndev->get_pkey();
 			create_resources();
 		}
 	}
-	virtual bool is_ratelimit_supported(struct vma_rate_limit_t &rate_limit);
 protected:
 	virtual qp_mgr* create_qp_mgr(const ib_ctx_handler* ib_ctx, uint8_t port_num, struct ibv_comp_channel* p_rx_comp_event_channel);
 };
diff -pruN 8.8.1-1/src/vma/dev/ring_slave.cpp 8.8.1.really.8.7.7-1/src/vma/dev/ring_slave.cpp
--- 8.8.1-1/src/vma/dev/ring_slave.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ring_slave.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -32,14 +32,44 @@
 
 #include "ring_slave.h"
 
+#include "vma/proto/ip_frag.h"
+#include "vma/proto/igmp_mgr.h"
+#include "vma/dev/rfs_mc.h"
+#include "vma/dev/rfs_uc_tcp_gro.h"
+#include "vma/sock/fd_collection.h"
+#include "vma/sock/sockinfo.h"
 
 #undef  MODULE_NAME
 #define MODULE_NAME "ring_slave"
 #undef  MODULE_HDR
 #define MODULE_HDR MODULE_NAME "%d:%s() "
 
+#ifndef IGMP_V3_MEMBERSHIP_REPORT
+#define IGMP_V3_MEMBERSHIP_REPORT	0x22	/* V3 version of 0x11 */ /* ALEXR: taken from <linux/igmp.h> */
+#endif
 
-ring_slave::ring_slave(int if_index, ring* parent, ring_type_t type): ring()
+// String formating helper function for IGMP
+const char* priv_igmp_type_tostr(uint8_t igmptype)
+{
+	switch (igmptype) {
+	case IGMP_HOST_MEMBERSHIP_QUERY:        return "IGMP_QUERY";
+	case IGMP_HOST_MEMBERSHIP_REPORT:       return "IGMPV1_REPORT";
+	case IGMP_V2_MEMBERSHIP_REPORT:     	return "IGMPV2_REPORT";
+	case IGMP_V3_MEMBERSHIP_REPORT:     	return "IGMPV3_REPORT";
+	case IGMP_HOST_LEAVE_MESSAGE:           return "IGMP_LEAVE_MESSAGE";
+	default:                                return "IGMP type UNKNOWN";
+	}
+}
+
+ring_slave::ring_slave(int if_index, ring* parent, ring_type_t type):
+	ring(),
+	m_lock_ring_rx("ring_slave:lock_rx"),
+	m_lock_ring_tx("ring_slave:lock_tx"),
+	m_partition(0),
+	m_flow_tag_enabled(false),
+	m_b_sysvar_eth_mc_l2_only_rules(safe_mce_sys().eth_mc_l2_only_rules),
+	m_b_sysvar_mc_force_flowtag(safe_mce_sys().mc_force_flowtag),
+	m_type(type)
 {
 	net_device_val* p_ndev = NULL;
 	const slave_data_t * p_slave = NULL;
@@ -57,8 +87,9 @@ ring_slave::ring_slave(int if_index, rin
 	p_slave = p_ndev->get_slave(get_if_index());
 
 	/* Configure ring_slave() fields */
-	m_type = type;
 	m_transport_type = p_ndev->get_transport_type();
+	m_local_if = p_ndev->get_local_addr();
+
 	/* Set the same ring active status as related slave has for all ring types
 	 * excluding ring with type RING_TAP that does not have related slave device.
 	 * So it is marked as active just in case related netvsc device is absent.
@@ -75,6 +106,8 @@ ring_slave::ring_slave(int if_index, rin
 		m_ring_stat.p_ring_master = m_parent;
 	}
 
+	m_tx_pool.set_id("ring_slave (%p) : m_tx_pool", this);
+
 	vma_stats_instance_create_ring_block(m_p_ring_stat);
 
 	print_val();
@@ -87,6 +120,9 @@ ring_slave::~ring_slave()
 	if (m_p_ring_stat) {
 		vma_stats_instance_remove_ring_block(m_p_ring_stat);
 	}
+
+	/* Release TX buffer poll */
+	g_buffer_pool_tx->put_buffers_thread_safe(&m_tx_pool, m_tx_pool.size());
 }
 
 void ring_slave::print_val()
@@ -102,10 +138,8 @@ void ring_slave::restart()
 	ring_logpanic("Can't restart a slave ring");
 }
 
-bool ring_slave::is_active_member(ring_slave* rng, ring_user_id_t id)
+bool ring_slave::is_active_member(ring_slave* rng, ring_user_id_t)
 {
-	NOT_IN_USE(id);
-
 	return (this == rng);
 }
 
@@ -119,24 +153,800 @@ ring_user_id_t ring_slave::generate_id()
 	return 0;
 }
 
-ring_user_id_t ring_slave::generate_id(const address_t src_mac, const address_t dst_mac,
-				uint16_t eth_proto, uint16_t encap_proto,
-				uint32_t src_ip, uint32_t dst_ip,
-				uint16_t src_port, uint16_t dst_port)
-{
-	NOT_IN_USE(src_mac);
-	NOT_IN_USE(dst_mac);
-	NOT_IN_USE(eth_proto);
-	NOT_IN_USE(encap_proto);
-	NOT_IN_USE(src_ip);
-	NOT_IN_USE(dst_ip);
-	NOT_IN_USE(src_port);
-	NOT_IN_USE(dst_port);
-
+ring_user_id_t ring_slave::generate_id(const address_t, const address_t,
+				uint16_t, uint16_t, uint32_t, uint32_t, uint16_t, uint16_t)
+{
 	return 0;
 }
 
-void ring_slave::inc_tx_retransmissions(ring_user_id_t id) {
-	NOT_IN_USE(id);
+void ring_slave::inc_tx_retransmissions_stats(ring_user_id_t) {
 	m_p_ring_stat->n_tx_retransmits++;
 }
+
+bool ring_slave::attach_flow(flow_tuple& flow_spec_5t, pkt_rcvr_sink *sink)
+{
+	rfs* p_rfs;
+	rfs* p_tmp_rfs = NULL;
+	sockinfo* si = static_cast<sockinfo*> (sink);
+
+	if (si == NULL)
+		return false;
+
+	uint32_t flow_tag_id = si->get_flow_tag_val(); // spec will not be attached to rule
+	if (!m_flow_tag_enabled) {
+		flow_tag_id = 0;
+	}
+	ring_logdbg("flow: %s, with sink (%p), flow tag id %d "
+		    "m_flow_tag_enabled: %d", flow_spec_5t.to_str(), si,
+		    flow_tag_id, m_flow_tag_enabled);
+
+	/*
+	 * //auto_unlocker lock(m_lock_ring_rx);
+	 * todo instead of locking the whole function which have many "new" calls,
+	 * we'll only lock the parts that touch the ring members.
+	 * if some of the constructors need the ring locked, we need to modify
+	 * and add separate functions for that, which will be called after ctor with ring locked.
+	 * currently we assume the ctors does not require the ring to be locked.
+	 */
+	m_lock_ring_rx.lock();
+
+	/* Get the appropriate hash map (tcp, uc or mc) from the 5t details */
+	if (flow_spec_5t.is_udp_uc()) {
+		flow_spec_udp_key_t key_udp_uc(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_dst_port());
+		if (flow_tag_id && si->flow_in_reuse()) {
+			flow_tag_id = FLOW_TAG_MASK;
+			ring_logdbg("UC flow tag for socketinfo=%p is disabled: SO_REUSEADDR or SO_REUSEPORT were enabled", si);
+		}
+		p_rfs = m_flow_udp_uc_map.get(key_udp_uc, NULL);
+		if (p_rfs == NULL) {
+			// No rfs object exists so a new one must be created and inserted in the flow map
+			m_lock_ring_rx.unlock();
+			try {
+				p_tmp_rfs = new rfs_uc(&flow_spec_5t, this, NULL, flow_tag_id);
+			} catch(vma_exception& e) {
+				ring_logerr("%s", e.message);
+				return false;
+			}
+			BULLSEYE_EXCLUDE_BLOCK_START
+			if (p_tmp_rfs == NULL) {
+				ring_logerr("Failed to allocate rfs!");
+				return false;
+			}
+			BULLSEYE_EXCLUDE_BLOCK_END
+			m_lock_ring_rx.lock();
+			p_rfs = m_flow_udp_uc_map.get(key_udp_uc, NULL);
+			if (p_rfs) {
+				delete p_tmp_rfs;
+			} else {
+				p_rfs = p_tmp_rfs;
+				m_flow_udp_uc_map.set(key_udp_uc, p_rfs);
+			}
+		}
+	} else if (flow_spec_5t.is_udp_mc()) {
+		flow_spec_udp_key_t key_udp_mc(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_dst_port());
+
+		if (flow_tag_id) {
+			if (m_b_sysvar_mc_force_flowtag || !si->flow_in_reuse()) {
+				ring_logdbg("MC flow tag ID=%d for socketinfo=%p is enabled: force_flowtag=%d, SO_REUSEADDR | SO_REUSEPORT=%d",
+					flow_tag_id, si, m_b_sysvar_mc_force_flowtag, si->flow_in_reuse());
+			} else {
+				flow_tag_id = FLOW_TAG_MASK;
+				ring_logdbg("MC flow tag for socketinfo=%p is disabled: force_flowtag=0, SO_REUSEADDR or SO_REUSEPORT were enabled", si);
+			}
+		}
+		// Note for CX3:
+		// For IB MC flow, the port is zeroed in the ibv_flow_spec when calling to ibv_flow_spec().
+		// It means that for every MC group, even if we have sockets with different ports - only one rule in the HW.
+		// So the hash map below keeps track of the number of sockets per rule so we know when to call ibv_attach and ibv_detach
+		rfs_rule_filter* l2_mc_ip_filter = NULL;
+		if ((m_transport_type == VMA_TRANSPORT_IB && 0 == get_underly_qpn()) || m_b_sysvar_eth_mc_l2_only_rules) {
+			rule_filter_map_t::iterator l2_mc_iter = m_l2_mc_ip_attach_map.find(key_udp_mc.dst_ip);
+			if (l2_mc_iter == m_l2_mc_ip_attach_map.end()) { // It means that this is the first time attach called with this MC ip
+				m_l2_mc_ip_attach_map[key_udp_mc.dst_ip].counter = 1;
+			} else {
+				m_l2_mc_ip_attach_map[key_udp_mc.dst_ip].counter = ((l2_mc_iter->second.counter) + 1);
+			}
+		}
+		p_rfs = m_flow_udp_mc_map.get(key_udp_mc, NULL);
+		if (p_rfs == NULL) {		// It means that no rfs object exists so I need to create a new one and insert it to the flow map
+			m_lock_ring_rx.unlock();
+			if ((m_transport_type == VMA_TRANSPORT_IB && 0 == get_underly_qpn()) || m_b_sysvar_eth_mc_l2_only_rules) {
+				l2_mc_ip_filter = new rfs_rule_filter(m_l2_mc_ip_attach_map, key_udp_mc.dst_ip, flow_spec_5t);
+			}
+			try {
+				p_tmp_rfs = new rfs_mc(&flow_spec_5t, this, l2_mc_ip_filter, flow_tag_id);
+			} catch(vma_exception& e) {
+				ring_logerr("%s", e.message);
+				return false;
+			} catch(const std::bad_alloc &e) {
+				NOT_IN_USE(e);
+				ring_logerr("Failed to allocate rfs!");
+				return false;
+			}
+			m_lock_ring_rx.lock();
+			p_rfs = m_flow_udp_mc_map.get(key_udp_mc, NULL);
+			if (p_rfs) {
+				delete p_tmp_rfs;
+			} else {
+				p_rfs = p_tmp_rfs;
+				m_flow_udp_mc_map.set(key_udp_mc, p_rfs);
+			}
+		}
+	} else if (flow_spec_5t.is_tcp()) {
+		flow_spec_tcp_key_t key_tcp(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_src_ip(),
+				flow_spec_5t.get_dst_port(), flow_spec_5t.get_src_port());
+		rule_key_t rule_key(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_dst_port());
+		rfs_rule_filter* tcp_dst_port_filter = NULL;
+		if (safe_mce_sys().tcp_3t_rules) {
+			rule_filter_map_t::iterator tcp_dst_port_iter = m_tcp_dst_port_attach_map.find(rule_key.key);
+			if (tcp_dst_port_iter == m_tcp_dst_port_attach_map.end()) {
+				m_tcp_dst_port_attach_map[rule_key.key].counter = 1;
+			} else {
+				m_tcp_dst_port_attach_map[rule_key.key].counter = ((tcp_dst_port_iter->second.counter) + 1);
+			}
+		}
+
+		p_rfs = m_flow_tcp_map.get(key_tcp, NULL);
+		if (p_rfs == NULL) {		// It means that no rfs object exists so I need to create a new one and insert it to the flow map
+			m_lock_ring_rx.unlock();
+			if (safe_mce_sys().tcp_3t_rules) {
+				flow_tuple tcp_3t_only(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_dst_port(), 0, 0, flow_spec_5t.get_protocol());
+				tcp_dst_port_filter = new rfs_rule_filter(m_tcp_dst_port_attach_map, rule_key.key, tcp_3t_only);
+			}
+			if(safe_mce_sys().gro_streams_max && flow_spec_5t.is_5_tuple() && is_simple()) {
+				// When the gro mechanism is being used, packets must be processed in the rfs
+				// layer. This must not be bypassed by using flow tag.
+				if (flow_tag_id) {
+					flow_tag_id = FLOW_TAG_MASK;
+					ring_logdbg("flow_tag_id = %d is disabled to enable TCP GRO socket to be processed on RFS!", flow_tag_id);
+				}
+				p_tmp_rfs = new (std::nothrow)rfs_uc_tcp_gro(&flow_spec_5t, this, tcp_dst_port_filter, flow_tag_id);
+			} else {
+				try {
+					p_tmp_rfs = new (std::nothrow)rfs_uc(&flow_spec_5t, this, tcp_dst_port_filter, flow_tag_id);
+				} catch(vma_exception& e) {
+					ring_logerr("%s", e.message);
+					return false;
+				}
+			}
+			BULLSEYE_EXCLUDE_BLOCK_START
+			if (p_tmp_rfs == NULL) {
+				ring_logerr("Failed to allocate rfs!");
+				return false;
+			}
+			BULLSEYE_EXCLUDE_BLOCK_END
+			/* coverity[double_lock] TODO: RM#1049980 */
+			m_lock_ring_rx.lock();
+			p_rfs = m_flow_tcp_map.get(key_tcp, NULL);
+			if (p_rfs) {
+				delete p_tmp_rfs;
+			} else {
+				p_rfs = p_tmp_rfs;
+				m_flow_tcp_map.set(key_tcp, p_rfs);
+			}
+		}
+	BULLSEYE_EXCLUDE_BLOCK_START
+	} else {
+		m_lock_ring_rx.unlock();
+		ring_logerr("Could not find map (TCP, UC or MC) for requested flow");
+		return false;
+	}
+	BULLSEYE_EXCLUDE_BLOCK_END
+
+	bool ret = p_rfs->attach_flow(sink);
+	if (ret) {
+		if (flow_tag_id && (flow_tag_id != FLOW_TAG_MASK)) {
+			// A flow with FlowTag was attached succesfully, check stored rfs for fast path be tag_id
+			si->set_flow_tag(flow_tag_id);
+			ring_logdbg("flow_tag: %d registration is done!", flow_tag_id);
+		}
+		if (flow_spec_5t.is_tcp() && !flow_spec_5t.is_3_tuple()) {
+			// save the single 5tuple TCP connected socket for improved fast path
+			si->set_tcp_flow_is_5t();
+			ring_logdbg("single 5T TCP update m_tcp_flow_is_5t m_flow_tag_enabled: %d", m_flow_tag_enabled);
+		}
+	} else {
+		ring_logerr("attach_flow=%d failed!", ret);
+	}
+	/* coverity[double_unlock] TODO: RM#1049980 */
+	m_lock_ring_rx.unlock();
+	return ret;
+}
+
+bool ring_slave::detach_flow(flow_tuple& flow_spec_5t, pkt_rcvr_sink* sink)
+{
+	rfs* p_rfs = NULL;
+
+	ring_logdbg("flow: %s, with sink (%p)", flow_spec_5t.to_str(), sink);
+
+	auto_unlocker lock(m_lock_ring_rx);
+
+	/* Get the appropriate hash map (tcp, uc or mc) from the 5t details */
+	if (flow_spec_5t.is_udp_uc()) {
+		flow_spec_udp_key_t key_udp_uc(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_dst_port());
+		p_rfs = m_flow_udp_uc_map.get(key_udp_uc, NULL);
+		BULLSEYE_EXCLUDE_BLOCK_START
+		if (p_rfs == NULL) {
+			ring_logdbg("Could not find rfs object to detach!");
+			return false;
+		}
+		BULLSEYE_EXCLUDE_BLOCK_END
+		p_rfs->detach_flow(sink);
+		if (p_rfs->get_num_of_sinks() == 0) {
+			BULLSEYE_EXCLUDE_BLOCK_START
+			if (!(m_flow_udp_uc_map.del(key_udp_uc))) {
+				ring_logdbg("Could not find rfs object to delete in ring udp uc hash map!");
+			}
+			BULLSEYE_EXCLUDE_BLOCK_END
+			delete p_rfs;
+		}
+	} else if (flow_spec_5t.is_udp_mc()) {
+		int keep_in_map = 1;
+		flow_spec_udp_key_t key_udp_mc(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_dst_port());
+		if (m_transport_type == VMA_TRANSPORT_IB || m_b_sysvar_eth_mc_l2_only_rules) {
+			rule_filter_map_t::iterator l2_mc_iter = m_l2_mc_ip_attach_map.find(key_udp_mc.dst_ip);
+			BULLSEYE_EXCLUDE_BLOCK_START
+			if (l2_mc_iter == m_l2_mc_ip_attach_map.end()) {
+				ring_logdbg("Could not find matching counter for the MC group!");
+			BULLSEYE_EXCLUDE_BLOCK_END
+			} else {
+				keep_in_map = m_l2_mc_ip_attach_map[key_udp_mc.dst_ip].counter = MAX(0 , ((l2_mc_iter->second.counter) - 1));
+			}
+		}
+		p_rfs = m_flow_udp_mc_map.get(key_udp_mc, NULL);
+		BULLSEYE_EXCLUDE_BLOCK_START
+		if (p_rfs == NULL) {
+			ring_logdbg("Could not find rfs object to detach!");
+			return false;
+		}
+		BULLSEYE_EXCLUDE_BLOCK_END
+		p_rfs->detach_flow(sink);
+		if(!keep_in_map){
+			m_l2_mc_ip_attach_map.erase(m_l2_mc_ip_attach_map.find(key_udp_mc.dst_ip));
+		}
+		if (p_rfs->get_num_of_sinks() == 0) {
+			BULLSEYE_EXCLUDE_BLOCK_START
+			if (!(m_flow_udp_mc_map.del(key_udp_mc))) {
+				ring_logdbg("Could not find rfs object to delete in ring udp mc hash map!");
+			}
+			BULLSEYE_EXCLUDE_BLOCK_END
+			delete p_rfs;
+		}
+	} else if (flow_spec_5t.is_tcp()) {
+		int keep_in_map = 1;
+		flow_spec_tcp_key_t key_tcp(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_src_ip(),
+				flow_spec_5t.get_dst_port(), flow_spec_5t.get_src_port());
+		rule_key_t rule_key(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_dst_port());
+		if (safe_mce_sys().tcp_3t_rules) {
+			rule_filter_map_t::iterator tcp_dst_port_iter = m_tcp_dst_port_attach_map.find(rule_key.key);
+			BULLSEYE_EXCLUDE_BLOCK_START
+			if (tcp_dst_port_iter == m_tcp_dst_port_attach_map.end()) {
+				ring_logdbg("Could not find matching counter for TCP src port!");
+				BULLSEYE_EXCLUDE_BLOCK_END
+			} else {
+				keep_in_map = m_tcp_dst_port_attach_map[rule_key.key].counter = MAX(0 , ((tcp_dst_port_iter->second.counter) - 1));
+			}
+		}
+		p_rfs = m_flow_tcp_map.get(key_tcp, NULL);
+		BULLSEYE_EXCLUDE_BLOCK_START
+		if (p_rfs == NULL) {
+			ring_logdbg("Could not find rfs object to detach!");
+			return false;
+		}
+		BULLSEYE_EXCLUDE_BLOCK_END
+
+		p_rfs->detach_flow(sink);
+		if(!keep_in_map){
+			m_tcp_dst_port_attach_map.erase(m_tcp_dst_port_attach_map.find(rule_key.key));
+		}
+		if (p_rfs->get_num_of_sinks() == 0) {
+			BULLSEYE_EXCLUDE_BLOCK_START
+			if (!(m_flow_tcp_map.del(key_tcp))) {
+				ring_logdbg("Could not find rfs object to delete in ring tcp hash map!");
+			}
+			BULLSEYE_EXCLUDE_BLOCK_END
+			delete p_rfs;
+		}
+	BULLSEYE_EXCLUDE_BLOCK_START
+	} else {
+		ring_logerr("Could not find map (TCP, UC or MC) for requested flow");
+		return false;
+	}
+	BULLSEYE_EXCLUDE_BLOCK_END
+
+	return true;
+}
+
+// calling sockinfo callback with RFS bypass
+static inline bool check_rx_packet(sockinfo *si, mem_buf_desc_t* p_rx_wc_buf_desc, void *fd_ready_array)
+{
+	// Dispatching: Notify new packet to the FIRST registered receiver ONLY
+#ifdef RDTSC_MEASURE_RX_DISPATCH_PACKET
+	RDTSC_TAKE_START(g_rdtsc_instr_info_arr[RDTSC_FLOW_RX_DISPATCH_PACKET]);
+#endif //RDTSC_MEASURE_RX_DISPATCH_PACKET
+
+	p_rx_wc_buf_desc->reset_ref_count();
+	p_rx_wc_buf_desc->inc_ref_count();
+
+	si->rx_input_cb(p_rx_wc_buf_desc,fd_ready_array);
+
+#ifdef RDTSC_MEASURE_RX_DISPATCH_PACKET
+	RDTSC_TAKE_END(g_rdtsc_instr_info_arr[RDTSC_FLOW_RX_DISPATCH_PACKET]);
+#endif //RDTSC_MEASURE_RX_DISPATCH_PACKET
+
+	// Check packet ref_count to see the last receiver is interested in this packet
+	if (p_rx_wc_buf_desc->dec_ref_count() > 1) {
+		// The sink will be responsible to return the buffer to CQ for reuse
+		return true;
+	}
+	// Reuse this data buffer & mem_buf_desc
+	return false;
+}
+
+// All CQ wce come here for some basic sanity checks and then are distributed to the correct ring handler
+// Return values: false = Reuse this data buffer & mem_buf_desc
+bool ring_slave::rx_process_buffer(mem_buf_desc_t* p_rx_wc_buf_desc, void* pv_fd_ready_array)
+{
+	size_t sz_data = 0;
+	size_t transport_header_len;
+	uint16_t ip_hdr_len = 0;
+	uint16_t ip_tot_len = 0;
+	uint16_t ip_frag_off = 0;
+	uint16_t n_frag_offset = 0;
+	struct ethhdr* p_eth_h = (struct ethhdr*)(p_rx_wc_buf_desc->p_buffer);
+	struct iphdr* p_ip_h = NULL;
+	struct udphdr* p_udp_h = NULL;
+
+	// Validate buffer size
+	sz_data = p_rx_wc_buf_desc->sz_data;
+	if (unlikely(sz_data > p_rx_wc_buf_desc->sz_buffer)) {
+		if (sz_data == IP_FRAG_FREED) {
+			ring_logfuncall("Rx buffer dropped - old fragment part");
+		} else {
+			ring_logwarn("Rx buffer dropped - buffer too small (%d, %d)", sz_data, p_rx_wc_buf_desc->sz_buffer);
+		}
+		return false;
+	}
+
+	inc_cq_moderation_stats(sz_data);
+
+	m_p_ring_stat->n_rx_byte_count += sz_data;
+	++m_p_ring_stat->n_rx_pkt_count;
+
+	// This is an internal function (within ring and 'friends'). No need for lock mechanism.
+	if (likely(m_flow_tag_enabled && p_rx_wc_buf_desc->rx.flow_tag_id &&
+		   p_rx_wc_buf_desc->rx.flow_tag_id != FLOW_TAG_MASK &&
+		   !p_rx_wc_buf_desc->rx.is_sw_csum_need)) {
+		sockinfo* si = NULL;
+		// trying to get sockinfo per flow_tag_id-1 as it was incremented at attach
+		// to allow mapping sockfd=0
+		si = static_cast <sockinfo* >(g_p_fd_collection->get_sockfd(p_rx_wc_buf_desc->rx.flow_tag_id-1));
+
+		if (likely((si != NULL) && si->flow_tag_enabled())) {
+			// will process packets with set flow_tag_id and enabled for the socket
+			if (p_eth_h->h_proto == htons(ETH_P_8021Q)) {
+				// Handle VLAN header as next protocol
+				transport_header_len = ETH_VLAN_HDR_LEN;
+			} else {
+				transport_header_len = ETH_HDR_LEN;
+			}
+			p_ip_h = (struct iphdr*)(p_rx_wc_buf_desc->p_buffer + transport_header_len);
+			ip_hdr_len = 20; //(int)(p_ip_h->ihl)*4;
+			ip_tot_len = ntohs(p_ip_h->tot_len);
+
+			ring_logfunc("FAST PATH Rx packet info: transport_header_len: %d, IP_header_len: %d L3 proto: %d tcp_5t: %d",
+				transport_header_len, p_ip_h->ihl, p_ip_h->protocol, si->tcp_flow_is_5t());
+
+			if (likely(si->tcp_flow_is_5t())) {
+				// we have a single 5tuple TCP connected socket, use simpler fast path
+				struct tcphdr* p_tcp_h = (struct tcphdr*)((uint8_t*)p_ip_h + ip_hdr_len);
+
+				// Update the L3 and L4 info
+				p_rx_wc_buf_desc->rx.src.sin_family      = AF_INET;
+				p_rx_wc_buf_desc->rx.src.sin_port        = p_tcp_h->source;
+				p_rx_wc_buf_desc->rx.src.sin_addr.s_addr = p_ip_h->saddr;
+
+				p_rx_wc_buf_desc->rx.dst.sin_family      = AF_INET;
+				p_rx_wc_buf_desc->rx.dst.sin_port        = p_tcp_h->dest;
+				p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr = p_ip_h->daddr;
+				// Update packet descriptor with datagram base address and length
+				p_rx_wc_buf_desc->rx.frag.iov_base = (uint8_t*)p_tcp_h + sizeof(struct tcphdr);
+				p_rx_wc_buf_desc->rx.frag.iov_len  = ip_tot_len - ip_hdr_len - sizeof(struct tcphdr);
+				p_rx_wc_buf_desc->rx.sz_payload    = ip_tot_len - ip_hdr_len - p_tcp_h->doff*4;
+
+				p_rx_wc_buf_desc->rx.tcp.p_ip_h                 = p_ip_h;
+				p_rx_wc_buf_desc->rx.tcp.p_tcp_h                = p_tcp_h;
+				p_rx_wc_buf_desc->rx.tcp.n_transport_header_len = transport_header_len;
+				p_rx_wc_buf_desc->rx.n_frags = 1;
+
+				ring_logfunc("FAST PATH Rx TCP segment info: src_port=%d, dst_port=%d, flags='%s%s%s%s%s%s' seq=%u, ack=%u, win=%u, payload_sz=%u",
+					ntohs(p_tcp_h->source), ntohs(p_tcp_h->dest),
+					p_tcp_h->urg?"U":"", p_tcp_h->ack?"A":"", p_tcp_h->psh?"P":"",
+					p_tcp_h->rst?"R":"", p_tcp_h->syn?"S":"", p_tcp_h->fin?"F":"",
+					ntohl(p_tcp_h->seq), ntohl(p_tcp_h->ack_seq), ntohs(p_tcp_h->window),
+					p_rx_wc_buf_desc->rx.sz_payload);
+
+				return check_rx_packet(si, p_rx_wc_buf_desc, pv_fd_ready_array);
+
+			} else if (likely(p_ip_h->protocol==IPPROTO_UDP)) {
+				// Get the udp header pointer + udp payload size
+				p_udp_h = (struct udphdr*)((uint8_t*)p_ip_h + ip_hdr_len);
+
+				// Update the L3 and L4 info
+				p_rx_wc_buf_desc->rx.src.sin_family      = AF_INET;
+				p_rx_wc_buf_desc->rx.src.sin_port        = p_udp_h->source;
+				p_rx_wc_buf_desc->rx.src.sin_addr.s_addr = p_ip_h->saddr;
+
+				p_rx_wc_buf_desc->rx.dst.sin_family      = AF_INET;
+				p_rx_wc_buf_desc->rx.dst.sin_port        = p_udp_h->dest;
+				p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr = p_ip_h->daddr;
+				// Update packet descriptor with datagram base address and length
+				p_rx_wc_buf_desc->rx.frag.iov_base = (uint8_t*)p_udp_h + sizeof(struct udphdr);
+				p_rx_wc_buf_desc->rx.frag.iov_len  = ip_tot_len - ip_hdr_len - sizeof(struct udphdr);
+				p_rx_wc_buf_desc->rx.sz_payload    = ntohs(p_udp_h->len) - sizeof(struct udphdr);
+
+				p_rx_wc_buf_desc->rx.udp.local_if        = m_local_if;
+				p_rx_wc_buf_desc->rx.n_frags = 1;
+
+				ring_logfunc("FAST PATH Rx UDP datagram info: src_port=%d, dst_port=%d, payload_sz=%d, csum=%#x",
+					     ntohs(p_udp_h->source), ntohs(p_udp_h->dest), p_rx_wc_buf_desc->rx.sz_payload, p_udp_h->check);
+
+				return check_rx_packet(si, p_rx_wc_buf_desc, pv_fd_ready_array);
+			}
+		}
+	}
+
+	// Validate transport type headers
+	switch (m_transport_type) {
+	case VMA_TRANSPORT_IB:
+	{
+		// Get the data buffer start pointer to the ipoib header pointer
+		struct ipoibhdr* p_ipoib_h = (struct ipoibhdr*)(p_rx_wc_buf_desc->p_buffer + GRH_HDR_LEN);
+
+		transport_header_len = GRH_HDR_LEN + IPOIB_HDR_LEN;
+
+		// Validate IPoIB header
+		if (unlikely(p_ipoib_h->ipoib_header != htonl(IPOIB_HEADER))) {
+			ring_logwarn("Rx buffer dropped - Invalid IPOIB Header Type (%#x : %#x)", p_ipoib_h->ipoib_header, htonl(IPOIB_HEADER));
+			return false;
+		}
+	}
+	break;
+	case VMA_TRANSPORT_ETH:
+	{
+//		printf("\nring_slave::rx_process_buffer\n");
+//		{
+//			struct ethhdr* p_eth_h = (struct ethhdr*)(p_rx_wc_buf_desc->p_buffer);
+//
+//			int i = 0;
+//			printf("p_eth_h->h_dest [0]=%d, [1]=%d, [2]=%d, [3]=%d, [4]=%d, [5]=%d\n",
+//					(uint8_t)p_eth_h->h_dest[0], (uint8_t)p_eth_h->h_dest[1], (uint8_t)p_eth_h->h_dest[2], (uint8_t)p_eth_h->h_dest[3], (uint8_t)p_eth_h->h_dest[4], (uint8_t)p_eth_h->h_dest[5]);
+//			printf("p_eth_h->h_source [0]=%d, [1]=%d, [2]=%d, [3]=%d, [4]=%d, [5]=%d\n",
+//					(uint8_t)p_eth_h->h_source[0], (uint8_t)p_eth_h->h_source[1], (uint8_t)p_eth_h->h_source[2], (uint8_t)p_eth_h->h_source[3], (uint8_t)p_eth_h->h_source[4], (uint8_t)p_eth_h->h_source[5]);
+//
+//			while(i++<62){
+//				printf("%d, ", (uint8_t)p_rx_wc_buf_desc->p_buffer[i]);
+//			}
+//			printf("\n");
+//		}
+
+		uint16_t* p_h_proto = &p_eth_h->h_proto;
+
+		ring_logfunc("Rx buffer Ethernet dst=" ETH_HW_ADDR_PRINT_FMT " <- src=" ETH_HW_ADDR_PRINT_FMT " type=%#x",
+				ETH_HW_ADDR_PRINT_ADDR(p_eth_h->h_dest),
+				ETH_HW_ADDR_PRINT_ADDR(p_eth_h->h_source),
+				htons(*p_h_proto));
+
+		// Handle VLAN header as next protocol
+		struct vlanhdr* p_vlan_hdr = NULL;
+		uint16_t packet_vlan = 0;
+		if (*p_h_proto == htons(ETH_P_8021Q)) {
+			p_vlan_hdr = (struct vlanhdr*)((uint8_t*)p_eth_h + ETH_HDR_LEN);
+			transport_header_len = ETH_VLAN_HDR_LEN;
+			p_h_proto = &p_vlan_hdr->h_vlan_encapsulated_proto;
+			packet_vlan = (htons(p_vlan_hdr->h_vlan_TCI) & VLAN_VID_MASK);
+		} else {
+			transport_header_len = ETH_HDR_LEN;
+		}
+
+		//TODO: Remove this code when handling vlan in flow steering will be available. Change this code if vlan stripping is performed.
+		if((m_partition & VLAN_VID_MASK) != packet_vlan) {
+			ring_logfunc("Rx buffer dropped- Mismatched vlan. Packet vlan = %d, Local vlan = %d", packet_vlan, m_partition & VLAN_VID_MASK);
+			return false;
+		}
+
+		// Validate IP header as next protocol
+		if (unlikely(*p_h_proto != htons(ETH_P_IP))) {
+			ring_logwarn("Rx buffer dropped - Invalid Ethr Type (%#x : %#x)", p_eth_h->h_proto, htons(ETH_P_IP));
+			return false;
+		}
+	}
+	break;
+	default:
+		ring_logwarn("Rx buffer dropped - Unknown transport type %d", m_transport_type);
+		return false;
+	}
+
+	// Jump to IP header - Skip IB (GRH and IPoIB) or Ethernet (MAC) header sizes
+	sz_data -= transport_header_len;
+
+	// Validate size for IPv4 header
+	if (unlikely(sz_data < sizeof(struct iphdr))) {
+		ring_logwarn("Rx buffer dropped - buffer too small for IPv4 header (%d, %d)", sz_data, sizeof(struct iphdr));
+		return false;
+	}
+
+	// Get the ip header pointer
+	p_ip_h = (struct iphdr*)(p_rx_wc_buf_desc->p_buffer + transport_header_len);
+
+	// Drop all non IPv4 packets
+	if (unlikely(p_ip_h->version != IPV4_VERSION)) {
+		ring_logwarn("Rx packet dropped - not IPV4 packet (got version: %#x)", p_ip_h->version);
+		return false;
+	}
+
+	// Check that received buffer size is not smaller then the ip datagram total size
+	ip_tot_len = ntohs(p_ip_h->tot_len);
+	if (unlikely(sz_data < ip_tot_len)) {
+		ring_logwarn("Rx packet dropped - buffer too small for received datagram (RxBuf:%d IP:%d)", sz_data, ip_tot_len);
+		ring_loginfo("Rx packet info (buf->%p, bufsize=%d), id=%d", p_rx_wc_buf_desc->p_buffer, p_rx_wc_buf_desc->sz_data, ntohs(p_ip_h->id));
+		vlog_print_buffer(VLOG_INFO, "rx packet data: ", "\n", (const char*)p_rx_wc_buf_desc->p_buffer, min(112, (int)p_rx_wc_buf_desc->sz_data));
+		return false;
+	} else if (sz_data > ip_tot_len) {
+		p_rx_wc_buf_desc->sz_data -= (sz_data - ip_tot_len);
+	}
+
+	// Read fragmentation parameters
+	ip_frag_off = ntohs(p_ip_h->frag_off);
+	n_frag_offset = (ip_frag_off & FRAGMENT_OFFSET) * 8;
+
+	ring_logfunc("Rx ip packet info: dst=%d.%d.%d.%d, src=%d.%d.%d.%d, packet_sz=%d, offset=%d, id=%d, proto=%s[%d] (local if: %d.%d.%d.%d)",
+			NIPQUAD(p_ip_h->daddr), NIPQUAD(p_ip_h->saddr),
+			(sz_data > ip_tot_len ? ip_tot_len : sz_data), n_frag_offset, ntohs(p_ip_h->id),
+			iphdr_protocol_type_to_str(p_ip_h->protocol), p_ip_h->protocol,
+			NIPQUAD(p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr));
+
+	// Check that the ip datagram has at least the udp header size for the first ip fragment (besides the ip header)
+	ip_hdr_len = (int)(p_ip_h->ihl)*4;
+	if (unlikely((n_frag_offset == 0) && (ip_tot_len < (ip_hdr_len + sizeof(struct udphdr))))) {
+		ring_logwarn("Rx packet dropped - ip packet too small (%d bytes)- udp header cut!", ip_tot_len);
+		return false;
+	}
+
+	// Handle fragmentation
+	p_rx_wc_buf_desc->rx.n_frags = 1;
+	if (unlikely((ip_frag_off & MORE_FRAGMENTS_FLAG) || n_frag_offset)) { // Currently we don't expect to receive fragments
+		//for disabled fragments handling:
+		/*ring_logwarn("Rx packet dropped - VMA doesn't support fragmentation in receive flow!");
+		ring_logwarn("packet info: dst=%d.%d.%d.%d, src=%d.%d.%d.%d, packet_sz=%d, frag_offset=%d, id=%d, proto=%s[%d], transport type=%s, (local if: %d.%d.%d.%d)",
+				NIPQUAD(p_ip_h->daddr), NIPQUAD(p_ip_h->saddr),
+				(sz_data > ip_tot_len ? ip_tot_len : sz_data), n_frag_offset, ntohs(p_ip_h->id),
+				iphdr_protocol_type_to_str(p_ip_h->protocol), p_ip_h->protocol, (m_transport_type ? "ETH" : "IB"),
+				NIPQUAD(local_addr));
+		return false;*/
+#if 1 //handle fragments
+		// Update fragments descriptor with datagram base address and length
+		p_rx_wc_buf_desc->rx.frag.iov_base = (uint8_t*)p_ip_h + ip_hdr_len;
+		p_rx_wc_buf_desc->rx.frag.iov_len  = ip_tot_len - ip_hdr_len;
+
+		// Add ip fragment packet to out fragment manager
+		mem_buf_desc_t* new_buf = NULL;
+		int ret = -1;
+		if (g_p_ip_frag_manager)
+			ret = g_p_ip_frag_manager->add_frag(p_ip_h, p_rx_wc_buf_desc, &new_buf);
+		if (ret < 0)  // Finished with error
+			return false;
+		if (!new_buf)  // This is fragment
+			return true;
+
+		// Re-calc all ip related values for new ip packet of head fragmentation list
+		p_rx_wc_buf_desc = new_buf;
+		p_ip_h = (struct iphdr*)(p_rx_wc_buf_desc->p_buffer + transport_header_len);
+		ip_hdr_len = (int)(p_ip_h->ihl)*4;
+		ip_tot_len = ntohs(p_ip_h->tot_len);
+
+		mem_buf_desc_t *tmp;
+		for (tmp = p_rx_wc_buf_desc; tmp; tmp = tmp->p_next_desc) {
+			++p_rx_wc_buf_desc->rx.n_frags;
+		}
+#endif
+	}
+
+	if (p_rx_wc_buf_desc->rx.is_sw_csum_need && compute_ip_checksum((unsigned short*)p_ip_h, p_ip_h->ihl * 2)) {
+		return false; // false ip checksum
+	}
+
+//We want to enable loopback between processes for IB
+#if 0
+	//AlexV: We don't support Tx MC Loopback today!
+	if (p_ip_h->saddr == m_local_if) {
+		ring_logfunc("Rx udp datagram discarded - mc loop disabled");
+		return false;
+	}
+#endif
+	rfs* p_rfs = NULL;
+
+	// Update the L3 info
+	p_rx_wc_buf_desc->rx.src.sin_family      = AF_INET;
+	p_rx_wc_buf_desc->rx.src.sin_addr.s_addr = p_ip_h->saddr;
+	p_rx_wc_buf_desc->rx.dst.sin_family      = AF_INET;
+	p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr = p_ip_h->daddr;
+
+	switch (p_ip_h->protocol) {
+	case IPPROTO_UDP:
+	{
+		// Get the udp header pointer + udp payload size
+		p_udp_h = (struct udphdr*)((uint8_t*)p_ip_h + ip_hdr_len);
+
+		// Update packet descriptor with datagram base address and length
+		p_rx_wc_buf_desc->rx.frag.iov_base = (uint8_t*)p_udp_h + sizeof(struct udphdr);
+		p_rx_wc_buf_desc->rx.frag.iov_len  = ip_tot_len - ip_hdr_len - sizeof(struct udphdr);
+
+		if (p_rx_wc_buf_desc->rx.is_sw_csum_need && p_udp_h->check && compute_udp_checksum_rx(p_ip_h, p_udp_h, p_rx_wc_buf_desc)) {
+			return false; // false udp checksum
+		}
+
+		size_t sz_payload = ntohs(p_udp_h->len) - sizeof(struct udphdr);
+		ring_logfunc("Rx udp datagram info: src_port=%d, dst_port=%d, payload_sz=%d, csum=%#x",
+				ntohs(p_udp_h->source), ntohs(p_udp_h->dest), sz_payload, p_udp_h->check);
+
+		// Update the L3 info
+		p_rx_wc_buf_desc->rx.udp.local_if        = m_local_if;
+
+		// Update the L4 info
+		p_rx_wc_buf_desc->rx.src.sin_port        = p_udp_h->source;
+		p_rx_wc_buf_desc->rx.dst.sin_port        = p_udp_h->dest;
+		p_rx_wc_buf_desc->rx.sz_payload          = sz_payload;
+
+		// Find the relevant hash map and pass the packet to the rfs for dispatching
+		if (!(IN_MULTICAST_N(p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr))) {      // This is UDP UC packet
+			p_rfs = m_flow_udp_uc_map.get(flow_spec_udp_key_t(p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr,
+				p_rx_wc_buf_desc->rx.dst.sin_port), NULL);
+		} else {        // This is UDP MC packet
+			p_rfs = m_flow_udp_mc_map.get(flow_spec_udp_key_t(p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr,
+				p_rx_wc_buf_desc->rx.dst.sin_port), NULL);
+		}
+	}
+	break;
+
+	case IPPROTO_TCP:
+	{
+		// Get the tcp header pointer + tcp payload size
+		struct tcphdr* p_tcp_h = (struct tcphdr*)((uint8_t*)p_ip_h + ip_hdr_len);
+
+		if (p_rx_wc_buf_desc->rx.is_sw_csum_need && compute_tcp_checksum(p_ip_h, (unsigned short*) p_tcp_h)) {
+			return false; // false tcp checksum
+		}
+
+		size_t sz_payload = ip_tot_len - ip_hdr_len - p_tcp_h->doff*4;
+		ring_logfunc("Rx TCP segment info: src_port=%d, dst_port=%d, flags='%s%s%s%s%s%s' seq=%u, ack=%u, win=%u, payload_sz=%u",
+				ntohs(p_tcp_h->source), ntohs(p_tcp_h->dest),
+				p_tcp_h->urg?"U":"", p_tcp_h->ack?"A":"", p_tcp_h->psh?"P":"",
+				p_tcp_h->rst?"R":"", p_tcp_h->syn?"S":"", p_tcp_h->fin?"F":"",
+				ntohl(p_tcp_h->seq), ntohl(p_tcp_h->ack_seq), ntohs(p_tcp_h->window),
+				sz_payload);
+
+		// Update packet descriptor with datagram base address and length
+		p_rx_wc_buf_desc->rx.frag.iov_base = (uint8_t*)p_tcp_h + sizeof(struct tcphdr);
+		p_rx_wc_buf_desc->rx.frag.iov_len  = ip_tot_len - ip_hdr_len - sizeof(struct tcphdr);
+
+		// Update the L4 info
+		p_rx_wc_buf_desc->rx.src.sin_port        = p_tcp_h->source;
+		p_rx_wc_buf_desc->rx.dst.sin_port        = p_tcp_h->dest;
+		p_rx_wc_buf_desc->rx.sz_payload          = sz_payload;
+
+		p_rx_wc_buf_desc->rx.tcp.p_ip_h = p_ip_h;
+		p_rx_wc_buf_desc->rx.tcp.p_tcp_h = p_tcp_h;
+
+		// Find the relevant hash map and pass the packet to the rfs for dispatching
+		p_rfs = m_flow_tcp_map.get(flow_spec_tcp_key_t(p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr,
+				p_rx_wc_buf_desc->rx.src.sin_addr.s_addr, p_rx_wc_buf_desc->rx.dst.sin_port,
+				p_rx_wc_buf_desc->rx.src.sin_port), NULL);
+
+		p_rx_wc_buf_desc->rx.tcp.n_transport_header_len = transport_header_len;
+
+		if (unlikely(p_rfs == NULL)) {	// If we didn't find a match for TCP 5T, look for a match with TCP 3T
+			p_rfs = m_flow_tcp_map.get(flow_spec_tcp_key_t(p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr, 0,
+					p_rx_wc_buf_desc->rx.dst.sin_port, 0), NULL);
+		}
+	}
+	break;
+
+	case IPPROTO_IGMP:
+	{
+		struct igmp* p_igmp_h= (struct igmp*)((uint8_t*)p_ip_h + ip_hdr_len);
+		NOT_IN_USE(p_igmp_h); /* to supress warning in case VMA_MAX_DEFINED_LOG_LEVEL */
+		ring_logdbg("Rx IGMP packet info: type=%s (%d), group=%d.%d.%d.%d, code=%d",
+				priv_igmp_type_tostr(p_igmp_h->igmp_type), p_igmp_h->igmp_type,
+				NIPQUAD(p_igmp_h->igmp_group.s_addr), p_igmp_h->igmp_code);
+		if (m_transport_type == VMA_TRANSPORT_IB  || m_b_sysvar_eth_mc_l2_only_rules) {
+			ring_logdbg("Transport type is IB (or eth_mc_l2_only_rules), passing igmp packet to igmp_manager to process");
+			if(g_p_igmp_mgr) {
+				(g_p_igmp_mgr->process_igmp_packet(p_ip_h, m_local_if));
+				return false; // we return false in order to free the buffer, although we handled the packet
+			}
+			ring_logdbg("IGMP packet drop. IGMP manager does not exist.");
+			return false;
+		}
+		ring_logerr("Transport type is ETH, dropping the packet");
+		return false;
+	}
+	break;
+
+	default:
+		ring_logwarn("Rx packet dropped - undefined protocol = %d", p_ip_h->protocol);
+		return false;
+	}
+
+	if (unlikely(p_rfs == NULL)) {
+		ring_logdbg("Rx packet dropped - rfs object not found: dst:%d.%d.%d.%d:%d, src%d.%d.%d.%d:%d, proto=%s[%d]",
+				NIPQUAD(p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr), ntohs(p_rx_wc_buf_desc->rx.dst.sin_port),
+				NIPQUAD(p_rx_wc_buf_desc->rx.src.sin_addr.s_addr), ntohs(p_rx_wc_buf_desc->rx.src.sin_port),
+				iphdr_protocol_type_to_str(p_ip_h->protocol), p_ip_h->protocol);
+
+		return false;
+	}
+	return p_rfs->rx_dispatch_packet(p_rx_wc_buf_desc, pv_fd_ready_array);
+}
+
+void ring_slave::flow_udp_del_all()
+{
+	flow_spec_udp_key_t map_key_udp;
+	flow_spec_udp_map_t::iterator itr_udp;
+
+	itr_udp = m_flow_udp_uc_map.begin();
+	while (itr_udp != m_flow_udp_uc_map.end()) {
+		rfs *p_rfs = itr_udp->second;
+		map_key_udp = itr_udp->first;
+		if (p_rfs) {
+			delete p_rfs;
+		}
+		if (!(m_flow_udp_uc_map.del(map_key_udp))) {
+			ring_logdbg("Could not find rfs object to delete in ring udp uc hash map!");
+		}
+		itr_udp =  m_flow_udp_uc_map.begin();
+	}
+
+	itr_udp = m_flow_udp_mc_map.begin();
+	while (itr_udp != m_flow_udp_mc_map.end()) {
+		rfs *p_rfs = itr_udp->second;
+		map_key_udp = itr_udp->first;
+		if (p_rfs) {
+			delete p_rfs;
+		}
+		if (!(m_flow_udp_mc_map.del(map_key_udp))) {
+			ring_logdbg("Could not find rfs object to delete in ring udp mc hash map!");
+		}
+		itr_udp =  m_flow_udp_mc_map.begin();
+	}
+}
+
+void ring_slave::flow_tcp_del_all()
+{
+	flow_spec_tcp_key_t map_key_tcp;
+	flow_spec_tcp_map_t::iterator itr_tcp;
+
+	while ((itr_tcp = m_flow_tcp_map.begin()) != m_flow_tcp_map.end()) {
+		rfs *p_rfs = itr_tcp->second;
+		map_key_tcp = itr_tcp->first;
+		if (p_rfs) {
+			delete p_rfs;
+		}
+		if (!(m_flow_tcp_map.del(map_key_tcp))) {
+			ring_logdbg("Could not find rfs object to delete in ring tcp hash map!");
+		}
+	}
+}
+
+bool ring_slave::request_more_tx_buffers(uint32_t count, uint32_t lkey)
+{
+	ring_logfuncall("Allocating additional %d buffers for internal use", count);
+
+	bool res = g_buffer_pool_tx->get_buffers_thread_safe(m_tx_pool, this, count, lkey);
+	if (!res) {
+		ring_logfunc("Out of mem_buf_desc from TX free pool for internal object pool");
+		return false;
+	}
+
+	return true;
+}
diff -pruN 8.8.1-1/src/vma/dev/ring_slave.h 8.8.1.really.8.7.7-1/src/vma/dev/ring_slave.h
--- 8.8.1-1/src/vma/dev/ring_slave.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ring_slave.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -34,8 +34,8 @@
 #define RING_SLAVE_H_
 
 #include "ring.h"
-#include "vma/dev/net_device_table_mgr.h"
 
+#include "vma/dev/net_device_table_mgr.h"
 
 class rfs;
 
@@ -162,30 +162,54 @@ public:
 	ring_slave(int if_index, ring* parent, ring_type_t type);
 	virtual ~ring_slave();
 
-	virtual void print_val();
-
+	virtual void        print_val();
 	virtual void        restart();
-
 	virtual int         get_num_resources() const { return 1; };
 	virtual bool        is_member(ring_slave* rng);
 	virtual bool        is_active_member(ring_slave* rng, ring_user_id_t id);
 	virtual ring_user_id_t	generate_id();
 	virtual ring_user_id_t	generate_id(const address_t src_mac, const address_t dst_mac, uint16_t eth_proto, uint16_t encap_proto, uint32_t src_ip, uint32_t dst_ip, uint16_t src_port, uint16_t dst_port);
 	virtual bool        is_up() = 0;
-	virtual void        inc_tx_retransmissions(ring_user_id_t id);
-	virtual bool        rx_process_buffer(mem_buf_desc_t* p_rx_wc_buf_desc, void* pv_fd_ready_array) = 0;
+	virtual void        inc_tx_retransmissions_stats(ring_user_id_t id);
+	virtual bool        rx_process_buffer(mem_buf_desc_t* p_rx_wc_buf_desc, void* pv_fd_ready_array);
 	virtual int         reclaim_recv_single_buffer(mem_buf_desc_t* rx_reuse) = 0;
+	virtual void        inc_cq_moderation_stats(size_t sz_data) = 0;
+	virtual uint32_t    get_underly_qpn() = 0;
+	virtual bool        attach_flow(flow_tuple& flow_spec_5t, pkt_rcvr_sink* sink);
+	virtual bool        detach_flow(flow_tuple& flow_spec_5t, pkt_rcvr_sink* sink);
 
 	inline bool         is_simple() const { return m_type != RING_TAP; }
 	inline bool         is_mp_ring() const  { return m_type == RING_ETH_CB; }
 	transport_type_t    get_transport_type() const { return m_transport_type; }
 
-
 	bool                m_active;         /* State indicator */
 
 protected:
+
+	bool			request_more_tx_buffers(uint32_t count, uint32_t lkey);
+	void			flow_udp_del_all();
+	void			flow_tcp_del_all();
+
+	flow_spec_tcp_map_t	m_flow_tcp_map;
+	flow_spec_udp_map_t	m_flow_udp_mc_map;
+	flow_spec_udp_map_t	m_flow_udp_uc_map;
+
+	// For IB MC flow, the port is zeroed in the ibv_flow_spec when calling to ibv_flow_spec().
+	// It means that for every MC group, even if we have sockets with different ports - only one rule in the HW.
+	// So the hash map below keeps track of the number of sockets per rule so we know when to call ibv_attach and ibv_detach
+	rule_filter_map_t	m_l2_mc_ip_attach_map;
+	rule_filter_map_t	m_tcp_dst_port_attach_map;
+
+	descq_t             m_tx_pool;
 	transport_type_t    m_transport_type; /* transport ETH/IB */
 	ring_stats_t*       m_p_ring_stat;
+	lock_spin_recursive	m_lock_ring_rx;
+	lock_spin_recursive	m_lock_ring_tx;
+	in_addr_t           m_local_if;
+	uint16_t            m_partition;
+	bool                m_flow_tag_enabled;
+	const bool          m_b_sysvar_eth_mc_l2_only_rules;
+	const bool          m_b_sysvar_mc_force_flowtag;
 
 private:
 	ring_type_t         m_type;           /* ring type */
diff -pruN 8.8.1-1/src/vma/dev/ring_tap.cpp 8.8.1.really.8.7.7-1/src/vma/dev/ring_tap.cpp
--- 8.8.1-1/src/vma/dev/ring_tap.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ring_tap.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -34,30 +34,20 @@
 
 #include <linux/if_tun.h>
 #include "vma/util/sg_array.h"
-#include "vma/dev/net_device_table_mgr.h"
-#include "vma/dev/rfs.h"
-#include "vma/dev/rfs_mc.h"
-#include "vma/dev/rfs_uc.h"
-#include "vma/dev/rfs_uc_tcp_gro.h"
-#include "vma/proto/ip_frag.h"
 #include "vma/sock/fd_collection.h"
+#include "vma/dev/net_device_table_mgr.h"
 
 #undef  MODULE_NAME
 #define MODULE_NAME "ring_tap"
 #undef  MODULE_HDR
 #define MODULE_HDR MODULE_NAME "%d:%s() "
 
-
 ring_tap::ring_tap(int if_index, ring* parent):
 	ring_slave(if_index, parent, RING_TAP),
 	m_tap_fd(-1),
 	m_vf_ring(NULL),
 	m_sysvar_qp_compensation_level(safe_mce_sys().qp_compensation_level),
-	m_tap_data_available(false),
-	m_lock_ring_rx("ring_tap:lock_rx"),
-	m_lock_ring_tx("ring_tap:lock_tx"),
-	m_flow_tag_enabled(false),
-	m_partition(0)
+	m_tap_data_available(false)
 {
 	int rc = 0;
 	struct vma_msg_flow data;
@@ -67,9 +57,6 @@ ring_tap::ring_tap(int if_index, ring* p
 	/* Create TAP device and update ring class with new if_index */
 	tap_create(p_ndev);
 
-	m_local_if = p_ndev->get_local_addr();
-	m_mtu = p_ndev->get_mtu();
-
 	/* Register tap ring to the internal thread */
 	m_p_n_rx_channel_fds = new int[1];
 	m_p_n_rx_channel_fds[0] = m_tap_fd;
@@ -85,8 +72,7 @@ ring_tap::ring_tap(int if_index, ring* p
 	m_rx_pool.set_id("ring_tap (%p) : m_rx_pool", this);
 
 	/* Initialize TX buffer poll */
-	request_more_tx_buffers();
-	m_tx_pool.set_id("ring_tap (%p) : m_tx_pool", this);
+	request_more_tx_buffers(m_sysvar_qp_compensation_level, 0);
 
 	/* Update ring statistics */
 	m_p_ring_stat->tap.n_tap_fd = m_tap_fd;
@@ -117,9 +103,6 @@ ring_tap::~ring_tap()
 	/* Release RX buffer poll */
 	g_buffer_pool_rx->put_buffers_thread_safe(&m_rx_pool, m_rx_pool.size());
 
-	/* Release TX buffer poll */
-	g_buffer_pool_tx->put_buffers_thread_safe(&m_tx_pool, m_tx_pool.size());
-
 	delete[] m_p_n_rx_channel_fds;
 
 	/* TAP device release */
@@ -254,21 +237,10 @@ void ring_tap::tap_destroy()
 
 bool ring_tap::attach_flow(flow_tuple& flow_spec_5t, pkt_rcvr_sink *sink)
 {
-	rfs* p_rfs;
-	rfs* p_tmp_rfs = NULL;
-	sockinfo* si = static_cast<sockinfo*> (sink);
-	uint32_t flow_tag_id = 0; // spec will not be attached to rule
-#if 0 /* useless: m_flow_tag_enabled=false for ring_tap */
-	bool m_b_sysvar_mc_force_flowtag = false;
-#endif /* useless */
-
-	ring_logdbg("flow: %s, with sink (%p)",
-		    flow_spec_5t.to_str(), sink);
-
-	if( sink == NULL )
-		return false;
+	auto_unlocker lock(m_lock_ring_rx);
+	bool ret = ring_slave::attach_flow(flow_spec_5t, sink);
 
-	if (flow_spec_5t.is_tcp() || flow_spec_5t.is_udp_uc()) {
+	if (ret && (flow_spec_5t.is_tcp() || flow_spec_5t.is_udp_uc())) {
 		int rc = 0;
 		struct vma_msg_flow data;
 		rc = prepare_flow_message(data, VMA_MSG_FLOW_ADD, flow_spec_5t);
@@ -276,228 +248,18 @@ bool ring_tap::attach_flow(flow_tuple& f
 			if (!g_b_exit) {
 				ring_logwarn("Add TC rule failed with error=%d", rc);
 			}
-			return false;
-		}
-	}
-
-#if 0 /* useless: m_flow_tag_enabled=false for ring_tap */
-	// If m_flow_tag_enabled==true then flow tag is supported and flow_tag_id is guaranteed
-	// to have a !0 value which will results in a flow id being added to the flow spec.
-	// Otherwise, flow tag is not supported, flow_tag_id=0 and no flow id will be set in the flow spec.
-	if (m_flow_tag_enabled) {
-		// sockfd=0 is valid too but flow_tag_id=0 is invalid, increment it
-		// effectively limiting our sockfd range to FLOW_TAG_MASK-1
-		int flow_tag_id_candidate = si->get_fd() + 1;
-		if (flow_tag_id_candidate > 0) {
-			flow_tag_id = flow_tag_id_candidate & FLOW_TAG_MASK;
-			if ((uint32_t)flow_tag_id_candidate != flow_tag_id) {
-				// tag_id is out of the range by mask, will not use it
-				ring_logdbg("flow_tag disabled as tag_id: %d is out of mask (%x) range!",
-					    flow_tag_id, FLOW_TAG_MASK);
-				flow_tag_id = FLOW_TAG_MASK;
-			}
-			ring_logdbg("sock_fd:%d enabled:%d with id:%d",
-				    flow_tag_id_candidate-1, m_flow_tag_enabled, flow_tag_id);
-		} else {
-			flow_tag_id = FLOW_TAG_MASK; // FLOW_TAG_MASK - modal, FT to be attached but will not be used
-			ring_logdbg("flow_tag:%d disabled as flow_tag_id_candidate:%d", flow_tag_id, flow_tag_id_candidate);
-		}
-	}
-#endif /* useless */
-	/*
-	 * //auto_unlocker lock(m_lock_ring_rx);
-	 * todo instead of locking the whole function which have many "new" calls,
-	 * we'll only lock the parts that touch the ring members.
-	 * if some of the constructors need the ring locked, we need to modify
-	 * and add separate functions for that, which will be called after ctor with ring locked.
-	 * currently we assume the ctors does not require the ring to be locked.
-	 */
-	m_lock_ring_rx.lock();
-
-	/* Get the appropriate hash map (tcp, uc or mc) from the 5t details */
-	if (flow_spec_5t.is_udp_uc()) {
-		flow_spec_udp_key_t key_udp_uc(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_dst_port());
-		if (flow_tag_id && si->flow_in_reuse()) {
-			flow_tag_id = FLOW_TAG_MASK;
-			ring_logdbg("UC flow tag for socketinfo=%p is disabled: SO_REUSEADDR or SO_REUSEPORT were enabled", si);
-		}
-		p_rfs = m_flow_udp_uc_map.get(key_udp_uc, NULL);
-		if (p_rfs == NULL) {
-			// No rfs object exists so a new one must be created and inserted in the flow map
-			m_lock_ring_rx.unlock();
-			try {
-				p_tmp_rfs = new rfs_uc(&flow_spec_5t, this, NULL, flow_tag_id);
-			} catch(vma_exception& e) {
-				ring_logerr("%s", e.message);
-				return false;
-			}
-			BULLSEYE_EXCLUDE_BLOCK_START
-			if (p_tmp_rfs == NULL) {
-				ring_logerr("Failed to allocate rfs!");
-				return false;
-			}
-			BULLSEYE_EXCLUDE_BLOCK_END
-			m_lock_ring_rx.lock();
-			p_rfs = m_flow_udp_uc_map.get(key_udp_uc, NULL);
-			if (p_rfs) {
-				delete p_tmp_rfs;
-			} else {
-				p_rfs = p_tmp_rfs;
-				m_flow_udp_uc_map.set(key_udp_uc, p_rfs);
-			}
-		}
-	} else if (flow_spec_5t.is_udp_mc()) {
-		flow_spec_udp_key_t key_udp_mc(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_dst_port());
-
-#if 0 /* useless: m_flow_tag_enabled=false for ring_tap */
-		if (flow_tag_id) {
-			if (m_b_sysvar_mc_force_flowtag || !si->flow_in_reuse()) {
-				ring_logdbg("MC flow tag ID=%d for socketinfo=%p is enabled: force_flowtag=%d, SO_REUSEADDR | SO_REUSEPORT=%d",
-					flow_tag_id, si, m_b_sysvar_mc_force_flowtag, si->flow_in_reuse());
-			} else {
-				flow_tag_id = FLOW_TAG_MASK;
-				ring_logdbg("MC flow tag for socketinfo=%p is disabled: force_flowtag=0, SO_REUSEADDR or SO_REUSEPORT were enabled", si);
-			}
-		}
-#endif /* useless */
-		// Note for CX3:
-		// For IB MC flow, the port is zeroed in the ibv_flow_spec when calling to ibv_flow_spec().
-		// It means that for every MC group, even if we have sockets with different ports - only one rule in the HW.
-		// So the hash map below keeps track of the number of sockets per rule so we know when to call ibv_attach and ibv_detach
-		rfs_rule_filter* l2_mc_ip_filter = NULL;
-#if 0 /* useless */
-		if ((m_transport_type == VMA_TRANSPORT_IB && 0 == m_p_qp_mgr->get_underly_qpn()) || m_b_sysvar_eth_mc_l2_only_rules) {
-			rule_filter_map_t::iterator l2_mc_iter = m_l2_mc_ip_attach_map.find(key_udp_mc.dst_ip);
-			if (l2_mc_iter == m_l2_mc_ip_attach_map.end()) { // It means that this is the first time attach called with this MC ip
-				m_l2_mc_ip_attach_map[key_udp_mc.dst_ip].counter = 1;
-			} else {
-				m_l2_mc_ip_attach_map[key_udp_mc.dst_ip].counter = ((l2_mc_iter->second.counter) + 1);
-			}
-		}
-#endif /* useless */
-		p_rfs = m_flow_udp_mc_map.get(key_udp_mc, NULL);
-		if (p_rfs == NULL) {		// It means that no rfs object exists so I need to create a new one and insert it to the flow map
-			m_lock_ring_rx.unlock();
-#if 0 /* useless */
-			if ((m_transport_type == VMA_TRANSPORT_IB && 0 == m_p_qp_mgr->get_underly_qpn()) || m_b_sysvar_eth_mc_l2_only_rules) {
-				l2_mc_ip_filter = new rfs_rule_filter(m_l2_mc_ip_attach_map, key_udp_mc.dst_ip, flow_spec_5t);
-			}
-#endif /* useless */
-			try {
-				p_tmp_rfs = new rfs_mc(&flow_spec_5t, this, l2_mc_ip_filter, flow_tag_id);
-			} catch(vma_exception& e) {
-				ring_logerr("%s", e.message);
-				return false;
-			}
-			BULLSEYE_EXCLUDE_BLOCK_START
-			if (p_tmp_rfs == NULL) {
-				ring_logerr("Failed to allocate rfs!");
-				return false;
-			}
-			BULLSEYE_EXCLUDE_BLOCK_END
-			m_lock_ring_rx.lock();
-			p_rfs = m_flow_udp_mc_map.get(key_udp_mc, NULL);
-			if (p_rfs) {
-				delete p_tmp_rfs;
-			} else {
-				p_rfs = p_tmp_rfs;
-				m_flow_udp_mc_map.set(key_udp_mc, p_rfs);
-			}
-		}
-	} else if (flow_spec_5t.is_tcp()) {
-		flow_spec_tcp_key_t key_tcp(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_src_ip(), flow_spec_5t.get_dst_port(), flow_spec_5t.get_src_port());
-		rule_key_t rule_key(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_dst_port());
-		rfs_rule_filter* tcp_dst_port_filter = NULL;
-		if (safe_mce_sys().tcp_3t_rules) {
-			rule_filter_map_t::iterator tcp_dst_port_iter = m_tcp_dst_port_attach_map.find(rule_key.key);
-			if (tcp_dst_port_iter == m_tcp_dst_port_attach_map.end()) {
-				m_tcp_dst_port_attach_map[rule_key.key].counter = 1;
-			} else {
-				m_tcp_dst_port_attach_map[rule_key.key].counter = ((tcp_dst_port_iter->second.counter) + 1);
-			}
-		}
-
-		p_rfs = m_flow_tcp_map.get(key_tcp, NULL);
-		if (p_rfs == NULL) {		// It means that no rfs object exists so I need to create a new one and insert it to the flow map
-			m_lock_ring_rx.unlock();
-			if (safe_mce_sys().tcp_3t_rules) {
-				flow_tuple tcp_3t_only(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_dst_port(), 0, 0, flow_spec_5t.get_protocol());
-				tcp_dst_port_filter = new rfs_rule_filter(m_tcp_dst_port_attach_map, rule_key.key, tcp_3t_only);
-			}
-#if 0 /* useless */
-			if(safe_mce_sys().gro_streams_max && flow_spec_5t.is_5_tuple()) {
-				// When the gro mechanism is being used, packets must be processed in the rfs
-				// layer. This must not be bypassed by using flow tag.
-				if (flow_tag_id) {
-					flow_tag_id = FLOW_TAG_MASK;
-					ring_logdbg("flow_tag_id = %d is disabled to enable TCP GRO socket to be processed on RFS!", flow_tag_id);
-				}
-				p_tmp_rfs = new rfs_uc_tcp_gro(&flow_spec_5t, this, tcp_dst_port_filter, flow_tag_id);
-			} else
-#endif /* useless */
-			{
-				try {
-					p_tmp_rfs = new rfs_uc(&flow_spec_5t, this, tcp_dst_port_filter, flow_tag_id);
-				} catch(vma_exception& e) {
-					ring_logerr("%s", e.message);
-					return false;
-				}
-			}
-			BULLSEYE_EXCLUDE_BLOCK_START
-			if (p_tmp_rfs == NULL) {
-				ring_logerr("Failed to allocate rfs!");
-				return false;
-			}
-			BULLSEYE_EXCLUDE_BLOCK_END
-			/* coverity[double_lock] TODO: RM#1049980 */
-			m_lock_ring_rx.lock();
-			p_rfs = m_flow_tcp_map.get(key_tcp, NULL);
-			if (p_rfs) {
-				delete p_tmp_rfs;
-			} else {
-				p_rfs = p_tmp_rfs;
-				m_flow_tcp_map.set(key_tcp, p_rfs);
-			}
+			ring_slave::detach_flow(flow_spec_5t, sink);
+			ret = false;
 		}
-	BULLSEYE_EXCLUDE_BLOCK_START
-	} else {
-		m_lock_ring_rx.unlock();
-		ring_logerr("Could not find map (TCP, UC or MC) for requested flow");
-		return false;
 	}
-	BULLSEYE_EXCLUDE_BLOCK_END
 
-	bool ret = p_rfs->attach_flow(sink);
-	if (ret) {
-#if 0 /* useless: m_flow_tag_enabled=false for ring_tap */
-		if (flow_tag_id && (flow_tag_id != FLOW_TAG_MASK)) {
-			// A flow with FlowTag was attached succesfully, check stored rfs for fast path be tag_id
-			si->set_flow_tag(flow_tag_id);
-			ring_logdbg("flow_tag: %d registration is done!", flow_tag_id);
-		}
-#endif /* useless */
-		if (flow_spec_5t.is_tcp() && !flow_spec_5t.is_3_tuple()) {
-			// save the single 5tuple TCP connected socket for improved fast path
-			si->set_tcp_flow_is_5t();
-			ring_logdbg("single 5T TCP update m_tcp_flow_is_5t m_flow_tag_enabled: %d", m_flow_tag_enabled);
-		}
-	} else {
-		ring_logerr("attach_flow=%d failed!", ret);
-	}
-	/* coverity[double_unlock] TODO: RM#1049980 */
-	m_lock_ring_rx.unlock();
 	return ret;
 }
 
 bool ring_tap::detach_flow(flow_tuple& flow_spec_5t, pkt_rcvr_sink* sink)
 {
-	rfs* p_rfs = NULL;
-
-	ring_logdbg("flow: %s, with sink (%p)",
-		    flow_spec_5t.to_str(), sink);
-
-	if( sink == NULL )
-		return false;
+	auto_unlocker lock(m_lock_ring_rx);
+	bool ret = ring_slave::detach_flow(flow_spec_5t, sink);
 
 	if (flow_spec_5t.is_tcp() || flow_spec_5t.is_udp_uc()) {
 		int rc = 0;
@@ -507,122 +269,20 @@ bool ring_tap::detach_flow(flow_tuple& f
 			if (!g_b_exit) {
 				ring_logwarn("Del TC rule failed with error=%d", rc);
 			}
-			return false;
+			ret = false;
 		}
 	}
 
-	auto_unlocker lock(m_lock_ring_rx);
-
-	/* Get the appropriate hash map (tcp, uc or mc) from the 5t details */
-	if (flow_spec_5t.is_udp_uc()) {
-		flow_spec_udp_key_t key_udp_uc(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_dst_port());
-		p_rfs = m_flow_udp_uc_map.get(key_udp_uc, NULL);
-		BULLSEYE_EXCLUDE_BLOCK_START
-		if (p_rfs == NULL) {
-			ring_logdbg("Could not find rfs object to detach!");
-			return false;
-		}
-		BULLSEYE_EXCLUDE_BLOCK_END
-		p_rfs->detach_flow(sink);
-		if (p_rfs->get_num_of_sinks() == 0) {
-			BULLSEYE_EXCLUDE_BLOCK_START
-			if (!(m_flow_udp_uc_map.del(key_udp_uc))) {
-				ring_logdbg("Could not find rfs object to delete in ring udp uc hash map!");
-			}
-			BULLSEYE_EXCLUDE_BLOCK_END
-			delete p_rfs;
-		}
-	} else if (flow_spec_5t.is_udp_mc()) {
-		flow_spec_udp_key_t key_udp_mc(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_dst_port());
-#if 0 /* useless */
-		int keep_in_map = 1;
-		if (m_transport_type == VMA_TRANSPORT_IB || m_b_sysvar_eth_mc_l2_only_rules) {
-			rule_filter_map_t::iterator l2_mc_iter = m_l2_mc_ip_attach_map.find(key_udp_mc.dst_ip);
-			BULLSEYE_EXCLUDE_BLOCK_START
-			if (l2_mc_iter == m_l2_mc_ip_attach_map.end()) {
-				ring_logdbg("Could not find matching counter for the MC group!");
-			BULLSEYE_EXCLUDE_BLOCK_END
-			} else {
-				keep_in_map = m_l2_mc_ip_attach_map[key_udp_mc.dst_ip].counter = MAX(0 , ((l2_mc_iter->second.counter) - 1));
-			}
-		}
-#endif /* useless */
-		p_rfs = m_flow_udp_mc_map.get(key_udp_mc, NULL);
-		BULLSEYE_EXCLUDE_BLOCK_START
-		if (p_rfs == NULL) {
-			ring_logdbg("Could not find rfs object to detach!");
-			return false;
-		}
-		BULLSEYE_EXCLUDE_BLOCK_END
-		p_rfs->detach_flow(sink);
-#if 0 /* useless */
-		if(!keep_in_map){
-			m_l2_mc_ip_attach_map.erase(m_l2_mc_ip_attach_map.find(key_udp_mc.dst_ip));
-		}
-#endif /* useless */
-		if (p_rfs->get_num_of_sinks() == 0) {
-			BULLSEYE_EXCLUDE_BLOCK_START
-			if (!(m_flow_udp_mc_map.del(key_udp_mc))) {
-				ring_logdbg("Could not find rfs object to delete in ring udp mc hash map!");
-			}
-			BULLSEYE_EXCLUDE_BLOCK_END
-			delete p_rfs;
-		}
-	} else if (flow_spec_5t.is_tcp()) {
-		int keep_in_map = 1;
-		flow_spec_tcp_key_t key_tcp(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_src_ip(), flow_spec_5t.get_dst_port(), flow_spec_5t.get_src_port());
-		rule_key_t rule_key(flow_spec_5t.get_dst_ip(), flow_spec_5t.get_dst_port());
-		if (safe_mce_sys().tcp_3t_rules) {
-			rule_filter_map_t::iterator tcp_dst_port_iter = m_tcp_dst_port_attach_map.find(rule_key.key);
-			BULLSEYE_EXCLUDE_BLOCK_START
-			if (tcp_dst_port_iter == m_tcp_dst_port_attach_map.end()) {
-				ring_logdbg("Could not find matching counter for TCP src port!");
-				BULLSEYE_EXCLUDE_BLOCK_END
-			} else {
-				keep_in_map = m_tcp_dst_port_attach_map[rule_key.key].counter = MAX(0 , ((tcp_dst_port_iter->second.counter) - 1));
-			}
-		}
-		p_rfs = m_flow_tcp_map.get(key_tcp, NULL);
-		BULLSEYE_EXCLUDE_BLOCK_START
-		if (p_rfs == NULL) {
-			ring_logdbg("Could not find rfs object to detach!");
-			return false;
-		}
-		BULLSEYE_EXCLUDE_BLOCK_END
-
-		p_rfs->detach_flow(sink);
-		if(!keep_in_map){
-			m_tcp_dst_port_attach_map.erase(m_tcp_dst_port_attach_map.find(rule_key.key));
-		}
-		if (p_rfs->get_num_of_sinks() == 0) {
-			BULLSEYE_EXCLUDE_BLOCK_START
-			if (!(m_flow_tcp_map.del(key_tcp))) {
-				ring_logdbg("Could not find rfs object to delete in ring tcp hash map!");
-			}
-			BULLSEYE_EXCLUDE_BLOCK_END
-			delete p_rfs;
-		}
-	BULLSEYE_EXCLUDE_BLOCK_START
-	} else {
-		ring_logerr("Could not find map (TCP, UC or MC) for requested flow");
-		return false;
-	}
-	BULLSEYE_EXCLUDE_BLOCK_END
-
-	return true;
+	return ret;
 }
 
-int ring_tap::poll_and_process_element_rx(uint64_t* p_cq_poll_sn, void* pv_fd_ready_array)
+int ring_tap::poll_and_process_element_rx(uint64_t*, void* pv_fd_ready_array)
 {
-	NOT_IN_USE(p_cq_poll_sn);
 	return process_element_rx(pv_fd_ready_array);
 }
 
-int ring_tap::wait_for_notification_and_process_element(int cq_channel_fd,
-		uint64_t* p_cq_poll_sn, void* pv_fd_ready_array)
+int ring_tap::wait_for_notification_and_process_element(int, uint64_t*, void* pv_fd_ready_array)
 {
-	NOT_IN_USE(cq_channel_fd);
-	NOT_IN_USE(p_cq_poll_sn);
 	return process_element_rx(pv_fd_ready_array);
 }
 
@@ -684,433 +344,6 @@ bool ring_tap::reclaim_recv_buffers(mem_
 	return false;
 }
 
-#if 0 /* useless: m_flow_tag_enabled=false for ring_tap */
-// calling sockinfo callback with RFS bypass
-static inline bool check_rx_packet(sockinfo *si, mem_buf_desc_t* p_rx_wc_buf_desc, void *fd_ready_array)
-{
-	// Dispatching: Notify new packet to the FIRST registered receiver ONLY
-	p_rx_wc_buf_desc->reset_ref_count();
-	p_rx_wc_buf_desc->inc_ref_count();
-
-	si->rx_input_cb(p_rx_wc_buf_desc,fd_ready_array);
-
-	// Check packet ref_count to see the last receiver is interested in this packet
-	if (p_rx_wc_buf_desc->dec_ref_count() > 1) {
-		// The sink will be responsible to return the buffer to CQ for reuse
-		return true;
-	}
-	// Reuse this data buffer & mem_buf_desc
-	return false;
-}
-#endif /* useless */
-
-
-bool ring_tap::rx_process_buffer(mem_buf_desc_t* p_rx_wc_buf_desc, void* pv_fd_ready_array)
-{
-	size_t sz_data = 0;
-	size_t transport_header_len;
-	uint16_t ip_hdr_len = 0;
-	uint16_t ip_tot_len = 0;
-	uint16_t ip_frag_off = 0;
-	uint16_t n_frag_offset = 0;
-	struct ethhdr* p_eth_h = (struct ethhdr*)(p_rx_wc_buf_desc->p_buffer);
-	struct iphdr* p_ip_h = NULL;
-	struct udphdr* p_udp_h = NULL;
-
-	// Validate buffer size
-	sz_data = p_rx_wc_buf_desc->sz_data;
-	if (unlikely(sz_data > p_rx_wc_buf_desc->sz_buffer)) {
-		if (sz_data == IP_FRAG_FREED) {
-			ring_logfuncall("Rx buffer dropped - old fragment part");
-		} else {
-			ring_logwarn("Rx buffer dropped - buffer too small (%d, %d)", sz_data, p_rx_wc_buf_desc->sz_buffer);
-		}
-		return false;
-	}
-
-	m_p_ring_stat->n_rx_byte_count += sz_data;
-	++m_p_ring_stat->n_rx_pkt_count;
-
-#if 0 /* useless: m_flow_tag_enabled=false for ring_tap */
-	// This is an internal function (within ring and 'friends'). No need for lock mechanism.
-	if (likely(m_flow_tag_enabled && p_rx_wc_buf_desc->rx.flow_tag_id &&
-		   (p_rx_wc_buf_desc->rx.flow_tag_id != FLOW_TAG_MASK))) {
-		sockinfo* si = NULL;
-		// trying to get sockinfo per flow_tag_id-1 as it was incremented at attach
-		// to allow mapping sockfd=0
-		si = static_cast <sockinfo* >(g_p_fd_collection->get_sockfd(p_rx_wc_buf_desc->rx.flow_tag_id-1));
-
-		if (likely((si != NULL) && si->flow_tag_enabled())) {
-			// will process packets with set flow_tag_id and enabled for the socket
-			if (p_eth_h->h_proto == htons(ETH_P_8021Q)) {
-				// Handle VLAN header as next protocol
-				transport_header_len = ETH_VLAN_HDR_LEN;
-			} else {
-				transport_header_len = ETH_HDR_LEN;
-			}
-			p_ip_h = (struct iphdr*)(p_rx_wc_buf_desc->p_buffer + transport_header_len);
-			ip_hdr_len = 20; //(int)(p_ip_h->ihl)*4;
-			ip_tot_len = ntohs(p_ip_h->tot_len);
-
-			ring_logfunc("FAST PATH Rx packet info: transport_header_len: %d, IP_header_len: %d L3 proto: %d tcp_5t: %d",
-				transport_header_len, p_ip_h->ihl, p_ip_h->protocol, si->tcp_flow_is_5t());
-
-			if (likely(si->tcp_flow_is_5t())) {
-				// we have a single 5tuple TCP connected socket, use simpler fast path
-				struct tcphdr* p_tcp_h = (struct tcphdr*)((uint8_t*)p_ip_h + ip_hdr_len);
-
-				// Update the L3 and L4 info
-				p_rx_wc_buf_desc->rx.src.sin_family      = AF_INET;
-				p_rx_wc_buf_desc->rx.src.sin_port        = p_tcp_h->source;
-				p_rx_wc_buf_desc->rx.src.sin_addr.s_addr = p_ip_h->saddr;
-
-				p_rx_wc_buf_desc->rx.dst.sin_family      = AF_INET;
-				p_rx_wc_buf_desc->rx.dst.sin_port        = p_tcp_h->dest;
-				p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr = p_ip_h->daddr;
-				// Update packet descriptor with datagram base address and length
-				p_rx_wc_buf_desc->rx.frag.iov_base = (uint8_t*)p_tcp_h + sizeof(struct tcphdr);
-				p_rx_wc_buf_desc->rx.frag.iov_len  = ip_tot_len - ip_hdr_len - sizeof(struct tcphdr);
-				p_rx_wc_buf_desc->rx.sz_payload    = ip_tot_len - ip_hdr_len - p_tcp_h->doff*4;
-
-				p_rx_wc_buf_desc->rx.tcp.p_ip_h                 = p_ip_h;
-				p_rx_wc_buf_desc->rx.tcp.p_tcp_h                = p_tcp_h;
-				p_rx_wc_buf_desc->rx.tcp.n_transport_header_len = transport_header_len;
-				p_rx_wc_buf_desc->rx.n_frags = 1;
-
-				ring_logfunc("FAST PATH Rx TCP segment info: src_port=%d, dst_port=%d, flags='%s%s%s%s%s%s' seq=%u, ack=%u, win=%u, payload_sz=%u",
-					ntohs(p_tcp_h->source), ntohs(p_tcp_h->dest),
-					p_tcp_h->urg?"U":"", p_tcp_h->ack?"A":"", p_tcp_h->psh?"P":"",
-					p_tcp_h->rst?"R":"", p_tcp_h->syn?"S":"", p_tcp_h->fin?"F":"",
-					ntohl(p_tcp_h->seq), ntohl(p_tcp_h->ack_seq), ntohs(p_tcp_h->window),
-					p_rx_wc_buf_desc->rx.sz_payload);
-
-				return check_rx_packet(si, p_rx_wc_buf_desc, pv_fd_ready_array);
-
-			} else if (likely(p_ip_h->protocol==IPPROTO_UDP)) {
-				// Get the udp header pointer + udp payload size
-				p_udp_h = (struct udphdr*)((uint8_t*)p_ip_h + ip_hdr_len);
-
-				// Update the L3 and L4 info
-				p_rx_wc_buf_desc->rx.src.sin_family      = AF_INET;
-				p_rx_wc_buf_desc->rx.src.sin_port        = p_udp_h->source;
-				p_rx_wc_buf_desc->rx.src.sin_addr.s_addr = p_ip_h->saddr;
-
-				p_rx_wc_buf_desc->rx.dst.sin_family      = AF_INET;
-				p_rx_wc_buf_desc->rx.dst.sin_port        = p_udp_h->dest;
-				p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr = p_ip_h->daddr;
-				// Update packet descriptor with datagram base address and length
-				p_rx_wc_buf_desc->rx.frag.iov_base = (uint8_t*)p_udp_h + sizeof(struct udphdr);
-				p_rx_wc_buf_desc->rx.frag.iov_len  = ip_tot_len - ip_hdr_len - sizeof(struct udphdr);
-				p_rx_wc_buf_desc->rx.sz_payload    = ntohs(p_udp_h->len) - sizeof(struct udphdr);
-
-				p_rx_wc_buf_desc->rx.udp.local_if        = m_local_if;
-				p_rx_wc_buf_desc->rx.n_frags = 1;
-
-				ring_logfunc("FAST PATH Rx UDP datagram info: src_port=%d, dst_port=%d, payload_sz=%d, csum=%#x",
-					     ntohs(p_udp_h->source), ntohs(p_udp_h->dest), p_rx_wc_buf_desc->rx.sz_payload, p_udp_h->check);
-
-				return check_rx_packet(si, p_rx_wc_buf_desc, pv_fd_ready_array);
-			}
-		}
-	}
-#endif /* useless */
-
-	// Validate transport type headers
-	switch (m_transport_type) {
-#if 0 /* useless: IB is not supported */
-	case VMA_TRANSPORT_IB:
-	{
-		// Get the data buffer start pointer to the ipoib header pointer
-		struct ipoibhdr* p_ipoib_h = (struct ipoibhdr*)(p_rx_wc_buf_desc->p_buffer + GRH_HDR_LEN);
-
-		transport_header_len = GRH_HDR_LEN + IPOIB_HDR_LEN;
-
-		// Validate IPoIB header
-		if (unlikely(p_ipoib_h->ipoib_header != htonl(IPOIB_HEADER))) {
-			ring_logwarn("Rx buffer dropped - Invalid IPOIB Header Type (%#x : %#x)", p_ipoib_h->ipoib_header, htonl(IPOIB_HEADER));
-			return false;
-		}
-	}
-	break;
-#endif /* useless */
-	case VMA_TRANSPORT_ETH:
-	{
-//		printf("\nring_simple::rx_process_buffer\n");
-//		{
-//			struct ethhdr* p_eth_h = (struct ethhdr*)(p_rx_wc_buf_desc->p_buffer);
-//
-//			int i = 0;
-//			printf("p_eth_h->h_dest [0]=%d, [1]=%d, [2]=%d, [3]=%d, [4]=%d, [5]=%d\n",
-//					(uint8_t)p_eth_h->h_dest[0], (uint8_t)p_eth_h->h_dest[1], (uint8_t)p_eth_h->h_dest[2], (uint8_t)p_eth_h->h_dest[3], (uint8_t)p_eth_h->h_dest[4], (uint8_t)p_eth_h->h_dest[5]);
-//			printf("p_eth_h->h_source [0]=%d, [1]=%d, [2]=%d, [3]=%d, [4]=%d, [5]=%d\n",
-//					(uint8_t)p_eth_h->h_source[0], (uint8_t)p_eth_h->h_source[1], (uint8_t)p_eth_h->h_source[2], (uint8_t)p_eth_h->h_source[3], (uint8_t)p_eth_h->h_source[4], (uint8_t)p_eth_h->h_source[5]);
-//
-//			while(i++<62){
-//				printf("%d, ", (uint8_t)p_rx_wc_buf_desc->p_buffer[i]);
-//			}
-//			printf("\n");
-//		}
-
-		uint16_t* p_h_proto = &p_eth_h->h_proto;
-
-		ring_logfunc("Rx buffer Ethernet dst=" ETH_HW_ADDR_PRINT_FMT " <- src=" ETH_HW_ADDR_PRINT_FMT " type=%#x",
-				ETH_HW_ADDR_PRINT_ADDR(p_eth_h->h_dest),
-				ETH_HW_ADDR_PRINT_ADDR(p_eth_h->h_source),
-				htons(*p_h_proto));
-
-		// Handle VLAN header as next protocol
-		struct vlanhdr* p_vlan_hdr = NULL;
-		uint16_t packet_vlan = 0;
-		if (*p_h_proto == htons(ETH_P_8021Q)) {
-			p_vlan_hdr = (struct vlanhdr*)((uint8_t*)p_eth_h + ETH_HDR_LEN);
-			transport_header_len = ETH_VLAN_HDR_LEN;
-			p_h_proto = &p_vlan_hdr->h_vlan_encapsulated_proto;
-			packet_vlan = (htons(p_vlan_hdr->h_vlan_TCI) & VLAN_VID_MASK);
-		} else {
-			transport_header_len = ETH_HDR_LEN;
-		}
-
-		//TODO: Remove this code when handling vlan in flow steering will be available. Change this code if vlan stripping is performed.
-		if((m_partition & VLAN_VID_MASK) != packet_vlan) {
-			ring_logfunc("Rx buffer dropped- Mismatched vlan. Packet vlan = %d, Local vlan = %d", packet_vlan, m_partition & VLAN_VID_MASK);
-			return false;
-		}
-
-		// Validate IP header as next protocol
-		if (unlikely(*p_h_proto != htons(ETH_P_IP))) {
-			ring_logwarn("Rx buffer dropped - Invalid Ethr Type (%#x : %#x)", p_eth_h->h_proto, htons(ETH_P_IP));
-			return false;
-		}
-	}
-	break;
-	default:
-		ring_logwarn("Rx buffer dropped - Unknown transport type %d", m_transport_type);
-		return false;
-	}
-
-	// Jump to IP header - Skip IB (GRH and IPoIB) or Ethernet (MAC) header sizes
-	sz_data -= transport_header_len;
-
-	// Validate size for IPv4 header
-	if (unlikely(sz_data < sizeof(struct iphdr))) {
-		ring_logwarn("Rx buffer dropped - buffer too small for IPv4 header (%d, %d)", sz_data, sizeof(struct iphdr));
-		return false;
-	}
-
-	// Get the ip header pointer
-	p_ip_h = (struct iphdr*)(p_rx_wc_buf_desc->p_buffer + transport_header_len);
-
-	// Drop all non IPv4 packets
-	if (unlikely(p_ip_h->version != IPV4_VERSION)) {
-		ring_logwarn("Rx packet dropped - not IPV4 packet (got version: %#x)", p_ip_h->version);
-		return false;
-	}
-
-	// Check that received buffer size is not smaller then the ip datagram total size
-	ip_tot_len = ntohs(p_ip_h->tot_len);
-	if (unlikely(sz_data < ip_tot_len)) {
-		ring_logwarn("Rx packet dropped - buffer too small for received datagram (RxBuf:%d IP:%d)", sz_data, ip_tot_len);
-		ring_loginfo("Rx packet info (buf->%p, bufsize=%d), id=%d", p_rx_wc_buf_desc->p_buffer, p_rx_wc_buf_desc->sz_data, ntohs(p_ip_h->id));
-		vlog_print_buffer(VLOG_INFO, "rx packet data: ", "\n", (const char*)p_rx_wc_buf_desc->p_buffer, min(112, (int)p_rx_wc_buf_desc->sz_data));
-		return false;
-	} else if (sz_data > ip_tot_len) {
-		p_rx_wc_buf_desc->sz_data -= (sz_data - ip_tot_len);
-	}
-
-	// Read fragmentation parameters
-	ip_frag_off = ntohs(p_ip_h->frag_off);
-	n_frag_offset = (ip_frag_off & FRAGMENT_OFFSET) * 8;
-
-	ring_logfunc("Rx ip packet info: dst=%d.%d.%d.%d, src=%d.%d.%d.%d, packet_sz=%d, offset=%d, id=%d, proto=%s[%d] (local if: %d.%d.%d.%d)",
-			NIPQUAD(p_ip_h->daddr), NIPQUAD(p_ip_h->saddr),
-			(sz_data > ip_tot_len ? ip_tot_len : sz_data), n_frag_offset, ntohs(p_ip_h->id),
-			iphdr_protocol_type_to_str(p_ip_h->protocol), p_ip_h->protocol,
-			NIPQUAD(p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr));
-
-	// Check that the ip datagram has at least the udp header size for the first ip fragment (besides the ip header)
-	ip_hdr_len = (int)(p_ip_h->ihl)*4;
-	if (unlikely((n_frag_offset == 0) && (ip_tot_len < (ip_hdr_len + sizeof(struct udphdr))))) {
-		ring_logwarn("Rx packet dropped - ip packet too small (%d bytes)- udp header cut!", ip_tot_len);
-		return false;
-	}
-
-	// Handle fragmentation
-	p_rx_wc_buf_desc->rx.n_frags = 1;
-	if (unlikely((ip_frag_off & MORE_FRAGMENTS_FLAG) || n_frag_offset)) { // Currently we don't expect to receive fragments
-		//for disabled fragments handling:
-		/*ring_logwarn("Rx packet dropped - VMA doesn't support fragmentation in receive flow!");
-		ring_logwarn("packet info: dst=%d.%d.%d.%d, src=%d.%d.%d.%d, packet_sz=%d, frag_offset=%d, id=%d, proto=%s[%d], transport type=%s, (local if: %d.%d.%d.%d)",
-				NIPQUAD(p_ip_h->daddr), NIPQUAD(p_ip_h->saddr),
-				(sz_data > ip_tot_len ? ip_tot_len : sz_data), n_frag_offset, ntohs(p_ip_h->id),
-				iphdr_protocol_type_to_str(p_ip_h->protocol), p_ip_h->protocol, (m_transport_type ? "ETH" : "IB"),
-				NIPQUAD(local_addr));
-		return false;*/
-#if 1 //handle fragments
-		// Update fragments descriptor with datagram base address and length
-		p_rx_wc_buf_desc->rx.frag.iov_base = (uint8_t*)p_ip_h + ip_hdr_len;
-		p_rx_wc_buf_desc->rx.frag.iov_len  = ip_tot_len - ip_hdr_len;
-
-		// Add ip fragment packet to out fragment manager
-		mem_buf_desc_t* new_buf = NULL;
-		int ret = -1;
-		if (g_p_ip_frag_manager)
-			ret = g_p_ip_frag_manager->add_frag(p_ip_h, p_rx_wc_buf_desc, &new_buf);
-		if (ret < 0)  // Finished with error
-			return false;
-		if (!new_buf)  // This is fragment
-			return true;
-
-		// Re-calc all ip related values for new ip packet of head fragmentation list
-		p_rx_wc_buf_desc = new_buf;
-		p_ip_h = (struct iphdr*)(p_rx_wc_buf_desc->p_buffer + transport_header_len);
-		ip_hdr_len = (int)(p_ip_h->ihl)*4;
-		ip_tot_len = ntohs(p_ip_h->tot_len);
-
-		mem_buf_desc_t *tmp;
-		for (tmp = p_rx_wc_buf_desc; tmp; tmp = tmp->p_next_desc) {
-			++p_rx_wc_buf_desc->rx.n_frags;
-		}
-#endif
-	}
-
-	if (p_rx_wc_buf_desc->rx.is_sw_csum_need && compute_ip_checksum((unsigned short*)p_ip_h, p_ip_h->ihl * 2)) {
-		return false; // false ip checksum
-	}
-
-//We want to enable loopback between processes for IB
-#if 0
-	//AlexV: We don't support Tx MC Loopback today!
-	if (p_ip_h->saddr == m_local_if) {
-		ring_logfunc("Rx udp datagram discarded - mc loop disabled");
-		return false;
-	}
-#endif
-	rfs* p_rfs = NULL;
-
-	// Update the L3 info
-	p_rx_wc_buf_desc->rx.src.sin_family      = AF_INET;
-	p_rx_wc_buf_desc->rx.src.sin_addr.s_addr = p_ip_h->saddr;
-	p_rx_wc_buf_desc->rx.dst.sin_family      = AF_INET;
-	p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr = p_ip_h->daddr;
-
-	switch (p_ip_h->protocol) {
-	case IPPROTO_UDP:
-	{
-		// Get the udp header pointer + udp payload size
-		p_udp_h = (struct udphdr*)((uint8_t*)p_ip_h + ip_hdr_len);
-
-		// Update packet descriptor with datagram base address and length
-		p_rx_wc_buf_desc->rx.frag.iov_base = (uint8_t*)p_udp_h + sizeof(struct udphdr);
-		p_rx_wc_buf_desc->rx.frag.iov_len  = ip_tot_len - ip_hdr_len - sizeof(struct udphdr);
-
-		if (p_rx_wc_buf_desc->rx.is_sw_csum_need && p_udp_h->check && compute_udp_checksum_rx(p_ip_h, p_udp_h, p_rx_wc_buf_desc)) {
-			return false; // false udp checksum
-		}
-
-		size_t sz_payload = ntohs(p_udp_h->len) - sizeof(struct udphdr);
-		ring_logfunc("Rx udp datagram info: src_port=%d, dst_port=%d, payload_sz=%d, csum=%#x",
-				ntohs(p_udp_h->source), ntohs(p_udp_h->dest), sz_payload, p_udp_h->check);
-
-		// Update the L3 info
-		p_rx_wc_buf_desc->rx.udp.local_if        = m_local_if;
-
-		// Update the L4 info
-		p_rx_wc_buf_desc->rx.src.sin_port        = p_udp_h->source;
-		p_rx_wc_buf_desc->rx.dst.sin_port        = p_udp_h->dest;
-		p_rx_wc_buf_desc->rx.sz_payload          = sz_payload;
-
-		// Find the relevant hash map and pass the packet to the rfs for dispatching
-		if (!(IN_MULTICAST_N(p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr))) {      // This is UDP UC packet
-			p_rfs = m_flow_udp_uc_map.get(flow_spec_udp_key_t(p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr,
-				p_rx_wc_buf_desc->rx.dst.sin_port), NULL);
-		} else {        // This is UDP MC packet
-			p_rfs = m_flow_udp_mc_map.get(flow_spec_udp_key_t(p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr,
-				p_rx_wc_buf_desc->rx.dst.sin_port), NULL);
-		}
-	}
-	break;
-
-	case IPPROTO_TCP:
-	{
-		// Get the tcp header pointer + tcp payload size
-		struct tcphdr* p_tcp_h = (struct tcphdr*)((uint8_t*)p_ip_h + ip_hdr_len);
-
-		if (p_rx_wc_buf_desc->rx.is_sw_csum_need && compute_tcp_checksum(p_ip_h, (unsigned short*) p_tcp_h)) {
-			return false; // false tcp checksum
-		}
-
-		size_t sz_payload = ip_tot_len - ip_hdr_len - p_tcp_h->doff*4;
-		ring_logfunc("Rx TCP segment info: src_port=%d, dst_port=%d, flags='%s%s%s%s%s%s' seq=%u, ack=%u, win=%u, payload_sz=%u",
-				ntohs(p_tcp_h->source), ntohs(p_tcp_h->dest),
-				p_tcp_h->urg?"U":"", p_tcp_h->ack?"A":"", p_tcp_h->psh?"P":"",
-				p_tcp_h->rst?"R":"", p_tcp_h->syn?"S":"", p_tcp_h->fin?"F":"",
-				ntohl(p_tcp_h->seq), ntohl(p_tcp_h->ack_seq), ntohs(p_tcp_h->window),
-				sz_payload);
-
-		// Update packet descriptor with datagram base address and length
-		p_rx_wc_buf_desc->rx.frag.iov_base = (uint8_t*)p_tcp_h + sizeof(struct tcphdr);
-		p_rx_wc_buf_desc->rx.frag.iov_len  = ip_tot_len - ip_hdr_len - sizeof(struct tcphdr);
-
-		// Update the L4 info
-		p_rx_wc_buf_desc->rx.src.sin_port        = p_tcp_h->source;
-		p_rx_wc_buf_desc->rx.dst.sin_port        = p_tcp_h->dest;
-		p_rx_wc_buf_desc->rx.sz_payload          = sz_payload;
-
-		p_rx_wc_buf_desc->rx.tcp.p_ip_h = p_ip_h;
-		p_rx_wc_buf_desc->rx.tcp.p_tcp_h = p_tcp_h;
-
-		// Find the relevant hash map and pass the packet to the rfs for dispatching
-		p_rfs = m_flow_tcp_map.get(flow_spec_tcp_key_t(p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr,
-				p_rx_wc_buf_desc->rx.src.sin_addr.s_addr, p_rx_wc_buf_desc->rx.dst.sin_port,
-				p_rx_wc_buf_desc->rx.src.sin_port), NULL);
-
-		p_rx_wc_buf_desc->rx.tcp.n_transport_header_len = transport_header_len;
-
-		if (unlikely(p_rfs == NULL)) {	// If we didn't find a match for TCP 5T, look for a match with TCP 3T
-			p_rfs = m_flow_tcp_map.get(flow_spec_tcp_key_t(p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr, 0, p_rx_wc_buf_desc->rx.dst.sin_port, 0), NULL);
-		}
-	}
-	break;
-
-#if 0 /* useless */
-	case IPPROTO_IGMP:
-	{
-		struct igmp* p_igmp_h= (struct igmp*)((uint8_t*)p_ip_h + ip_hdr_len);
-		NOT_IN_USE(p_igmp_h); /* to supress warning in case VMA_MAX_DEFINED_LOG_LEVEL */
-		ring_logdbg("Rx IGMP packet info: type=%s (%d), group=%d.%d.%d.%d, code=%d",
-				priv_igmp_type_tostr(p_igmp_h->igmp_type), p_igmp_h->igmp_type,
-				NIPQUAD(p_igmp_h->igmp_group.s_addr), p_igmp_h->igmp_code);
-		if (m_transport_type == VMA_TRANSPORT_IB  || m_b_sysvar_eth_mc_l2_only_rules) {
-			ring_logdbg("Transport type is IB (or eth_mc_l2_only_rules), passing igmp packet to igmp_manager to process");
-			if(g_p_igmp_mgr) {
-				(g_p_igmp_mgr->process_igmp_packet(p_ip_h, m_local_if));
-				return false; // we return false in order to free the buffer, although we handled the packet
-			}
-			ring_logdbg("IGMP packet drop. IGMP manager does not exist.");
-			return false;
-		}
-		ring_logerr("Transport type is ETH, dropping the packet");
-		return false;
-	}
-#endif /* useless */
-	break;
-
-	default:
-		ring_logwarn("Rx packet dropped - undefined protocol = %d", p_ip_h->protocol);
-		return false;
-	}
-
-	if (unlikely(p_rfs == NULL)) {
-		ring_logdbg("Rx packet dropped - rfs object not found: dst:%d.%d.%d.%d:%d, src%d.%d.%d.%d:%d, proto=%s[%d]",
-				NIPQUAD(p_rx_wc_buf_desc->rx.dst.sin_addr.s_addr), ntohs(p_rx_wc_buf_desc->rx.dst.sin_port),
-				NIPQUAD(p_rx_wc_buf_desc->rx.src.sin_addr.s_addr), ntohs(p_rx_wc_buf_desc->rx.src.sin_port),
-				iphdr_protocol_type_to_str(p_ip_h->protocol), p_ip_h->protocol);
-
-		return false;
-	}
-	return p_rfs->rx_dispatch_packet(p_rx_wc_buf_desc, pv_fd_ready_array);
-}
-
 void ring_tap::send_ring_buffer(ring_user_id_t id, vma_ibv_send_wr* p_send_wqe, vma_wr_tx_packet_attr attr)
 {
 	NOT_IN_USE(id);
@@ -1230,21 +463,6 @@ bool ring_tap::request_more_rx_buffers()
 	return true;
 }
 
-bool ring_tap::request_more_tx_buffers()
-{
-	ring_logfuncall("Allocating additional %d buffers for internal use",
-			m_sysvar_qp_compensation_level);
-
-	bool res = g_buffer_pool_tx->get_buffers_thread_safe(m_tx_pool,
-			this, m_sysvar_qp_compensation_level, 0);
-	if (!res) {
-		ring_logfunc("Out of mem_buf_desc from TX free pool for internal object pool");
-		return false;
-	}
-
-	return true;
-}
-
 mem_buf_desc_t* ring_tap::mem_buf_tx_get(ring_user_id_t id, bool b_block, int n_num_mem_bufs)
 {
 	mem_buf_desc_t* head = NULL;
@@ -1257,7 +475,7 @@ mem_buf_desc_t* ring_tap::mem_buf_tx_get
 	m_lock_ring_tx.lock();
 
 	if (unlikely((int)m_tx_pool.size() < n_num_mem_bufs)) {
-		request_more_tx_buffers();
+		request_more_tx_buffers(m_sysvar_qp_compensation_level, 0);
 
 		if (unlikely((int)m_tx_pool.size() < n_num_mem_bufs)) {
 			m_lock_ring_tx.unlock();
@@ -1391,52 +609,3 @@ void ring_tap::send_status_handler(int r
 		mem_buf_tx_release(p_mem_buf_desc, true);
 	}
 }
-
-void ring_tap::flow_udp_del_all()
-{
-	flow_spec_udp_key_t map_key_udp;
-	flow_spec_udp_map_t::iterator itr_udp;
-
-	itr_udp = m_flow_udp_uc_map.begin();
-	while (itr_udp != m_flow_udp_uc_map.end()) {
-		rfs *p_rfs = itr_udp->second;
-		map_key_udp = itr_udp->first;
-		if (p_rfs) {
-			delete p_rfs;
-		}
-		if (!(m_flow_udp_uc_map.del(map_key_udp))) {
-			ring_logdbg("Could not find rfs object to delete in ring udp uc hash map!");
-		}
-		itr_udp =  m_flow_udp_uc_map.begin();
-	}
-
-	itr_udp = m_flow_udp_mc_map.begin();
-	while (itr_udp != m_flow_udp_mc_map.end()) {
-		rfs *p_rfs = itr_udp->second;
-		map_key_udp = itr_udp->first;
-		if (p_rfs) {
-			delete p_rfs;
-		}
-		if (!(m_flow_udp_mc_map.del(map_key_udp))) {
-			ring_logdbg("Could not find rfs object to delete in ring udp mc hash map!");
-		}
-		itr_udp =  m_flow_udp_mc_map.begin();
-	}
-}
-
-void ring_tap::flow_tcp_del_all()
-{
-	flow_spec_tcp_key_t map_key_tcp;
-	flow_spec_tcp_map_t::iterator itr_tcp;
-
-	while ((itr_tcp = m_flow_tcp_map.begin()) != m_flow_tcp_map.end()) {
-		rfs *p_rfs = itr_tcp->second;
-		map_key_tcp = itr_tcp->first;
-		if (p_rfs) {
-			delete p_rfs;
-		}
-		if (!(m_flow_tcp_map.del(map_key_tcp))) {
-			ring_logdbg("Could not find rfs object to delete in ring tcp hash map!");
-		}
-	}
-}
diff -pruN 8.8.1-1/src/vma/dev/ring_tap.h 8.8.1.really.8.7.7-1/src/vma/dev/ring_tap.h
--- 8.8.1-1/src/vma/dev/ring_tap.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/ring_tap.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -36,7 +36,6 @@
 #include "ring_slave.h"
 #include "vma/util/agent.h"
 
-
 class ring_tap : public ring_slave
 {
 public:
@@ -44,77 +43,46 @@ public:
 	virtual ~ring_tap();
 
 	virtual bool is_up() { return (m_vf_ring || m_active); }
-
 	virtual bool attach_flow(flow_tuple& flow_spec_5t, pkt_rcvr_sink* sink);
 	virtual bool detach_flow(flow_tuple& flow_spec_5t, pkt_rcvr_sink* sink);
-
-	virtual int poll_and_process_element_rx(uint64_t* p_cq_poll_sn,
-			void* pv_fd_ready_array = NULL);
-	virtual int wait_for_notification_and_process_element(int cq_channel_fd,
-			uint64_t* p_cq_poll_sn, void* pv_fd_ready_array = NULL);
+	virtual int poll_and_process_element_rx(uint64_t* p_cq_poll_sn, void* pv_fd_ready_array = NULL);
+	virtual int wait_for_notification_and_process_element(int cq_channel_fd, uint64_t* p_cq_poll_sn, void* pv_fd_ready_array = NULL);
 	virtual int drain_and_proccess();
 	virtual bool reclaim_recv_buffers(descq_t *rx_reuse);
 	virtual bool reclaim_recv_buffers(mem_buf_desc_t *buff);
-	virtual int		reclaim_recv_single_buffer(mem_buf_desc_t* rx_reuse) {
-		NOT_IN_USE(rx_reuse);
-		return -1;
-	}
-	virtual bool rx_process_buffer(mem_buf_desc_t* p_rx_wc_buf_desc, void* pv_fd_ready_array);
-
+	virtual int reclaim_recv_single_buffer(mem_buf_desc_t* rx_reuse) { NOT_IN_USE(rx_reuse); return -1; }
 	virtual void send_ring_buffer(ring_user_id_t id, vma_ibv_send_wr* p_send_wqe, vma_wr_tx_packet_attr attr);
 	virtual void send_lwip_buffer(ring_user_id_t id, vma_ibv_send_wr* p_send_wqe, vma_wr_tx_packet_attr attr);
 	virtual void mem_buf_desc_return_single_to_owner_tx(mem_buf_desc_t* p_mem_buf_desc);
 	virtual mem_buf_desc_t* mem_buf_tx_get(ring_user_id_t id, bool b_block, int n_num_mem_bufs = 1);
 	virtual int mem_buf_tx_release(mem_buf_desc_t* p_mem_buf_desc_list, bool b_accounting, bool trylock = false);
-
-	virtual bool get_hw_dummy_send_support(ring_user_id_t id, vma_ibv_send_wr* p_send_wqe) {
-		NOT_IN_USE(id);
-		NOT_IN_USE(p_send_wqe);
-		return false;
-	}
-
-	virtual int request_notification(cq_type_t cq_type, uint64_t poll_sn) {
-		NOT_IN_USE(cq_type);
-		NOT_IN_USE(poll_sn);
-		return 0;
-	}
+	virtual bool get_hw_dummy_send_support(ring_user_id_t id, vma_ibv_send_wr* p_send_wqe) { NOT_IN_USE(id); NOT_IN_USE(p_send_wqe); return false; }
+	virtual int request_notification(cq_type_t cq_type, uint64_t poll_sn) { NOT_IN_USE(cq_type); NOT_IN_USE(poll_sn); return 0; }
 	virtual void adapt_cq_moderation() {}
 
-	virtual int socketxtreme_poll(struct vma_completion_t *vma_completions,
-			unsigned int ncompletions, int flags) {
+	virtual int socketxtreme_poll(struct vma_completion_t *vma_completions, unsigned int ncompletions, int flags) {
 		NOT_IN_USE(vma_completions);
 		NOT_IN_USE(ncompletions);
 		NOT_IN_USE(flags);
 		return 0;
 	}
 
-	virtual int modify_ratelimit(struct vma_rate_limit_t &rate_limit) {
-		NOT_IN_USE(rate_limit);
-		return 0;
-	}
-	virtual bool is_ratelimit_supported(struct vma_rate_limit_t &rate_limit) {
-		NOT_IN_USE(rate_limit);
-		return false;
-	}
+	virtual int modify_ratelimit(struct vma_rate_limit_t &rate_limit) { NOT_IN_USE(rate_limit); return 0; }
+	void inc_cq_moderation_stats(size_t sz_data) { NOT_IN_USE(sz_data); }
 	virtual int get_max_tx_inline() { return 0; }
-
+	virtual uint32_t get_underly_qpn() { return -1; }
 	inline void set_tap_data_available() { m_tap_data_available = true; }
 	inline void set_vf_ring(ring_slave *p_ring) { m_vf_ring = p_ring; }
 	inline void inc_vf_plugouts() { m_p_ring_stat->tap.n_vf_plugouts++; }
-	inline ring_slave* get_vf_ring() { return m_vf_ring; }
 
 private:
 	inline void return_to_global_pool();
-	int prepare_flow_message(vma_msg_flow& data, msg_flow_t flow_action,
-			flow_tuple& flow_spec_5t);
+	int prepare_flow_message(vma_msg_flow& data, msg_flow_t flow_action, flow_tuple& flow_spec_5t);
 	int prepare_flow_message(vma_msg_flow& data, msg_flow_t flow_action);
 	int process_element_rx(void* pv_fd_ready_array);
-	bool request_more_tx_buffers();
 	bool request_more_rx_buffers();
 	int send_buffer(vma_ibv_send_wr* p_send_wqe, vma_wr_tx_packet_attr attr);
 	void send_status_handler(int ret, vma_ibv_send_wr* p_send_wqe);
-	void flow_udp_del_all();
-	void flow_tcp_del_all();
 	void tap_create(net_device_val* p_ndev);
 	void tap_destroy();
 
@@ -124,29 +92,11 @@ private:
 	struct vma_completion_t *get_comp(void) { return NULL; }
 
 	/* These fields are NETVSC mode specific */
-	int m_tap_fd;                    /* file descriptor of tap device */
-
+	int              m_tap_fd; /* file descriptor of tap device */
 	ring_slave*      m_vf_ring;
 	const uint32_t   m_sysvar_qp_compensation_level;
-	descq_t          m_tx_pool;
 	descq_t          m_rx_pool;
 	bool             m_tap_data_available;
-	lock_spin_recursive	m_lock_ring_rx;
-	lock_spin_recursive	m_lock_ring_tx;
-
-	bool             m_flow_tag_enabled;
-	in_addr_t        m_local_if;
-	uint32_t         m_mtu;
-	uint16_t         m_partition;
-	// For IB MC flow, the port is zeroed in the ibv_flow_spec when calling to ibv_flow_spec().
-	// It means that for every MC group, even if we have sockets with different ports - only one rule in the HW.
-	// So the hash map below keeps track of the number of sockets per rule so we know when to call ibv_attach and ibv_detach
-	rule_filter_map_t	m_l2_mc_ip_attach_map;
-	rule_filter_map_t	m_tcp_dst_port_attach_map;
-	flow_spec_tcp_map_t	m_flow_tcp_map;
-	flow_spec_udp_map_t	m_flow_udp_mc_map;
-	flow_spec_udp_map_t	m_flow_udp_uc_map;
 };
 
-
 #endif /* RING_TAP_H_ */
diff -pruN 8.8.1-1/src/vma/dev/time_converter.cpp 8.8.1.really.8.7.7-1/src/vma/dev/time_converter.cpp
--- 8.8.1-1/src/vma/dev/time_converter.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/time_converter.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -34,12 +34,14 @@
 #include "time_converter.h"
 
 #include <stdlib.h>
-#include <vlogger/vlogger.h>
-#include "vma/event/event_handler_manager.h"
-#include <vma/util/sys_vars.h>
-#include "vma/ib/base/verbs_extra.h"
+#include "vlogger/vlogger.h"
 #include "utils/rdtsc.h"
+
+#include "vma/util/sys_vars.h"
 #include "vma/util/instrumentation.h"
+#include "vma/event/event_handler_manager.h"
+#include "vma/ib/base/verbs_extra.h"
+#include "vma/dev/net_device_table_mgr.h"
 
 #define MODULE_NAME             "time_converter"
 
@@ -66,7 +68,7 @@ uint32_t time_converter::get_single_conv
 
 	if ((rval = vma_ibv_query_device(ctx ,&device_attr)) || !device_attr.hca_core_clock) {
 		ibchtc_logdbg("time_converter::get_single_converter_status :Error in querying hca core clock "
-				"(ibv_exp_query_device() return value=%d ) (ibv context %p) (errno=%d %m)\n", rval, ctx, errno);
+				"(vma_ibv_query_device() return value=%d ) (ibv context %p) (errno=%d %m)\n", rval, ctx, errno);
 	} else {
 		dev_status |= VMA_QUERY_DEVICE_SUPPORTED;
 	}
@@ -77,68 +79,79 @@ uint32_t time_converter::get_single_conv
 	queried_values.comp_mask = VMA_IBV_VALUES_MASK_RAW_CLOCK;
 	if ((rval = vma_ibv_query_values(ctx, &queried_values)) || !vma_get_ts_val(queried_values)) {
 		ibchtc_logdbg("time_converter::get_single_converter_status :Error in querying hw clock, can't convert"
-				" hw time to system time (ibv_exp_query_values() return value=%d ) (ibv context %p) (errno=%d %m)\n", rval, ctx, errno);
+				" hw time to system time (vma_ibv_query_values() return value=%d ) (ibv context %p) (errno=%d %m)\n", rval, ctx, errno);
 	} else {
 		dev_status |= VMA_QUERY_VALUES_SUPPORTED;
 	}
 #else
 	NOT_IN_USE(ctx);
 #endif
+
 	return dev_status;
 }
 
-ts_conversion_mode_t time_converter::get_devices_converter_status(struct ibv_device** ibv_dev_list, int num_devices) {
+ts_conversion_mode_t time_converter::update_device_converters_status(net_device_map_t& net_devices)
+{
+	ibchtc_logdbg("Checking RX HW time stamp status for all devices [%d]", net_devices.size());
+	ts_conversion_mode_t ts_conversion_mode = TS_CONVERSION_MODE_DISABLE;
+
+	if (net_devices.empty()) {
+		ibchtc_logdbg("No supported devices was found, return");
+		return ts_conversion_mode;
+	}
+
 
-	ts_conversion_mode_t ctx_time_conversion_mode;
 #ifdef DEFINED_IBV_CQ_TIMESTAMP
-	uint32_t devs_status = 0;
 
-        ibchtc_logdbg("time_converter::get_devices_converter_status : Checking RX UDP HW time stamp "
-                        "status for all devices [%d], ibv_dev_list = %p\n", num_devices, ibv_dev_list);
+	if (safe_mce_sys().hw_ts_conversion_mode != TS_CONVERSION_MODE_DISABLE) {
+		uint32_t devs_status = VMA_QUERY_DEVICE_SUPPORTED | VMA_QUERY_VALUES_SUPPORTED;
 
-	if (safe_mce_sys().hw_ts_conversion_mode != TS_CONVERSION_MODE_DISABLE){
-		devs_status = VMA_QUERY_DEVICE_SUPPORTED | VMA_QUERY_VALUES_SUPPORTED;
-		for (int i = 0; i < num_devices; i++) {
-			struct ibv_context *ibv_ctx = ibv_open_device(ibv_dev_list[i]);
-			if (ibv_ctx == NULL) {
-				ibchtc_logdbg("ibv_ctx is invalid");
-				continue;
+		/* Get common time conversion mode for all devices */
+		for (net_device_map_index_t::iterator dev_iter = net_devices.begin(); dev_iter != net_devices.end(); dev_iter++) {
+			if (dev_iter->second->get_state() == net_device_val::RUNNING) {
+				slave_data_vector_t slaves = dev_iter->second->get_slave_array();
+				for (slave_data_vector_t::iterator slaves_iter = slaves.begin(); slaves_iter != slaves.end(); slaves_iter++) {
+					devs_status &= get_single_converter_status((*slaves_iter)->p_ib_ctx->get_ibv_context());
+				}
 			}
-			devs_status &= get_single_converter_status(ibv_ctx);
-			ibv_close_device(ibv_ctx);
 		}
-	}
 
-	switch (safe_mce_sys().hw_ts_conversion_mode) {
-	case TS_CONVERSION_MODE_RAW:
-		ctx_time_conversion_mode = devs_status & VMA_QUERY_DEVICE_SUPPORTED ? TS_CONVERSION_MODE_RAW : TS_CONVERSION_MODE_DISABLE;
-		break;
-	case TS_CONVERSION_MODE_BEST_POSSIBLE:
-		if (devs_status == (VMA_QUERY_DEVICE_SUPPORTED | VMA_QUERY_VALUES_SUPPORTED)) {
-			ctx_time_conversion_mode = TS_CONVERSION_MODE_SYNC;
-		} else {
-			ctx_time_conversion_mode = devs_status & VMA_QUERY_DEVICE_SUPPORTED ? TS_CONVERSION_MODE_RAW : TS_CONVERSION_MODE_DISABLE;
+		switch (safe_mce_sys().hw_ts_conversion_mode) {
+		case TS_CONVERSION_MODE_RAW:
+			ts_conversion_mode = devs_status & VMA_QUERY_DEVICE_SUPPORTED ? TS_CONVERSION_MODE_RAW : TS_CONVERSION_MODE_DISABLE;
+			break;
+		case TS_CONVERSION_MODE_BEST_POSSIBLE:
+			if (devs_status == (VMA_QUERY_DEVICE_SUPPORTED | VMA_QUERY_VALUES_SUPPORTED)) {
+				ts_conversion_mode = TS_CONVERSION_MODE_SYNC;
+			} else {
+				ts_conversion_mode = devs_status & VMA_QUERY_DEVICE_SUPPORTED ? TS_CONVERSION_MODE_RAW : TS_CONVERSION_MODE_DISABLE;
+			}
+			break;
+		case TS_CONVERSION_MODE_SYNC:
+			ts_conversion_mode = devs_status == (VMA_QUERY_DEVICE_SUPPORTED | VMA_QUERY_VALUES_SUPPORTED) ? TS_CONVERSION_MODE_SYNC : TS_CONVERSION_MODE_DISABLE;
+			break;
+		case TS_CONVERSION_MODE_PTP:
+			ts_conversion_mode = devs_status == (VMA_QUERY_DEVICE_SUPPORTED | VMA_QUERY_VALUES_SUPPORTED) ? TS_CONVERSION_MODE_PTP : TS_CONVERSION_MODE_DISABLE;
+			break;
+		default:
+			ts_conversion_mode = TS_CONVERSION_MODE_DISABLE;
+			break;
 		}
-		break;
-	case TS_CONVERSION_MODE_SYNC:
-		ctx_time_conversion_mode = devs_status == (VMA_QUERY_DEVICE_SUPPORTED | VMA_QUERY_VALUES_SUPPORTED) ? TS_CONVERSION_MODE_SYNC : TS_CONVERSION_MODE_DISABLE;
-		break;
-	case TS_CONVERSION_MODE_PTP:
-		ctx_time_conversion_mode = devs_status == (VMA_QUERY_DEVICE_SUPPORTED |
-				VMA_QUERY_VALUES_SUPPORTED) ?
-						TS_CONVERSION_MODE_PTP : TS_CONVERSION_MODE_DISABLE;
-		break;
-	default:
-		ctx_time_conversion_mode = TS_CONVERSION_MODE_DISABLE;
-		break;
 	}
-#else
-	NOT_IN_USE(ibv_dev_list);
-	NOT_IN_USE(num_devices);
-	ctx_time_conversion_mode = TS_CONVERSION_MODE_DISABLE;
+
 #endif
 
-	return ctx_time_conversion_mode;
+	ibchtc_logdbg("Conversion status was set to %d", ts_conversion_mode);
+
+	for (net_device_map_index_t::iterator dev_iter = net_devices.begin(); dev_iter != net_devices.end(); dev_iter++) {
+		slave_data_vector_t slaves = dev_iter->second->get_slave_array();
+		for (slave_data_vector_t::iterator slaves_iter = slaves.begin(); slaves_iter != slaves.end(); slaves_iter++) {
+			ts_conversion_mode_t dev_ts_conversion_mode = dev_iter->second->get_state() == net_device_val::RUNNING ? ts_conversion_mode : TS_CONVERSION_MODE_DISABLE;
+			(*slaves_iter)->p_ib_ctx->set_ctx_time_converter_status(dev_ts_conversion_mode);
+		}
+	}
+
+	return ts_conversion_mode;
 }
 
 void time_converter::clean_obj()
diff -pruN 8.8.1-1/src/vma/dev/time_converter.h 8.8.1.really.8.7.7-1/src/vma/dev/time_converter.h
--- 8.8.1-1/src/vma/dev/time_converter.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/time_converter.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -34,11 +34,15 @@
 #ifndef TIME_CONVERTER_H
 #define TIME_CONVERTER_H
 
+#include <tr1/unordered_map>
 #include <infiniband/verbs.h>
-#include <vma/sock/cleanable_obj.h>
+
+#include "vma/util/sys_vars.h"
+#include "vma/sock/cleanable_obj.h"
 #include "vma/event/timer_handler.h"
-#include <vma/util/sys_vars.h>
 
+class net_device_val;
+typedef std::tr1::unordered_map<int, net_device_val*> net_device_map_t;
 
 class ctx_timestamping_params_t {
 public:
@@ -64,7 +68,7 @@ public:
 	virtual void              clean_obj();
 	ts_conversion_mode_t      get_converter_status() { return m_converter_status; };
 
-	static ts_conversion_mode_t     get_devices_converter_status(struct ibv_device** ibv_dev_list, int num_devices);
+	static ts_conversion_mode_t update_device_converters_status(net_device_map_t& net_devices);
 
 protected:
 	void*                     m_timer_handle;
diff -pruN 8.8.1-1/src/vma/dev/time_converter_ib_ctx.cpp 8.8.1.really.8.7.7-1/src/vma/dev/time_converter_ib_ctx.cpp
--- 8.8.1-1/src/vma/dev/time_converter_ib_ctx.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/time_converter_ib_ctx.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/time_converter_ib_ctx.h 8.8.1.really.8.7.7-1/src/vma/dev/time_converter_ib_ctx.h
--- 8.8.1-1/src/vma/dev/time_converter_ib_ctx.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/time_converter_ib_ctx.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/time_converter_ptp.cpp 8.8.1.really.8.7.7-1/src/vma/dev/time_converter_ptp.cpp
--- 8.8.1-1/src/vma/dev/time_converter_ptp.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/time_converter_ptp.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -42,26 +42,26 @@
 #include "vma/ib/base/verbs_extra.h"
 
 
-#ifdef DEFINED_IBV_EXP_VALUES_CLOCK_INFO
+#ifdef DEFINED_IBV_CLOCK_INFO
 
-#define MODULE_NAME             "time_converter_ptp"
+#define MODULE_NAME             "tc_ptp"
 
 #define ibchtc_logerr __log_err
 #define ibchtc_logwarn __log_warn
 #define ibchtc_loginfo __log_info
-#define ibchtc_logdbg __log_dbg
+#define ibchtc_logdbg __log_info_dbg
+#define ibchtc_logfunc __log_info_func
 
 #define UPDATE_HW_TIMER_PTP_PERIOD_MS 100
 
 
 time_converter_ptp::time_converter_ptp(struct ibv_context* ctx) :
-	m_p_ibv_context(ctx), m_ibv_exp_values_id(0)
+	m_p_ibv_context(ctx), m_clock_values_id(0)
 {
-	for (size_t i=0; i < ARRAY_SIZE(m_ibv_exp_values); i++) {
-		memset(&m_ibv_exp_values[i], 0, sizeof(m_ibv_exp_values[i]));
-		if (ibv_exp_query_values(m_p_ibv_context, IBV_EXP_VALUES_CLOCK_INFO, &m_ibv_exp_values[i])) {
-			ibchtc_logerr("ibv_exp_query_values failure for clock_info, (ibv context %p)",
-					m_p_ibv_context);
+	for (size_t i=0; i < ARRAY_SIZE(m_clock_values); i++) {
+		memset(&m_clock_values[i], 0, sizeof(m_clock_values[i]));
+		if (vma_ibv_query_clock_info(m_p_ibv_context, &m_clock_values[i])) {
+			ibchtc_logerr("vma_ibv_query_clock_info failure for clock_info, (ibv context %p)", m_p_ibv_context);
 		}
 	}
 
@@ -78,20 +78,19 @@ void time_converter_ptp::handle_timer_ex
 	}
 
 	int ret = 0;
-	ret = ibv_exp_query_values(m_p_ibv_context, IBV_EXP_VALUES_CLOCK_INFO, &m_ibv_exp_values[1 - m_ibv_exp_values_id]);
+	ret = vma_ibv_query_clock_info(m_p_ibv_context, &m_clock_values[1 - m_clock_values_id]);
 	if (ret)
-		ibchtc_logerr("ibv_exp_query_values failure for clock_info, (ibv context %p) (return value=%d)",
-				m_p_ibv_context, ret);
+		ibchtc_logerr("vma_ibv_query_clock_info failure for clock_info, (ibv context %p) (return value=%d)", m_p_ibv_context, ret);
 
-	m_ibv_exp_values_id = 1 - m_ibv_exp_values_id;
+	m_clock_values_id = 1 - m_clock_values_id;
 }
 
 void time_converter_ptp::convert_hw_time_to_system_time(uint64_t hwtime, struct timespec* systime) {
-	uint64_t sync_hw_clock = ibv_exp_cqe_ts_to_ns(&m_ibv_exp_values[m_ibv_exp_values_id].clock_info, hwtime);
+	uint64_t sync_hw_clock = vma_ibv_convert_ts_to_ns(&m_clock_values[m_clock_values_id], hwtime);
 	systime->tv_sec = sync_hw_clock / NSEC_PER_SEC;
 	systime->tv_nsec = sync_hw_clock % NSEC_PER_SEC;
 
-	ibchtc_logdbg("hwtime:	.%09ld", hwtime);
-	ibchtc_logdbg("systime after clock fix:	%lld.%.9ld", systime->tv_sec, systime->tv_nsec);
+	ibchtc_logfunc("hwtime: 	%09ld", hwtime);
+	ibchtc_logfunc("systime:	%lld.%.9ld", systime->tv_sec, systime->tv_nsec);
 }
-#endif //DEFINED_IBV_EXP_VALUES_CLOCK_INFO
+#endif //DEFINED_IBV_CLOCK_INFO
diff -pruN 8.8.1-1/src/vma/dev/time_converter_ptp.h 8.8.1.really.8.7.7-1/src/vma/dev/time_converter_ptp.h
--- 8.8.1-1/src/vma/dev/time_converter_ptp.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/time_converter_ptp.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -39,7 +39,7 @@
 #include <vma/util/sys_vars.h>
 #include "time_converter.h"
 
-#ifdef DEFINED_IBV_EXP_VALUES_CLOCK_INFO
+#ifdef DEFINED_IBV_CLOCK_INFO
 
 class time_converter_ptp : public time_converter
 {
@@ -53,9 +53,9 @@ public:
 private:
 	struct ibv_context*       m_p_ibv_context;
 
-	struct ibv_exp_values     m_ibv_exp_values[2];
-	int                       m_ibv_exp_values_id;
+	vma_ibv_clock_info        m_clock_values[2];
+	int                       m_clock_values_id;
 };
 
-#endif // DEFINED_IBV_EXP_VALUES_CLOCK_INFO
+#endif // DEFINED_IBV_CLOCK_INFO
 #endif // TIME_CONVERTER_PTP_H
diff -pruN 8.8.1-1/src/vma/dev/wqe_send_handler.cpp 8.8.1.really.8.7.7-1/src/vma/dev/wqe_send_handler.cpp
--- 8.8.1-1/src/vma/dev/wqe_send_handler.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/wqe_send_handler.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/wqe_send_handler.h 8.8.1.really.8.7.7-1/src/vma/dev/wqe_send_handler.h
--- 8.8.1-1/src/vma/dev/wqe_send_handler.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/wqe_send_handler.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/wqe_send_ib_handler.cpp 8.8.1.really.8.7.7-1/src/vma/dev/wqe_send_ib_handler.cpp
--- 8.8.1-1/src/vma/dev/wqe_send_ib_handler.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/wqe_send_ib_handler.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/dev/wqe_send_ib_handler.h 8.8.1.really.8.7.7-1/src/vma/dev/wqe_send_ib_handler.h
--- 8.8.1-1/src/vma/dev/wqe_send_ib_handler.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/dev/wqe_send_ib_handler.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/event/command.h 8.8.1.really.8.7.7-1/src/vma/event/command.h
--- 8.8.1-1/src/vma/event/command.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/event/command.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/event/delta_timer.cpp 8.8.1.really.8.7.7-1/src/vma/event/delta_timer.cpp
--- 8.8.1-1/src/vma/event/delta_timer.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/event/delta_timer.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/event/delta_timer.h 8.8.1.really.8.7.7-1/src/vma/event/delta_timer.h
--- 8.8.1-1/src/vma/event/delta_timer.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/event/delta_timer.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/event/event.h 8.8.1.really.8.7.7-1/src/vma/event/event.h
--- 8.8.1-1/src/vma/event/event.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/event/event.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/event/event_handler_ibverbs.h 8.8.1.really.8.7.7-1/src/vma/event/event_handler_ibverbs.h
--- 8.8.1-1/src/vma/event/event_handler_ibverbs.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/event/event_handler_ibverbs.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/event/event_handler_manager.cpp 8.8.1.really.8.7.7-1/src/vma/event/event_handler_manager.cpp
--- 8.8.1-1/src/vma/event/event_handler_manager.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/event/event_handler_manager.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/event/event_handler_manager.h 8.8.1.really.8.7.7-1/src/vma/event/event_handler_manager.h
--- 8.8.1-1/src/vma/event/event_handler_manager.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/event/event_handler_manager.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/event/event_handler_rdma_cm.h 8.8.1.really.8.7.7-1/src/vma/event/event_handler_rdma_cm.h
--- 8.8.1-1/src/vma/event/event_handler_rdma_cm.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/event/event_handler_rdma_cm.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/event/netlink_event.cpp 8.8.1.really.8.7.7-1/src/vma/event/netlink_event.cpp
--- 8.8.1-1/src/vma/event/netlink_event.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/event/netlink_event.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/event/netlink_event.h 8.8.1.really.8.7.7-1/src/vma/event/netlink_event.h
--- 8.8.1-1/src/vma/event/netlink_event.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/event/netlink_event.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/event/timer_handler.h 8.8.1.really.8.7.7-1/src/vma/event/timer_handler.h
--- 8.8.1-1/src/vma/event/timer_handler.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/event/timer_handler.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/event/timers_group.h 8.8.1.really.8.7.7-1/src/vma/event/timers_group.h
--- 8.8.1-1/src/vma/event/timers_group.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/event/timers_group.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/event/vlogger_timer_handler.cpp 8.8.1.really.8.7.7-1/src/vma/event/vlogger_timer_handler.cpp
--- 8.8.1-1/src/vma/event/vlogger_timer_handler.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/event/vlogger_timer_handler.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/event/vlogger_timer_handler.h 8.8.1.really.8.7.7-1/src/vma/event/vlogger_timer_handler.h
--- 8.8.1-1/src/vma/event/vlogger_timer_handler.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/event/vlogger_timer_handler.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/ib/base/verbs_extra.cpp 8.8.1.really.8.7.7-1/src/vma/ib/base/verbs_extra.cpp
--- 8.8.1-1/src/vma/ib/base/verbs_extra.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/ib/base/verbs_extra.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -270,6 +270,26 @@ int priv_ibv_query_qp_state(struct ibv_q
 	return (ibv_qp_state)qp_attr.qp_state;
 }
 
+int priv_ibv_query_burst_supported(struct ibv_qp *qp, uint8_t port_num)
+{
+#ifdef	DEFINED_IBV_EXP_QP_SUPPORT_BURST
+	if (priv_ibv_modify_qp_from_err_to_init_raw(qp, port_num) == 0) {
+		if (priv_ibv_modify_qp_from_init_to_rts(qp, 0) == 0) {
+			struct vma_rate_limit_t rate = {1000, 100, 100};
+			if (priv_ibv_modify_qp_ratelimit(qp, rate, RL_RATE | RL_BURST_SIZE | RL_PKT_SIZE) == 0){
+				return 0;
+			}
+		}
+	}
+
+#else
+	NOT_IN_USE(qp);
+	NOT_IN_USE(port_num);
+#endif
+
+	return -1;
+}
+
 int priv_ibv_query_flow_tag_supported(struct ibv_qp *qp, uint8_t port_num)
 {
 	NOT_IN_USE(qp);
@@ -386,7 +406,7 @@ int priv_ibv_modify_qp_ratelimit(struct
 #endif
 	BULLSEYE_EXCLUDE_BLOCK_START
 	IF_VERBS_FAILURE(vma_ibv_modify_qp(qp, &qp_attr, exp_attr_mask)) {
-		vlog_printf(VLOG_WARNING, "failed setting rate limit\n");
+		vlog_printf(VLOG_DEBUG, "failed setting rate limit\n");
 		return -2;
 	} ENDIF_VERBS_FAILURE;
 	BULLSEYE_EXCLUDE_BLOCK_END
diff -pruN 8.8.1-1/src/vma/ib/base/verbs_extra.h 8.8.1.really.8.7.7-1/src/vma/ib/base/verbs_extra.h
--- 8.8.1-1/src/vma/ib/base/verbs_extra.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/ib/base/verbs_extra.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -112,6 +112,7 @@ void priv_ibv_modify_cq_moderation(struc
 #define FLOW_TAG_MASK     ((1 << 20) -1)
 int priv_ibv_query_flow_tag_supported(struct ibv_qp *qp, uint8_t port_num);
 int priv_ibv_create_flow_supported(struct ibv_qp *qp, uint8_t port_num);
+int priv_ibv_query_burst_supported(struct ibv_qp *qp, uint8_t port_num);
 
 /* DEFINED_VERBS_VERSION:
  * 1 - Legacy Verbs API
@@ -249,6 +250,35 @@ typedef struct ibv_modify_cq_attr
 #define VMA_IBV_CQ_MODERATION                   IBV_CQ_ATTR_MODERATE
 #endif
 
+// Clock info
+#ifdef DEFINED_IBV_CLOCK_INFO
+typedef struct mlx5dv_clock_info                    vma_ibv_clock_info;
+#define vma_ibv_query_clock_info(ctx, clock_info)   mlx5dv_get_clock_info(ctx, clock_info)
+#define vma_ibv_convert_ts_to_ns(clock_info, hw_ts) mlx5dv_ts_to_ns(clock_info, hw_ts)
+#endif //DEFINED_IBV_CLOCK_INFO
+
+// ibv_dm
+#ifdef DEFINED_IBV_DM
+#define vma_ibv_alloc_dm(ctx, attr)      ibv_alloc_dm(ctx, attr)
+#define vma_ibv_free_dm(dm)              ibv_free_dm(dm)
+#define vma_ibv_reg_dm_mr(mr)            ibv_reg_dm_mr((mr)->pd, (mr)->dm, 0, (mr)->length, IBV_ACCESS_LOCAL_WRITE | IBV_ACCESS_ZERO_BASED)
+#define vma_ibv_memcpy_dm(dm, attr)      ibv_memcpy_to_dm(dm, (attr)->dm_offset, (attr)->host_addr, (attr)->length)
+#define vma_ibv_init_memcpy_dm(attr, src, head, size)          { attr.host_addr = src; attr.dm_offset = head; attr.length = size; }
+#define vma_ibv_init_dm_mr(in_mr, ctx_pd, size, allocated_dm)  { in_mr.pd = ctx_pd; in_mr.length = size; in_mr.dm = allocated_dm; }
+typedef struct ibv_alloc_dm_attr         vma_ibv_alloc_dm_attr;
+typedef struct ibv_dm                    vma_ibv_dm;
+typedef struct {
+	void * host_addr;
+	uint64_t dm_offset;
+	size_t length;
+} vma_ibv_memcpy_dm_attr;
+typedef struct {
+	struct ibv_pd *pd;
+	size_t      length;
+	vma_ibv_dm *dm;
+} vma_ibv_reg_mr_in;
+#endif
+
 #else /* DEFINED_VERBS_VERSION */
 
 //ibv_create_qp
@@ -402,6 +432,27 @@ typedef struct ibv_exp_flow_spec_action_
 typedef struct ibv_exp_flow_spec_action_tag_dummy {}    vma_ibv_flow_spec_action_tag;
 #endif //DEFINED_IBV_FLOW_TAG
 
+// Clock info
+#ifdef DEFINED_IBV_CLOCK_INFO
+typedef struct ibv_exp_values                       vma_ibv_clock_info;
+#define vma_ibv_convert_ts_to_ns(info, hw_ts)       ibv_exp_cqe_ts_to_ns(&((info)->clock_info), hw_ts)
+#define vma_ibv_query_clock_info(ctx, clock_info)   ibv_exp_query_values(ctx, IBV_EXP_VALUES_CLOCK_INFO, clock_info)
+#endif //DEFINED_IBV_CLOCK_INFO
+
+// ibv_dm
+#ifdef DEFINED_IBV_DM
+#define vma_ibv_alloc_dm(ctx, attr)      ibv_exp_alloc_dm(ctx, attr)
+#define vma_ibv_free_dm(dm)              ibv_exp_free_dm(dm)
+#define vma_ibv_reg_dm_mr(mr)            ibv_exp_reg_mr(mr)
+#define vma_ibv_memcpy_dm(dm, attr)      ibv_exp_memcpy_dm(dm, attr)
+#define vma_ibv_init_memcpy_dm(attr, src, head, size)          { attr.memcpy_dir = IBV_EXP_DM_CPY_TO_DEVICE; attr.host_addr = src; attr.dm_offset = head; attr.length = size; }
+#define vma_ibv_init_dm_mr(in_mr, ctx_pd, size, allocated_dm)  { in_mr.pd = ctx_pd; in_mr.comp_mask = IBV_EXP_REG_MR_DM; in_mr.length = size; in_mr.dm = allocated_dm; }
+typedef struct ibv_exp_alloc_dm_attr     vma_ibv_alloc_dm_attr;
+typedef struct ibv_exp_memcpy_dm_attr    vma_ibv_memcpy_dm_attr;
+typedef struct ibv_exp_dm                vma_ibv_dm;
+typedef struct ibv_exp_reg_mr_in         vma_ibv_reg_mr_in;
+#endif
+
 #endif /* DEFINED_VERBS_VERSION */
 
 // ibv_dm
@@ -419,12 +470,6 @@ typedef struct ibv_exp_flow_spec_action_
 #define vma_is_mp_rq_supported(attr)		(0)
 #endif
 
-#ifdef DEFINED_IBV_EXP_QP_RATE_LIMIT
-#define vma_is_packet_pacing_supported(attr)	((attr)->packet_pacing_caps.qp_rate_limit_min)
-#else
-#define vma_is_packet_pacing_supported(attr)	(0)
-#endif
-
 #if defined(HAVE_IBV_EXP_GET_DEVICE_LIST)
 #define vma_ibv_get_device_list(num)		ibv_exp_get_device_list(num)
 #else
diff -pruN 8.8.1-1/src/vma/ib/mlx5/ib_mlx5.cpp 8.8.1.really.8.7.7-1/src/vma/ib/mlx5/ib_mlx5.cpp
--- 8.8.1-1/src/vma/ib/mlx5/ib_mlx5.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/ib/mlx5/ib_mlx5.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/ib/mlx5/ib_mlx5_dv.cpp 8.8.1.really.8.7.7-1/src/vma/ib/mlx5/ib_mlx5_dv.cpp
--- 8.8.1-1/src/vma/ib/mlx5/ib_mlx5_dv.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/ib/mlx5/ib_mlx5_dv.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/ib/mlx5/ib_mlx5_dv.h 8.8.1.really.8.7.7-1/src/vma/ib/mlx5/ib_mlx5_dv.h
--- 8.8.1-1/src/vma/ib/mlx5/ib_mlx5_dv.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/ib/mlx5/ib_mlx5_dv.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/ib/mlx5/ib_mlx5.h 8.8.1.really.8.7.7-1/src/vma/ib/mlx5/ib_mlx5.h
--- 8.8.1-1/src/vma/ib/mlx5/ib_mlx5.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/ib/mlx5/ib_mlx5.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/ib/mlx5/ib_mlx5_hw.cpp 8.8.1.really.8.7.7-1/src/vma/ib/mlx5/ib_mlx5_hw.cpp
--- 8.8.1-1/src/vma/ib/mlx5/ib_mlx5_hw.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/ib/mlx5/ib_mlx5_hw.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/ib/mlx5/ib_mlx5_hw.h 8.8.1.really.8.7.7-1/src/vma/ib/mlx5/ib_mlx5_hw.h
--- 8.8.1-1/src/vma/ib/mlx5/ib_mlx5_hw.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/ib/mlx5/ib_mlx5_hw.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/infra/cache_subject_observer.h 8.8.1.really.8.7.7-1/src/vma/infra/cache_subject_observer.h
--- 8.8.1-1/src/vma/infra/cache_subject_observer.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/infra/cache_subject_observer.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/infra/DemoCollMgr.cpp 8.8.1.really.8.7.7-1/src/vma/infra/DemoCollMgr.cpp
--- 8.8.1-1/src/vma/infra/DemoCollMgr.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/infra/DemoCollMgr.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/infra/DemoCollMgr.h 8.8.1.really.8.7.7-1/src/vma/infra/DemoCollMgr.h
--- 8.8.1-1/src/vma/infra/DemoCollMgr.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/infra/DemoCollMgr.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/infra/DemoObserver.cpp 8.8.1.really.8.7.7-1/src/vma/infra/DemoObserver.cpp
--- 8.8.1-1/src/vma/infra/DemoObserver.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/infra/DemoObserver.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/infra/DemoObserver.h 8.8.1.really.8.7.7-1/src/vma/infra/DemoObserver.h
--- 8.8.1-1/src/vma/infra/DemoObserver.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/infra/DemoObserver.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/infra/DemoSubject.cpp 8.8.1.really.8.7.7-1/src/vma/infra/DemoSubject.cpp
--- 8.8.1-1/src/vma/infra/DemoSubject.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/infra/DemoSubject.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/infra/DemoSubject.h 8.8.1.really.8.7.7-1/src/vma/infra/DemoSubject.h
--- 8.8.1-1/src/vma/infra/DemoSubject.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/infra/DemoSubject.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/infra/main.cpp 8.8.1.really.8.7.7-1/src/vma/infra/main.cpp
--- 8.8.1-1/src/vma/infra/main.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/infra/main.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/infra/sender.h 8.8.1.really.8.7.7-1/src/vma/infra/sender.h
--- 8.8.1-1/src/vma/infra/sender.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/infra/sender.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/infra/sender_info_dst.cpp 8.8.1.really.8.7.7-1/src/vma/infra/sender_info_dst.cpp
--- 8.8.1-1/src/vma/infra/sender_info_dst.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/infra/sender_info_dst.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/infra/sender_info_dst.h 8.8.1.really.8.7.7-1/src/vma/infra/sender_info_dst.h
--- 8.8.1-1/src/vma/infra/sender_info_dst.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/infra/sender_info_dst.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/infra/subject_observer.cpp 8.8.1.really.8.7.7-1/src/vma/infra/subject_observer.cpp
--- 8.8.1-1/src/vma/infra/subject_observer.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/infra/subject_observer.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/infra/subject_observer.h 8.8.1.really.8.7.7-1/src/vma/infra/subject_observer.h
--- 8.8.1-1/src/vma/infra/subject_observer.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/infra/subject_observer.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/iomux/epfd_info.cpp 8.8.1.really.8.7.7-1/src/vma/iomux/epfd_info.cpp
--- 8.8.1-1/src/vma/iomux/epfd_info.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/iomux/epfd_info.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/iomux/epfd_info.h 8.8.1.really.8.7.7-1/src/vma/iomux/epfd_info.h
--- 8.8.1-1/src/vma/iomux/epfd_info.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/iomux/epfd_info.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/iomux/epoll_wait_call.cpp 8.8.1.really.8.7.7-1/src/vma/iomux/epoll_wait_call.cpp
--- 8.8.1-1/src/vma/iomux/epoll_wait_call.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/iomux/epoll_wait_call.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/iomux/epoll_wait_call.h 8.8.1.really.8.7.7-1/src/vma/iomux/epoll_wait_call.h
--- 8.8.1-1/src/vma/iomux/epoll_wait_call.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/iomux/epoll_wait_call.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/iomux/io_mux_call.cpp 8.8.1.really.8.7.7-1/src/vma/iomux/io_mux_call.cpp
--- 8.8.1-1/src/vma/iomux/io_mux_call.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/iomux/io_mux_call.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/iomux/io_mux_call.h 8.8.1.really.8.7.7-1/src/vma/iomux/io_mux_call.h
--- 8.8.1-1/src/vma/iomux/io_mux_call.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/iomux/io_mux_call.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/iomux/poll_call.cpp 8.8.1.really.8.7.7-1/src/vma/iomux/poll_call.cpp
--- 8.8.1-1/src/vma/iomux/poll_call.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/iomux/poll_call.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/iomux/poll_call.h 8.8.1.really.8.7.7-1/src/vma/iomux/poll_call.h
--- 8.8.1-1/src/vma/iomux/poll_call.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/iomux/poll_call.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/iomux/select_call.cpp 8.8.1.really.8.7.7-1/src/vma/iomux/select_call.cpp
--- 8.8.1-1/src/vma/iomux/select_call.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/iomux/select_call.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/iomux/select_call.h 8.8.1.really.8.7.7-1/src/vma/iomux/select_call.h
--- 8.8.1-1/src/vma/iomux/select_call.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/iomux/select_call.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/libvma.c 8.8.1.really.8.7.7-1/src/vma/libvma.c
--- 8.8.1-1/src/vma/libvma.c	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/libvma.c	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/lwip/cc.c 8.8.1.really.8.7.7-1/src/vma/lwip/cc.c
--- 8.8.1-1/src/vma/lwip/cc.c	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/lwip/cc.c	2019-01-30 12:11:38.000000000 +0000
@@ -49,7 +49,7 @@
  */
 
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/lwip/cc_cubic.c 8.8.1.really.8.7.7-1/src/vma/lwip/cc_cubic.c
--- 8.8.1-1/src/vma/lwip/cc_cubic.c	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/lwip/cc_cubic.c	2019-01-30 12:11:38.000000000 +0000
@@ -49,7 +49,7 @@
  */
 
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/lwip/cc_cubic.h 8.8.1.really.8.7.7-1/src/vma/lwip/cc_cubic.h
--- 8.8.1-1/src/vma/lwip/cc_cubic.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/lwip/cc_cubic.h	2019-01-30 12:11:38.000000000 +0000
@@ -49,7 +49,7 @@
  */
 
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/lwip/cc.h 8.8.1.really.8.7.7-1/src/vma/lwip/cc.h
--- 8.8.1-1/src/vma/lwip/cc.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/lwip/cc.h	2019-01-30 12:11:38.000000000 +0000
@@ -49,7 +49,7 @@
  */
 
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/lwip/cc_lwip.c 8.8.1.really.8.7.7-1/src/vma/lwip/cc_lwip.c
--- 8.8.1-1/src/vma/lwip/cc_lwip.c	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/lwip/cc_lwip.c	2019-01-30 12:11:38.000000000 +0000
@@ -49,7 +49,7 @@
  */
 
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/lwip/cc_none.c 8.8.1.really.8.7.7-1/src/vma/lwip/cc_none.c
--- 8.8.1-1/src/vma/lwip/cc_none.c	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/lwip/cc_none.c	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/main.cpp 8.8.1.really.8.7.7-1/src/vma/main.cpp
--- 8.8.1-1/src/vma/main.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/main.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/main.h 8.8.1.really.8.7.7-1/src/vma/main.h
--- 8.8.1-1/src/vma/main.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/main.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/netlink/link_info.cpp 8.8.1.really.8.7.7-1/src/vma/netlink/link_info.cpp
--- 8.8.1-1/src/vma/netlink/link_info.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/netlink/link_info.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/netlink/link_info.h 8.8.1.really.8.7.7-1/src/vma/netlink/link_info.h
--- 8.8.1-1/src/vma/netlink/link_info.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/netlink/link_info.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/netlink/neigh_info.cpp 8.8.1.really.8.7.7-1/src/vma/netlink/neigh_info.cpp
--- 8.8.1-1/src/vma/netlink/neigh_info.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/netlink/neigh_info.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/netlink/neigh_info.h 8.8.1.really.8.7.7-1/src/vma/netlink/neigh_info.h
--- 8.8.1-1/src/vma/netlink/neigh_info.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/netlink/neigh_info.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/netlink/netlink_compatibility.cpp 8.8.1.really.8.7.7-1/src/vma/netlink/netlink_compatibility.cpp
--- 8.8.1-1/src/vma/netlink/netlink_compatibility.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/netlink/netlink_compatibility.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/netlink/netlink_compatibility.h 8.8.1.really.8.7.7-1/src/vma/netlink/netlink_compatibility.h
--- 8.8.1-1/src/vma/netlink/netlink_compatibility.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/netlink/netlink_compatibility.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/netlink/netlink_wrapper.cpp 8.8.1.really.8.7.7-1/src/vma/netlink/netlink_wrapper.cpp
--- 8.8.1-1/src/vma/netlink/netlink_wrapper.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/netlink/netlink_wrapper.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/netlink/netlink_wrapper.h 8.8.1.really.8.7.7-1/src/vma/netlink/netlink_wrapper.h
--- 8.8.1-1/src/vma/netlink/netlink_wrapper.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/netlink/netlink_wrapper.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/netlink/route_info.cpp 8.8.1.really.8.7.7-1/src/vma/netlink/route_info.cpp
--- 8.8.1-1/src/vma/netlink/route_info.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/netlink/route_info.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/netlink/route_info.h 8.8.1.really.8.7.7-1/src/vma/netlink/route_info.h
--- 8.8.1-1/src/vma/netlink/route_info.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/netlink/route_info.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/netlink/test_main.cpp 8.8.1.really.8.7.7-1/src/vma/netlink/test_main.cpp
--- 8.8.1-1/src/vma/netlink/test_main.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/netlink/test_main.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/arp.cpp 8.8.1.really.8.7.7-1/src/vma/proto/arp.cpp
--- 8.8.1-1/src/vma/proto/arp.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/arp.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/arp.h 8.8.1.really.8.7.7-1/src/vma/proto/arp.h
--- 8.8.1-1/src/vma/proto/arp.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/arp.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/dst_entry.cpp 8.8.1.really.8.7.7-1/src/vma/proto/dst_entry.cpp
--- 8.8.1-1/src/vma/proto/dst_entry.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/dst_entry.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -597,7 +597,8 @@ bool dst_entry::prepare_to_send(struct v
 bool dst_entry::try_migrate_ring(lock_base& socket_lock)
 {
 	if (m_ring_alloc_logic.should_migrate_ring()) {
-		do_ring_migration(socket_lock);
+		resource_allocation_key old_key(*m_ring_alloc_logic.get_key());
+		do_ring_migration(socket_lock, old_key);
 		return true;
 	}
 	return false;
@@ -611,7 +612,7 @@ int dst_entry::get_route_mtu()
 	return m_p_net_dev_val->get_mtu();
 }
 
-void dst_entry::do_ring_migration(lock_base& socket_lock)
+void dst_entry::do_ring_migration(lock_base& socket_lock, resource_allocation_key &old_key)
 {
 	m_slow_path_lock.lock();
 
@@ -620,15 +621,14 @@ void dst_entry::do_ring_migration(lock_b
 		return;
 	}
 
-	resource_allocation_key *new_key = m_ring_alloc_logic.get_key();
 	uint64_t new_calc_id = m_ring_alloc_logic.calc_res_key_by_logic();
+	resource_allocation_key *new_key = m_ring_alloc_logic.get_key();
 	// Check again if migration is needed before migration
-	if (new_key->get_user_id_key() == new_calc_id) {
+	if (old_key.get_user_id_key() == new_calc_id &&
+	    old_key.get_ring_alloc_logic() == new_key->get_ring_alloc_logic()) {
 		m_slow_path_lock.unlock();
 		return;
 	}
-	// Save old key for release
-	resource_allocation_key old_key(*m_ring_alloc_logic.get_key());
 	// Update key to new ID
 	new_key->set_user_id_key(new_calc_id);
 	m_slow_path_lock.unlock();
@@ -780,3 +780,17 @@ int dst_entry::get_priority_by_tc_class(
 	}
 	return VMA_DEFAULT_ENGRESS_MAP_PRIO;
 }
+
+bool dst_entry::update_ring_alloc_logic(int fd, lock_base& socket_lock, resource_allocation_key &ring_alloc_logic)
+{
+	resource_allocation_key old_key(*m_ring_alloc_logic.get_key());
+
+	m_ring_alloc_logic = ring_allocation_logic_tx(fd, ring_alloc_logic, this);
+
+	if (*m_ring_alloc_logic.get_key() != old_key) {
+		do_ring_migration(socket_lock, old_key);
+		return true;
+	}
+
+	return false;
+}
diff -pruN 8.8.1-1/src/vma/proto/dst_entry.h 8.8.1.really.8.7.7-1/src/vma/proto/dst_entry.h
--- 8.8.1-1/src/vma/proto/dst_entry.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/dst_entry.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -86,6 +86,7 @@ public:
 		return m_pkt_src_ip;
 	}
 	int		modify_ratelimit(struct vma_rate_limit_t &rate_limit);
+	bool		update_ring_alloc_logic(int fd, lock_base & socket_lock, resource_allocation_key & ring_alloc_logic);
 
 #if _BullseyeCoverage
     #pragma BullseyeCoverage off
@@ -176,7 +177,7 @@ protected:
 	bool 			alloc_transport_dep_res();
 	bool 			alloc_neigh_val(transport_type_t tranport);
 
-	void			do_ring_migration(lock_base& socket_lock);
+	void			do_ring_migration(lock_base& socket_lock, resource_allocation_key &old_key);
 	inline void		set_tx_buff_list_pending(bool is_pending = true) {m_b_tx_mem_buf_desc_list_pending = is_pending;}
 	int			get_priority_by_tc_class(uint32_t tc_clas);
 	inline void		send_ring_buffer(ring_user_id_t id, vma_ibv_send_wr* p_send_wqe, vma_wr_tx_packet_attr attr)
diff -pruN 8.8.1-1/src/vma/proto/dst_entry_tcp.cpp 8.8.1.really.8.7.7-1/src/vma/proto/dst_entry_tcp.cpp
--- 8.8.1-1/src/vma/proto/dst_entry_tcp.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/dst_entry_tcp.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -170,7 +170,7 @@ ssize_t dst_entry_tcp::fast_send(const i
 
 out:
 	if (unlikely(is_rexmit)) {
-		m_p_ring->inc_tx_retransmissions(m_id);
+		m_p_ring->inc_tx_retransmissions_stats(m_id);
 	}
 
 	return ret;
diff -pruN 8.8.1-1/src/vma/proto/dst_entry_tcp.h 8.8.1.really.8.7.7-1/src/vma/proto/dst_entry_tcp.h
--- 8.8.1-1/src/vma/proto/dst_entry_tcp.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/dst_entry_tcp.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/dst_entry_udp.cpp 8.8.1.really.8.7.7-1/src/vma/proto/dst_entry_udp.cpp
--- 8.8.1-1/src/vma/proto/dst_entry_udp.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/dst_entry_udp.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/dst_entry_udp.h 8.8.1.really.8.7.7-1/src/vma/proto/dst_entry_udp.h
--- 8.8.1-1/src/vma/proto/dst_entry_udp.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/dst_entry_udp.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/dst_entry_udp_mc.cpp 8.8.1.really.8.7.7-1/src/vma/proto/dst_entry_udp_mc.cpp
--- 8.8.1-1/src/vma/proto/dst_entry_udp_mc.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/dst_entry_udp_mc.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/dst_entry_udp_mc.h 8.8.1.really.8.7.7-1/src/vma/proto/dst_entry_udp_mc.h
--- 8.8.1-1/src/vma/proto/dst_entry_udp_mc.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/dst_entry_udp_mc.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/flow_tuple.cpp 8.8.1.really.8.7.7-1/src/vma/proto/flow_tuple.cpp
--- 8.8.1-1/src/vma/proto/flow_tuple.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/flow_tuple.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/flow_tuple.h 8.8.1.really.8.7.7-1/src/vma/proto/flow_tuple.h
--- 8.8.1-1/src/vma/proto/flow_tuple.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/flow_tuple.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/header.cpp 8.8.1.really.8.7.7-1/src/vma/proto/header.cpp
--- 8.8.1-1/src/vma/proto/header.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/header.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/header.h 8.8.1.really.8.7.7-1/src/vma/proto/header.h
--- 8.8.1-1/src/vma/proto/header.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/header.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/igmp_handler.cpp 8.8.1.really.8.7.7-1/src/vma/proto/igmp_handler.cpp
--- 8.8.1-1/src/vma/proto/igmp_handler.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/igmp_handler.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/igmp_handler.h 8.8.1.really.8.7.7-1/src/vma/proto/igmp_handler.h
--- 8.8.1-1/src/vma/proto/igmp_handler.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/igmp_handler.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/igmp_mgr.cpp 8.8.1.really.8.7.7-1/src/vma/proto/igmp_mgr.cpp
--- 8.8.1-1/src/vma/proto/igmp_mgr.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/igmp_mgr.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/igmp_mgr.h 8.8.1.really.8.7.7-1/src/vma/proto/igmp_mgr.h
--- 8.8.1-1/src/vma/proto/igmp_mgr.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/igmp_mgr.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/ip_address.h 8.8.1.really.8.7.7-1/src/vma/proto/ip_address.h
--- 8.8.1-1/src/vma/proto/ip_address.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/ip_address.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/ip_frag.cpp 8.8.1.really.8.7.7-1/src/vma/proto/ip_frag.cpp
--- 8.8.1-1/src/vma/proto/ip_frag.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/ip_frag.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/ip_frag.h 8.8.1.really.8.7.7-1/src/vma/proto/ip_frag.h
--- 8.8.1-1/src/vma/proto/ip_frag.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/ip_frag.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/L2_address.cpp 8.8.1.really.8.7.7-1/src/vma/proto/L2_address.cpp
--- 8.8.1-1/src/vma/proto/L2_address.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/L2_address.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/L2_address.h 8.8.1.really.8.7.7-1/src/vma/proto/L2_address.h
--- 8.8.1-1/src/vma/proto/L2_address.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/L2_address.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/mem_buf_desc.h 8.8.1.really.8.7.7-1/src/vma/proto/mem_buf_desc.h
--- 8.8.1-1/src/vma/proto/mem_buf_desc.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/mem_buf_desc.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/neighbour.cpp 8.8.1.really.8.7.7-1/src/vma/proto/neighbour.cpp
--- 8.8.1-1/src/vma/proto/neighbour.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/neighbour.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/neighbour.h 8.8.1.really.8.7.7-1/src/vma/proto/neighbour.h
--- 8.8.1-1/src/vma/proto/neighbour.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/neighbour.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/neighbour_observer.h 8.8.1.really.8.7.7-1/src/vma/proto/neighbour_observer.h
--- 8.8.1-1/src/vma/proto/neighbour_observer.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/neighbour_observer.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/neighbour_table_mgr.cpp 8.8.1.really.8.7.7-1/src/vma/proto/neighbour_table_mgr.cpp
--- 8.8.1-1/src/vma/proto/neighbour_table_mgr.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/neighbour_table_mgr.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/neighbour_table_mgr.h 8.8.1.really.8.7.7-1/src/vma/proto/neighbour_table_mgr.h
--- 8.8.1-1/src/vma/proto/neighbour_table_mgr.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/neighbour_table_mgr.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/netlink_socket_mgr.h 8.8.1.really.8.7.7-1/src/vma/proto/netlink_socket_mgr.h
--- 8.8.1-1/src/vma/proto/netlink_socket_mgr.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/netlink_socket_mgr.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/peer_key.h 8.8.1.really.8.7.7-1/src/vma/proto/peer_key.h
--- 8.8.1-1/src/vma/proto/peer_key.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/peer_key.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/route_entry.cpp 8.8.1.really.8.7.7-1/src/vma/proto/route_entry.cpp
--- 8.8.1-1/src/vma/proto/route_entry.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/route_entry.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/route_entry.h 8.8.1.really.8.7.7-1/src/vma/proto/route_entry.h
--- 8.8.1-1/src/vma/proto/route_entry.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/route_entry.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/route_rule_table_key.h 8.8.1.really.8.7.7-1/src/vma/proto/route_rule_table_key.h
--- 8.8.1-1/src/vma/proto/route_rule_table_key.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/route_rule_table_key.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/route_table_mgr.cpp 8.8.1.really.8.7.7-1/src/vma/proto/route_table_mgr.cpp
--- 8.8.1-1/src/vma/proto/route_table_mgr.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/route_table_mgr.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/route_table_mgr.h 8.8.1.really.8.7.7-1/src/vma/proto/route_table_mgr.h
--- 8.8.1-1/src/vma/proto/route_table_mgr.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/route_table_mgr.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/route_val.cpp 8.8.1.really.8.7.7-1/src/vma/proto/route_val.cpp
--- 8.8.1-1/src/vma/proto/route_val.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/route_val.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/route_val.h 8.8.1.really.8.7.7-1/src/vma/proto/route_val.h
--- 8.8.1-1/src/vma/proto/route_val.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/route_val.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/rule_entry.cpp 8.8.1.really.8.7.7-1/src/vma/proto/rule_entry.cpp
--- 8.8.1-1/src/vma/proto/rule_entry.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/rule_entry.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/rule_entry.h 8.8.1.really.8.7.7-1/src/vma/proto/rule_entry.h
--- 8.8.1-1/src/vma/proto/rule_entry.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/rule_entry.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/rule_table_mgr.cpp 8.8.1.really.8.7.7-1/src/vma/proto/rule_table_mgr.cpp
--- 8.8.1-1/src/vma/proto/rule_table_mgr.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/rule_table_mgr.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/rule_table_mgr.h 8.8.1.really.8.7.7-1/src/vma/proto/rule_table_mgr.h
--- 8.8.1-1/src/vma/proto/rule_table_mgr.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/rule_table_mgr.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/rule_val.cpp 8.8.1.really.8.7.7-1/src/vma/proto/rule_val.cpp
--- 8.8.1-1/src/vma/proto/rule_val.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/rule_val.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/rule_val.h 8.8.1.really.8.7.7-1/src/vma/proto/rule_val.h
--- 8.8.1-1/src/vma/proto/rule_val.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/rule_val.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/proto/vma_lwip.cpp 8.8.1.really.8.7.7-1/src/vma/proto/vma_lwip.cpp
--- 8.8.1-1/src/vma/proto/vma_lwip.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/vma_lwip.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -30,28 +30,14 @@
  * SOFTWARE.
  */
 
-
-#include <errno.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-
-#include "utils/bullseye.h"
 #include "utils/rdtsc.h"
 #include "vlogger/vlogger.h"
-#include "vma/util/vtypes.h"
-#include "vma/util/utils.h"
-#include "vma/proto/route_table_mgr.h"
-#include "vma/proto/rule_table_mgr.h"
-#include "vma/event/event_handler_manager.h"
-#include "vma/dev/ib_ctx_handler_collection.h"
-#include "vma/sock/sock-redirect.h"
-#include "vma/iomux/io_mux_call.h"
-#include "vma_lwip.h"
 
+#include "vma/event/event_handler_manager.h"
 #include "vma/sock/sockinfo_tcp.h"
 #include "vma/lwip/init.h"
 #include "vma/lwip/tcp_impl.h"
+#include "vma_lwip.h"
 
 // debugging macros
 #define MODULE_NAME 		"lwip"
@@ -69,25 +55,9 @@
 #define lwip_logfunc              __log_info_func
 #define lwip_logfuncall           __log_info_funcall
 
-#if _BullseyeCoverage
-    #pragma BullseyeCoverage off
-#endif
-
 int32_t enable_wnd_scale = 0;
 u32_t rcv_wnd_scale = 0;
 
-/* required system support functions for LWIP */
-u32_t sys_jiffies(void)
-{
-	tscval_t now;
-
-	gettimeoftsc(&now);
-	return (u32_t)now;
-}
-#if _BullseyeCoverage
-    #pragma BullseyeCoverage on
-#endif
-
 u32_t vma_lwip::sys_now(void)
 {
 	struct timespec now;
@@ -174,26 +144,6 @@ void vma_lwip::free_lwip_resources(void)
 	/* TODO - revert the constructor */
 }
 
-#if _BullseyeCoverage
-    #pragma BullseyeCoverage off
-#endif
-
-int vma_lwip::sockaddr2ipaddr(const sockaddr *__to, socklen_t __tolen, ip_addr_t &ip, uint16_t &port)
-{
-	NOT_IN_USE(__tolen);
-	if (get_sa_family(__to)	 != AF_INET)
-		return -1;
-
-	ip.addr = get_sa_ipv4_addr(__to);
-	port = htons(get_sa_port(__to));
-	return 0;
-}
-
-#if _BullseyeCoverage
-    #pragma BullseyeCoverage on
-#endif
-
-
 void vma_lwip::handle_timer_expired(void* user_data) {
 	NOT_IN_USE(user_data);
 	tcp_ticks++;
diff -pruN 8.8.1-1/src/vma/proto/vma_lwip.h 8.8.1.really.8.7.7-1/src/vma/proto/vma_lwip.h
--- 8.8.1-1/src/vma/proto/vma_lwip.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/proto/vma_lwip.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -34,34 +34,11 @@
 #ifndef _VMA_LWIP_H
 #define _VMA_LWIP_H
 
-#include <list>
-#include <net/ethernet.h>
-#include <sys/param.h>
 #include "vma/event/timer_handler.h"
-#include "vma/util/hash_map.h"
-#include "vma/util/libvma.h"
 #include "vma/proto/mem_buf_desc.h"
 #include "vma/sock/pkt_rcvr_sink.h"
 #include "vma/lwip/tcp.h"
 
-class buffer_pool;
-
-#define TCP_RX_POLL_TO_MS 1000
-
-#if _BullseyeCoverage
-    #pragma BullseyeCoverage off
-#endif
-
-static inline int is_mcast_mac(const uint8_t *addr)
-{
-        return (0x01 & addr[0]);
-}
-
-static inline int is_bcast_mac(const uint8_t *addr)
-{
-        return (addr[0] & addr[1] & addr[2] & addr[3] & addr[4] & addr[5]) == 0xff;
-}
-
 static inline const char* lwip_cc_algo_str(uint32_t algo)
 {
 	switch (algo) {
@@ -72,23 +49,12 @@ static inline const char* lwip_cc_algo_s
 	}
 }
 
-#if _BullseyeCoverage
-    #pragma BullseyeCoverage on
-#endif
-
-
 class vma_lwip : public timer_handler
 {
 public:
 	vma_lwip();
 	virtual ~vma_lwip();
 
-	static int sockaddr2ipaddr(const sockaddr *__to, socklen_t __tolen, ip_addr_t & ip, uint16_t & port);
-	void do_timers();
-
-	//RX: feed packet to the LWIP stack
-	static int  vma_tcp_input(mem_buf_desc_t* p_rx_wc_buf_desc, tcp_pcb* p_conn, void* pv_fd_ready_array);
-
 	virtual void handle_timer_expired(void* user_data);
 
 	static u32_t sys_now(void);
diff -pruN 8.8.1-1/src/vma/sock/cleanable_obj.h 8.8.1.really.8.7.7-1/src/vma/sock/cleanable_obj.h
--- 8.8.1-1/src/vma/sock/cleanable_obj.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/sock/cleanable_obj.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/sock/fd_collection.cpp 8.8.1.really.8.7.7-1/src/vma/sock/fd_collection.cpp
--- 8.8.1-1/src/vma/sock/fd_collection.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/sock/fd_collection.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/sock/fd_collection.h 8.8.1.really.8.7.7-1/src/vma/sock/fd_collection.h
--- 8.8.1-1/src/vma/sock/fd_collection.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/sock/fd_collection.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/sock/pipeinfo.cpp 8.8.1.really.8.7.7-1/src/vma/sock/pipeinfo.cpp
--- 8.8.1-1/src/vma/sock/pipeinfo.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/sock/pipeinfo.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/sock/pipeinfo.h 8.8.1.really.8.7.7-1/src/vma/sock/pipeinfo.h
--- 8.8.1-1/src/vma/sock/pipeinfo.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/sock/pipeinfo.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/sock/pkt_rcvr_sink.h 8.8.1.really.8.7.7-1/src/vma/sock/pkt_rcvr_sink.h
--- 8.8.1-1/src/vma/sock/pkt_rcvr_sink.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/sock/pkt_rcvr_sink.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/sock/pkt_sndr_source.h 8.8.1.really.8.7.7-1/src/vma/sock/pkt_sndr_source.h
--- 8.8.1-1/src/vma/sock/pkt_sndr_source.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/sock/pkt_sndr_source.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/sock/socket_fd_api.cpp 8.8.1.really.8.7.7-1/src/vma/sock/socket_fd_api.cpp
--- 8.8.1-1/src/vma/sock/socket_fd_api.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/sock/socket_fd_api.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/sock/socket_fd_api.h 8.8.1.really.8.7.7-1/src/vma/sock/socket_fd_api.h
--- 8.8.1-1/src/vma/sock/socket_fd_api.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/sock/socket_fd_api.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/sock/sockinfo.cpp 8.8.1.really.8.7.7-1/src/vma/sock/sockinfo.cpp
--- 8.8.1-1/src/vma/sock/sockinfo.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/sock/sockinfo.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -107,6 +107,11 @@ sockinfo::sockinfo(int fd):
 	m_p_socket_stats->fd = m_fd;
 	m_p_socket_stats->inode = fd2inode(m_fd);
 	m_p_socket_stats->b_blocking = m_b_blocking;
+	m_p_socket_stats->ring_alloc_logic_rx = m_ring_alloc_log_rx.get_ring_alloc_logic();
+	m_p_socket_stats->ring_alloc_logic_tx = m_ring_alloc_log_tx.get_ring_alloc_logic();
+	m_p_socket_stats->ring_user_id_rx = m_ring_alloc_logic.calc_res_key_by_logic();
+	m_p_socket_stats->ring_user_id_tx =
+			ring_allocation_logic_tx(get_fd(), m_ring_alloc_log_tx, this).calc_res_key_by_logic();
 	m_rx_reuse_buff.n_buff_num = 0;
 	memset(&m_so_ratelimit, 0, sizeof(vma_rate_limit_t));
 	set_flow_tag(m_fd + 1);
@@ -188,6 +193,56 @@ int sockinfo::fcntl(int __cmd, unsigned
 	return orig_os_api.fcntl(m_fd, __cmd, __arg);
 }
 
+int sockinfo::set_ring_attr(vma_ring_alloc_logic_attr *attr)
+{
+	if ((attr->comp_mask & VMA_RING_ALLOC_MASK_RING_ENGRESS) && attr->engress) {
+		if (set_ring_attr_helper(&m_ring_alloc_log_tx, attr)) {
+			return SOCKOPT_NO_VMA_SUPPORT;
+		}
+		ring_alloc_logic_updater du(get_fd(), m_lock_snd, m_ring_alloc_log_tx, m_p_socket_stats);
+		update_header_field(&du);
+		m_p_socket_stats->ring_alloc_logic_tx = m_ring_alloc_log_tx.get_ring_alloc_logic();
+		m_p_socket_stats->ring_user_id_tx =
+			ring_allocation_logic_tx(get_fd(), m_ring_alloc_log_tx, this).calc_res_key_by_logic();
+	}
+	if ((attr->comp_mask & VMA_RING_ALLOC_MASK_RING_INGRESS) && attr->ingress) {
+		ring_alloc_logic_attr old_key(*m_ring_alloc_logic.get_key());
+
+		if (set_ring_attr_helper(&m_ring_alloc_log_rx, attr)) {
+			return SOCKOPT_NO_VMA_SUPPORT;
+		}
+		m_ring_alloc_logic = ring_allocation_logic_rx(get_fd(), m_ring_alloc_log_rx, this);
+		
+		if (m_rx_nd_map.size())
+			do_rings_migration(old_key);
+
+		m_p_socket_stats->ring_alloc_logic_rx = m_ring_alloc_log_rx.get_ring_alloc_logic();
+		m_p_socket_stats->ring_user_id_rx =  m_ring_alloc_logic.calc_res_key_by_logic();
+	}
+
+	return SOCKOPT_INTERNAL_VMA_SUPPORT;
+}
+
+int sockinfo::set_ring_attr_helper(ring_alloc_logic_attr *sock_attr,
+				   vma_ring_alloc_logic_attr *user_attr)
+{
+	if (user_attr->comp_mask & VMA_RING_ALLOC_MASK_RING_PROFILE_KEY) {
+		if (sock_attr->get_ring_profile_key()) {
+			si_logdbg("ring_profile_key is already set and "
+				  "cannot be changed");
+			return -1;
+		}
+		sock_attr->set_ring_profile_key(user_attr->ring_profile_key);
+	}
+
+	sock_attr->set_ring_alloc_logic(user_attr->ring_alloc_logic);
+
+	if (user_attr->comp_mask & VMA_RING_ALLOC_MASK_RING_USER_ID)
+		sock_attr->set_user_id_key(user_attr->user_id);
+
+	return 0;
+}
+
 int sockinfo::ioctl(unsigned long int __request, unsigned long int __arg)
 {
 
@@ -330,7 +385,7 @@ int sockinfo::setsockopt(int __level, in
 				}
 
 				if (val & (SOF_TIMESTAMPING_RAW_HARDWARE | SOF_TIMESTAMPING_RX_HARDWARE)) {
-					if (g_p_ib_ctx_handler_collection->get_ctx_time_conversion_mode() == TS_CONVERSION_MODE_DISABLE){
+					if (g_p_net_device_table_mgr->get_ctx_time_conversion_mode() == TS_CONVERSION_MODE_DISABLE){
 						if (safe_mce_sys().hw_ts_conversion_mode ==  TS_CONVERSION_MODE_DISABLE) {
 							ret = SOCKOPT_NO_VMA_SUPPORT;
 							errno = EPERM;
@@ -350,6 +405,25 @@ int sockinfo::setsockopt(int __level, in
 				si_logdbg("SOL_SOCKET, %s=\"???\" - NOT HANDLED, optval == NULL", setsockopt_so_opt_to_str(__optname));
 			}
 			break;
+		case SO_VMA_RING_ALLOC_LOGIC:
+			if (__optval) {
+				if (__optlen == sizeof(vma_ring_alloc_logic_attr)) {
+					vma_ring_alloc_logic_attr *attr = (vma_ring_alloc_logic_attr *)__optval;
+					return set_ring_attr(attr);
+				}
+				else {
+					ret = SOCKOPT_NO_VMA_SUPPORT;
+					si_logdbg("SOL_SOCKET, %s=\"???\" - bad length expected %d got %d",
+						  setsockopt_so_opt_to_str(__optname),
+						  sizeof(vma_ring_alloc_logic_attr), __optlen);
+					break;
+				}
+			}
+			else {
+				ret = SOCKOPT_NO_VMA_SUPPORT;
+				si_logdbg("SOL_SOCKET, %s=\"???\" - NOT HANDLED, optval == NULL", setsockopt_so_opt_to_str(__optname));
+			}
+			break;
 		default:
 			break;
 		}
@@ -805,20 +879,19 @@ bool sockinfo::destroy_nd_resources(cons
 	return true;
 }
 
-void sockinfo::do_rings_migration()
+void sockinfo::do_rings_migration(resource_allocation_key &old_key)
 {
 	lock_rx_q();
 
-	resource_allocation_key *new_key = m_ring_alloc_logic.get_key();
 	uint64_t new_calc_id = m_ring_alloc_logic.calc_res_key_by_logic();
+	resource_allocation_key *new_key = m_ring_alloc_logic.get_key();
 	// Check again if migration is needed before migration
-	if (new_key->get_user_id_key() == new_calc_id) {
+	if (old_key.get_user_id_key() == new_calc_id &&
+	    old_key.get_ring_alloc_logic() == new_key->get_ring_alloc_logic()) {
 		unlock_rx_q();
 		return;
 	}
 
-	// Save old key for release
-	resource_allocation_key old_key(*m_ring_alloc_logic.get_key());
 	// Update key to new ID
 	new_key->set_user_id_key(new_calc_id);
 	rx_net_device_map_t::iterator rx_nd_iter = m_rx_nd_map.begin();
@@ -910,13 +983,14 @@ void sockinfo::do_rings_migration()
 	}
 
 	unlock_rx_q();
+	m_p_socket_stats->counters.n_rx_migrations++;
 }
 
 void sockinfo::consider_rings_migration()
 {
 	if (m_ring_alloc_logic.should_migrate_ring()) {
-		do_rings_migration();
-		m_p_socket_stats->counters.n_rx_migrations++;
+		ring_alloc_logic_attr old_key(*m_ring_alloc_logic.get_key());
+		do_rings_migration(old_key);
 	}
 }
 
@@ -994,6 +1068,11 @@ void sockinfo::statistics_print(vlog_lev
 		vlog_printf(log_level, "Is offloaded : %s\n", m_p_connected_dst_entry->is_offloaded() ? "true" : "false");
 	}
 
+	if (m_p_socket_stats->ring_alloc_logic_rx == RING_LOGIC_PER_USER_ID)
+		vlog_printf(log_level, "RX Ring User ID : %lu\n", m_p_socket_stats->ring_user_id_rx);
+	if (m_p_socket_stats->ring_alloc_logic_tx == RING_LOGIC_PER_USER_ID)
+		vlog_printf(log_level, "TX Ring User ID : %lu\n", m_p_socket_stats->ring_user_id_tx);
+
 	if (m_p_socket_stats->counters.n_tx_sent_byte_count || m_p_socket_stats->counters.n_tx_sent_pkt_count || m_p_socket_stats->counters.n_tx_errors || m_p_socket_stats->counters.n_tx_drops ) {
 		vlog_printf(log_level, "Tx Offload : %d KB / %d / %d / %d [bytes/packets/drops/errors]\n", m_p_socket_stats->counters.n_tx_sent_byte_count/1024, m_p_socket_stats->counters.n_tx_sent_pkt_count, m_p_socket_stats->counters.n_tx_drops, m_p_socket_stats->counters.n_tx_errors);
 		b_any_activity = true;
@@ -1346,11 +1425,6 @@ int sockinfo::modify_ratelimit(dst_entry
 {
 	if (m_ring_alloc_log_tx.get_ring_alloc_logic() == RING_LOGIC_PER_SOCKET ||
 	    m_ring_alloc_log_tx.get_ring_alloc_logic() == RING_LOGIC_PER_USER_ID) {
-		// check in qp attr that device supports
-		if (m_p_rx_ring && !m_p_rx_ring->is_ratelimit_supported(rate_limit)) {
-			si_logwarn("device doesn't support packet pacing or bad value, run ibv_devinfo -v");
-			return -1;
-		}
 
 		if (p_dst_entry) {
 			int ret = p_dst_entry->modify_ratelimit(rate_limit);
diff -pruN 8.8.1-1/src/vma/sock/sockinfo.h 8.8.1.really.8.7.7-1/src/vma/sock/sockinfo.h
--- 8.8.1-1/src/vma/sock/sockinfo.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/sock/sockinfo.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -303,7 +303,9 @@ protected:
 	bool 			detach_receiver(flow_tuple_with_local_if &flow_key);
 	net_device_resources_t* create_nd_resources(const ip_address ip_local);
 	bool                    destroy_nd_resources(const ip_address ip_local);
-	void			do_rings_migration();
+	void			do_rings_migration(resource_allocation_key &old_key);
+	int			set_ring_attr(vma_ring_alloc_logic_attr *attr);
+	int			set_ring_attr_helper(ring_alloc_logic_attr *sock_attr, vma_ring_alloc_logic_attr *attr);
 
 	// Attach to all relevant rings for offloading receive flows - always used from slow path
 	// According to bounded information we need to attach to all UC relevant flows
diff -pruN 8.8.1-1/src/vma/sock/sockinfo_tcp.cpp 8.8.1.really.8.7.7-1/src/vma/sock/sockinfo_tcp.cpp
--- 8.8.1-1/src/vma/sock/sockinfo_tcp.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/sock/sockinfo_tcp.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -97,6 +97,7 @@ static bool is_inherited_option(int __le
 		case SO_RCVLOWAT:
 		case SO_SNDBUF:
 		case SO_SNDLOWAT:
+		case SO_VMA_RING_ALLOC_LOGIC:
 			ret = true;
 		}
 	} else if (__level == IPPROTO_TCP) {
@@ -3400,6 +3401,10 @@ int sockinfo_tcp::setsockopt(int __level
 	bool allow_privileged_sock_opt = false;
 
 	if ((ret = sockinfo::setsockopt(__level, __optname, __optval, __optlen)) != SOCKOPT_PASS_TO_OS) {
+		if (ret == SOCKOPT_INTERNAL_VMA_SUPPORT &&
+		    m_sock_state <= TCP_SOCK_ACCEPT_READY && __optval != NULL &&
+		    is_inherited_option(__level, __optname))
+			m_socket_options_list.push_back(new socket_option_t(__level, __optname,__optval, __optlen));
 		return ret;
 	}
 
@@ -4220,7 +4225,7 @@ void sockinfo_tcp::statistics_print(vlog
 				pcb.rcv_wnd_max, RCV_WND_SCALE(&pcb, pcb.rcv_wnd_max),  pcb.rcv_wnd_max_desired, RCV_WND_SCALE(&pcb, pcb.rcv_wnd_max_desired));
 
 		vlog_printf(log_level, "Send window : snd_wnd %u (%u), snd_wnd_max %u (%u)\n",
-				pcb.snd_wnd, RCV_WND_SCALE(&pcb, pcb.snd_wnd), pcb.snd_wnd_max, RCV_WND_SCALE(&pcb, pcb.snd_wnd_max));
+				pcb.snd_wnd, (pcb.snd_wnd >> pcb.snd_scale), pcb.snd_wnd_max, (pcb.snd_wnd_max >> pcb.snd_scale));
 	} else {
 		vlog_printf(log_level, "Window scaling : DISABLED\n");
 
diff -pruN 8.8.1-1/src/vma/sock/sockinfo_tcp.h 8.8.1.really.8.7.7-1/src/vma/sock/sockinfo_tcp.h
--- 8.8.1-1/src/vma/sock/sockinfo_tcp.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/sock/sockinfo_tcp.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/sock/sockinfo_udp.cpp 8.8.1.really.8.7.7-1/src/vma/sock/sockinfo_udp.cpp
--- 8.8.1-1/src/vma/sock/sockinfo_udp.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/sock/sockinfo_udp.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -678,42 +678,6 @@ int sockinfo_udp::on_sockname_change(str
 	return 0;
 }
 
-int sockinfo_udp::set_ring_attr(vma_ring_alloc_logic_attr *attr)
-{
-	if ((attr->comp_mask & VMA_RING_ALLOC_MASK_RING_ENGRESS) && attr->engress) {
-		if (set_ring_attr_helper(&m_ring_alloc_log_tx, attr)) {
-			return -1;
-		}
-	}
-	if ((attr->comp_mask & VMA_RING_ALLOC_MASK_RING_INGRESS) && attr->ingress) {
-		if (set_ring_attr_helper(&m_ring_alloc_log_rx, attr)) {
-			return -1;
-		}
-		m_ring_alloc_logic = ring_allocation_logic_rx(get_fd(), m_ring_alloc_log_rx, this);
-	}
-	return 0;
-}
-
-int sockinfo_udp::set_ring_attr_helper(ring_alloc_logic_attr *sock_attr,
-					vma_ring_alloc_logic_attr *user_attr)
-{
-	if (user_attr->comp_mask & VMA_RING_ALLOC_MASK_RING_PROFILE_KEY) {
-		if (sock_attr->get_ring_profile_key()) {
-			si_udp_logdbg("ring_profile_key is already set and "
-				      "cannot be changed");
-			return -1;
-		}
-		sock_attr->set_ring_profile_key(user_attr->ring_profile_key);
-	}
-	
-	sock_attr->set_ring_alloc_logic(user_attr->ring_alloc_logic);
-
-	if (user_attr->comp_mask & VMA_RING_ALLOC_MASK_RING_USER_ID) {
-		sock_attr->set_user_id_key(user_attr->user_id);
-	}
-	return 0;
-}
-
 ////////////////////////////////////////////////////////////////////////////////
 int sockinfo_udp::setsockopt(int __level, int __optname, __const void *__optval, socklen_t __optlen)
 {
@@ -810,23 +774,6 @@ int sockinfo_udp::setsockopt(int __level
 				}
 				else {
 					si_udp_logdbg("SOL_SOCKET, %s=\"???\" - NOT HANDLED, optval == NULL", setsockopt_so_opt_to_str(__optname));
-				}
-				break;
-			case SO_VMA_RING_ALLOC_LOGIC:
-				if (__optval) {
-					if (__optlen == sizeof(vma_ring_alloc_logic_attr)) {
-						vma_ring_alloc_logic_attr *attr = (vma_ring_alloc_logic_attr *)__optval;
-						return set_ring_attr(attr);
-					}
-					else {
-						si_udp_logdbg("SOL_SOCKET, %s=\"???\" - bad length expected %d got %d",
-							      setsockopt_so_opt_to_str(__optname),
-							      sizeof(vma_ring_alloc_logic_attr), __optlen);
-						break;
-					}
-				}
-				else {
-					si_udp_logdbg("SOL_SOCKET, %s=\"???\" - NOT HANDLED, optval == NULL", setsockopt_so_opt_to_str(__optname));
 				}
 				break;
 			case SO_MAX_PACING_RATE:
diff -pruN 8.8.1-1/src/vma/sock/sockinfo_udp.h 8.8.1.really.8.7.7-1/src/vma/sock/sockinfo_udp.h
--- 8.8.1-1/src/vma/sock/sockinfo_udp.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/sock/sockinfo_udp.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -245,9 +245,6 @@ private:
 	int on_sockname_change(struct sockaddr *__name, socklen_t __namelen);
 	void handle_pending_mreq();
 	void original_os_setsockopt_helper( void* pram, int pram_size, int optname);
-	int set_ring_attr(vma_ring_alloc_logic_attr *attr);
-	int set_ring_attr_helper(ring_alloc_logic_attr *sock_attr,
-				  vma_ring_alloc_logic_attr *attr);
 	/* helper functions */
 	void 		set_blocking(bool is_blocked);
 
diff -pruN 8.8.1-1/src/vma/sock/sock-redirect.cpp 8.8.1.really.8.7.7-1/src/vma/sock/sock-redirect.cpp
--- 8.8.1-1/src/vma/sock/sock-redirect.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/sock/sock-redirect.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -84,6 +84,7 @@ using namespace std;
 
 struct os_api orig_os_api;
 struct sigaction g_act_prev;
+sighandler_t g_sighandler = NULL;
 class ring_simple;
 class ring_eth_cb;
 class ring_eth_direct;
@@ -176,6 +177,7 @@ void get_orig_funcs()
 	GET_ORIG_FUNC(vfork);
 	GET_ORIG_FUNC(daemon);
 	GET_ORIG_FUNC(sigaction);
+	GET_ORIG_FUNC(signal);
 }
 
 const char* socket_get_domain_str(int domain)
@@ -2536,3 +2538,34 @@ int sigaction(int signum, const struct s
 	}
 	return ret;
 }
+
+static void handle_signal(int signum)
+{
+	srdr_logdbg_entry("Caught signal! signum=%d", signum);
+
+	if (signum == SIGINT) {
+		g_b_exit = true;
+	}
+
+	if (g_sighandler) {
+		g_sighandler(signum);
+	}
+}
+
+extern "C"
+sighandler_t signal(int signum, sighandler_t handler)
+{
+	srdr_logdbg_entry("signum=%d, handler=%p", signum, handler);
+
+	if (!orig_os_api.signal) get_orig_funcs();
+
+	if (handler && handler != SIG_ERR && handler != SIG_DFL && handler != SIG_IGN) {
+		// Only SIGINT is supported for now
+		if (signum == SIGINT) {
+			g_sighandler = handler;
+			return orig_os_api.signal(SIGINT, &handle_signal);
+		}
+	}
+
+	return orig_os_api.signal(signum, handler);
+}
diff -pruN 8.8.1-1/src/vma/sock/sock-redirect.h 8.8.1.really.8.7.7-1/src/vma/sock/sock-redirect.h
--- 8.8.1-1/src/vma/sock/sock-redirect.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/sock/sock-redirect.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -159,6 +159,7 @@ struct os_api {
 	int (*daemon) (int __nochdir, int __noclose);
 
 	int (*sigaction) (int signum, const struct sigaction *act, struct sigaction *oldact);
+	sighandler_t (*signal) (int signum, sighandler_t handler);
 };
 
 /**
diff -pruN 8.8.1-1/src/vma/util/agent.cpp 8.8.1.really.8.7.7-1/src/vma/util/agent.cpp
--- 8.8.1-1/src/vma/util/agent.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/agent.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/agent_def.h 8.8.1.really.8.7.7-1/src/vma/util/agent_def.h
--- 8.8.1-1/src/vma/util/agent_def.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/agent_def.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/agent.h 8.8.1.really.8.7.7-1/src/vma/util/agent.h
--- 8.8.1-1/src/vma/util/agent.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/agent.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/chunk_list.h 8.8.1.really.8.7.7-1/src/vma/util/chunk_list.h
--- 8.8.1-1/src/vma/util/chunk_list.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/chunk_list.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/data_updater.cpp 8.8.1.really.8.7.7-1/src/vma/util/data_updater.cpp
--- 8.8.1-1/src/vma/util/data_updater.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/data_updater.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -79,3 +79,22 @@ bool header_tos_updater::update_field(ds
 	return true;
 }
 
+ring_alloc_logic_updater::ring_alloc_logic_updater(int fd, lock_base & socket_lock,
+						   resource_allocation_key & ring_alloc_logic,
+						   socket_stats_t* socket_stats)
+	: data_updater()
+	, m_fd(fd)
+	, m_socket_lock(socket_lock)
+	, m_key(ring_alloc_logic)
+	, m_sock_stats(socket_stats)
+{
+
+}
+
+bool ring_alloc_logic_updater::update_field(dst_entry &dst)
+{
+	if (dst.update_ring_alloc_logic(m_fd, m_socket_lock, m_key))
+		m_sock_stats->counters.n_tx_migrations++;
+
+	return true;
+}
diff -pruN 8.8.1-1/src/vma/util/data_updater.h 8.8.1.really.8.7.7-1/src/vma/util/data_updater.h
--- 8.8.1-1/src/vma/util/data_updater.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/data_updater.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -69,4 +69,18 @@ public:
 private:
     uint8_t m_tos;
 };
+
+class ring_alloc_logic_updater: public data_updater {
+public:
+    ring_alloc_logic_updater(int fd, lock_base & socket_lock,
+    			     resource_allocation_key & ring_alloc_logic,
+			     socket_stats_t* socket_stats);
+    virtual ~ring_alloc_logic_updater() {};
+    virtual bool update_field(dst_entry &hdr);
+private:
+    int m_fd;
+    lock_base & m_socket_lock;
+    resource_allocation_key & m_key;
+    socket_stats_t* m_sock_stats;
+};
 #endif /* SRC_VMA_UTIL_DATA_UPDATER_H_ */
diff -pruN 8.8.1-1/src/vma/util/hash_map.h 8.8.1.really.8.7.7-1/src/vma/util/hash_map.h
--- 8.8.1-1/src/vma/util/hash_map.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/hash_map.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/hash_map.inl 8.8.1.really.8.7.7-1/src/vma/util/hash_map.inl
--- 8.8.1-1/src/vma/util/hash_map.inl	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/hash_map.inl	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/if.h 8.8.1.really.8.7.7-1/src/vma/util/if.h
--- 8.8.1-1/src/vma/util/if.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/if.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/instrumentation.cpp 8.8.1.really.8.7.7-1/src/vma/util/instrumentation.cpp
--- 8.8.1-1/src/vma/util/instrumentation.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/instrumentation.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/instrumentation.h 8.8.1.really.8.7.7-1/src/vma/util/instrumentation.h
--- 8.8.1-1/src/vma/util/instrumentation.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/instrumentation.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/libvma.h 8.8.1.really.8.7.7-1/src/vma/util/libvma.h
--- 8.8.1-1/src/vma/util/libvma.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/libvma.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/match.cpp 8.8.1.really.8.7.7-1/src/vma/util/match.cpp
--- 8.8.1-1/src/vma/util/match.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/match.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/sg_array.h 8.8.1.really.8.7.7-1/src/vma/util/sg_array.h
--- 8.8.1-1/src/vma/util/sg_array.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/sg_array.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/sock_addr.h 8.8.1.really.8.7.7-1/src/vma/util/sock_addr.h
--- 8.8.1-1/src/vma/util/sock_addr.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/sock_addr.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/sysctl_reader.h 8.8.1.really.8.7.7-1/src/vma/util/sysctl_reader.h
--- 8.8.1-1/src/vma/util/sysctl_reader.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/sysctl_reader.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/sys_vars.cpp 8.8.1.really.8.7.7-1/src/vma/util/sys_vars.cpp
--- 8.8.1-1/src/vma/util/sys_vars.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/sys_vars.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/sys_vars.h 8.8.1.really.8.7.7-1/src/vma/util/sys_vars.h
--- 8.8.1-1/src/vma/util/sys_vars.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/sys_vars.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/to_str.h 8.8.1.really.8.7.7-1/src/vma/util/to_str.h
--- 8.8.1-1/src/vma/util/to_str.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/to_str.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/utils.cpp 8.8.1.really.8.7.7-1/src/vma/util/utils.cpp
--- 8.8.1-1/src/vma/util/utils.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/utils.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -163,6 +163,27 @@ int get_base_interface_name(const char *
 	return 0;
 }
 
+void print_roce_lag_warnings(char* interface, char* disable_path /* = NULL */, const char* port1 /* = NULL */, const char* port2 /* = NULL */)
+{
+	vlog_printf(VLOG_WARNING,"******************************************************************************************************\n");
+
+	if (port1 && port2) {
+		vlog_printf(VLOG_WARNING,"* Bond %s has two slaves of the same device while RoCE LAG is enabled (%s, %s).\n", interface, port1, port2);
+		vlog_printf(VLOG_WARNING,"* Unexpected behaviour may occur during runtime.\n");
+	} else {
+		vlog_printf(VLOG_WARNING,"* Interface %s will not be offloaded.\n", interface);
+		vlog_printf(VLOG_WARNING,"* VMA cannot offload the device while RoCE LAG is enabled.\n");
+	}
+
+	vlog_printf(VLOG_WARNING,"* Please refer to VMA Release Notes for more info\n");
+
+	if (disable_path) {
+		vlog_printf(VLOG_WARNING,"* In order to disable RoCE LAG please use:\n");
+		vlog_printf(VLOG_WARNING,"* echo 0 > %s\n", disable_path);
+	}
+	vlog_printf(VLOG_WARNING,"******************************************************************************************************\n");
+}
+
 void compute_tx_checksum(mem_buf_desc_t* p_mem_buf_desc, bool l3_csum, bool l4_csum)
 {
 	// L3
@@ -718,8 +739,13 @@ int run_and_retreive_system_command(cons
 				return_str[0] = '\0';
 			}
 		}
+
 		// Check exit status code
 		rc = pclose(file);
+		if (rc == -1 && errno == ECHILD) {
+			/* suppress a case when termination status can be unavailable to pclose() */
+			rc = 0;
+		}
 
 		for (int i = 0; environ[i]; i++) {
 			if (strstr(environ[i], "_D_PRELOAD=")) {
diff -pruN 8.8.1-1/src/vma/util/utils.h 8.8.1.really.8.7.7-1/src/vma/util/utils.h
--- 8.8.1-1/src/vma/util/utils.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/utils.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -298,6 +298,9 @@ size_t get_vlan_base_name_from_ifname(co
 /* Upon success - returns the actual address len in bytes; Upon error - returns zero*/
 size_t get_local_ll_addr(const char* ifname, unsigned char* addr, int addr_len,  bool is_broadcast);
 
+/* Print warning while RoCE Lag is enabled */
+void print_roce_lag_warnings(char* interface, char* disable_path = NULL, const char* port1 = NULL, const char* port2 = NULL);
+
 bool get_bond_active_slave_name(IN const char* bond_name, OUT char* active_slave_name, IN int sz);
 bool get_bond_slave_state(IN const char* slave_name, OUT char* curr_state, IN int sz);
 bool get_bond_slaves_name_list(IN const char* bond_name, OUT char* slaves_list, IN int sz);
diff -pruN 8.8.1-1/src/vma/util/valgrind.h 8.8.1.really.8.7.7-1/src/vma/util/valgrind.h
--- 8.8.1-1/src/vma/util/valgrind.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/valgrind.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/vma_list.h 8.8.1.really.8.7.7-1/src/vma/util/vma_list.h
--- 8.8.1-1/src/vma/util/vma_list.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/vma_list.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/vma_stats.h 8.8.1.really.8.7.7-1/src/vma/util/vma_stats.h
--- 8.8.1-1/src/vma/util/vma_stats.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/vma_stats.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -42,6 +42,7 @@
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <vlogger/vlogger.h>
+#include <vma/vma_extra.h>
 
 #define NUM_OF_SUPPORTED_CQS                        16
 #define NUM_OF_SUPPORTED_RINGS                      16
@@ -188,6 +189,10 @@ typedef struct {
 	uint32_t                     n_tx_ready_byte_count;
 	socket_counters_t            counters;
 	std::bitset<MC_TABLE_SIZE>   mc_grp_map;
+	ring_logic_t                 ring_alloc_logic_rx;
+	ring_logic_t                 ring_alloc_logic_tx;
+	uint64_t                     ring_user_id_rx;
+	uint64_t                     ring_user_id_tx;
 
 	void reset() {
 		fd = 0;
@@ -200,6 +205,8 @@ typedef struct {
 		n_rx_ready_pkt_count = n_rx_ready_byte_count = n_rx_ready_byte_limit = n_rx_zcopy_pkt_count = n_tx_ready_byte_count = 0;
 		memset(&counters, 0, sizeof(counters));
 		mc_grp_map.reset();
+		ring_user_id_rx = ring_user_id_tx = 0;
+		ring_alloc_logic_rx = ring_alloc_logic_tx = RING_LOGIC_PER_INTERFACE;
 	};
 } socket_stats_t;
 
diff -pruN 8.8.1-1/src/vma/util/vtypes.h 8.8.1.really.8.7.7-1/src/vma/util/vtypes.h
--- 8.8.1-1/src/vma/util/vtypes.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/vtypes.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/wakeup.cpp 8.8.1.really.8.7.7-1/src/vma/util/wakeup.cpp
--- 8.8.1-1/src/vma/util/wakeup.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/wakeup.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/wakeup.h 8.8.1.really.8.7.7-1/src/vma/util/wakeup.h
--- 8.8.1-1/src/vma/util/wakeup.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/wakeup.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/wakeup_pipe.cpp 8.8.1.really.8.7.7-1/src/vma/util/wakeup_pipe.cpp
--- 8.8.1-1/src/vma/util/wakeup_pipe.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/wakeup_pipe.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/util/wakeup_pipe.h 8.8.1.really.8.7.7-1/src/vma/util/wakeup_pipe.h
--- 8.8.1-1/src/vma/util/wakeup_pipe.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/util/wakeup_pipe.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/src/vma/vma_extra.h 8.8.1.really.8.7.7-1/src/vma/vma_extra.h
--- 8.8.1-1/src/vma/vma_extra.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/src/vma/vma_extra.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/api-support-check.py 8.8.1.really.8.7.7-1/tests/api-support-check.py
--- 8.8.1-1/tests/api-support-check.py	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/api-support-check.py	2019-01-30 12:11:38.000000000 +0000
@@ -1,7 +1,7 @@
 #!/usr/bin/env python
 #
 #@copyright:
-#        Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+#        Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
 #
 #        This software is available to you under a choice of one of two
 #        licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/async-echo-client/async-echo-client.py 8.8.1.really.8.7.7-1/tests/async-echo-client/async-echo-client.py
--- 8.8.1-1/tests/async-echo-client/async-echo-client.py	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/async-echo-client/async-echo-client.py	2019-01-30 12:11:38.000000000 +0000
@@ -2,7 +2,7 @@
 #
 #
 #@copyright:
-#        Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+#        Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
 #
 #        This software is available to you under a choice of one of two
 #        licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/async-echo-client/syncronized-echo-client.py 8.8.1.really.8.7.7-1/tests/async-echo-client/syncronized-echo-client.py
--- 8.8.1-1/tests/async-echo-client/syncronized-echo-client.py	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/async-echo-client/syncronized-echo-client.py	2019-01-30 12:11:38.000000000 +0000
@@ -2,7 +2,7 @@
 #
 #
 #@copyright:
-#        Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+#        Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
 #
 #        This software is available to you under a choice of one of two
 #        licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/bindtodevice/client.py 8.8.1.really.8.7.7-1/tests/bindtodevice/client.py
--- 8.8.1-1/tests/bindtodevice/client.py	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/bindtodevice/client.py	2019-01-30 12:11:38.000000000 +0000
@@ -2,7 +2,7 @@
 #
 #
 #@copyright:
-#        Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+#        Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
 #
 #        This software is available to you under a choice of one of two
 #        licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/connect-disconnect/client.py 8.8.1.really.8.7.7-1/tests/connect-disconnect/client.py
--- 8.8.1-1/tests/connect-disconnect/client.py	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/connect-disconnect/client.py	2019-01-30 12:11:38.000000000 +0000
@@ -2,7 +2,7 @@
 #
 #
 #@copyright:
-#        Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+#        Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
 #
 #        This software is available to you under a choice of one of two
 #        licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/common/base.cc 8.8.1.really.8.7.7-1/tests/gtest/common/base.cc
--- 8.8.1-1/tests/gtest/common/base.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/common/base.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/common/base.h 8.8.1.really.8.7.7-1/tests/gtest/common/base.h
--- 8.8.1-1/tests/gtest/common/base.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/common/base.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/common/cmn.h 8.8.1.really.8.7.7-1/tests/gtest/common/cmn.h
--- 8.8.1-1/tests/gtest/common/cmn.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/common/cmn.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/common/def.h 8.8.1.really.8.7.7-1/tests/gtest/common/def.h
--- 8.8.1-1/tests/gtest/common/def.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/common/def.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/common/log.h 8.8.1.really.8.7.7-1/tests/gtest/common/log.h
--- 8.8.1-1/tests/gtest/common/log.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/common/log.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/common/sys.cc 8.8.1.really.8.7.7-1/tests/gtest/common/sys.cc
--- 8.8.1-1/tests/gtest/common/sys.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/common/sys.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/common/sys.h 8.8.1.really.8.7.7-1/tests/gtest/common/sys.h
--- 8.8.1-1/tests/gtest/common/sys.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/common/sys.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/main.cc 8.8.1.really.8.7.7-1/tests/gtest/main.cc
--- 8.8.1-1/tests/gtest/main.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/main.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/mix/mix_base.cc 8.8.1.really.8.7.7-1/tests/gtest/mix/mix_base.cc
--- 8.8.1-1/tests/gtest/mix/mix_base.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/mix/mix_base.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/mix/mix_base.h 8.8.1.really.8.7.7-1/tests/gtest/mix/mix_base.h
--- 8.8.1-1/tests/gtest/mix/mix_base.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/mix/mix_base.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/mix/mix_list.cc 8.8.1.really.8.7.7-1/tests/gtest/mix/mix_list.cc
--- 8.8.1-1/tests/gtest/mix/mix_list.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/mix/mix_list.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/mix/sg_array.cc 8.8.1.really.8.7.7-1/tests/gtest/mix/sg_array.cc
--- 8.8.1-1/tests/gtest/mix/sg_array.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/mix/sg_array.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/sock/sock_base.cc 8.8.1.really.8.7.7-1/tests/gtest/sock/sock_base.cc
--- 8.8.1-1/tests/gtest/sock/sock_base.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/sock/sock_base.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/sock/sock_base.h 8.8.1.really.8.7.7-1/tests/gtest/sock/sock_base.h
--- 8.8.1-1/tests/gtest/sock/sock_base.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/sock/sock_base.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/sock/sock_socket.cc 8.8.1.really.8.7.7-1/tests/gtest/sock/sock_socket.cc
--- 8.8.1-1/tests/gtest/sock/sock_socket.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/sock/sock_socket.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/tcp/tcp_base.cc 8.8.1.really.8.7.7-1/tests/gtest/tcp/tcp_base.cc
--- 8.8.1-1/tests/gtest/tcp/tcp_base.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/tcp/tcp_base.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/tcp/tcp_base.h 8.8.1.really.8.7.7-1/tests/gtest/tcp/tcp_base.h
--- 8.8.1-1/tests/gtest/tcp/tcp_base.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/tcp/tcp_base.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/tcp/tcp_bind.cc 8.8.1.really.8.7.7-1/tests/gtest/tcp/tcp_bind.cc
--- 8.8.1-1/tests/gtest/tcp/tcp_bind.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/tcp/tcp_bind.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/tcp/tcp_connect.cc 8.8.1.really.8.7.7-1/tests/gtest/tcp/tcp_connect.cc
--- 8.8.1-1/tests/gtest/tcp/tcp_connect.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/tcp/tcp_connect.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/tcp/tcp_connect_nb.cc 8.8.1.really.8.7.7-1/tests/gtest/tcp/tcp_connect_nb.cc
--- 8.8.1-1/tests/gtest/tcp/tcp_connect_nb.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/tcp/tcp_connect_nb.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/tcp/tcp_event.cc 8.8.1.really.8.7.7-1/tests/gtest/tcp/tcp_event.cc
--- 8.8.1-1/tests/gtest/tcp/tcp_event.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/tcp/tcp_event.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/tcp/tcp_send.cc 8.8.1.really.8.7.7-1/tests/gtest/tcp/tcp_send.cc
--- 8.8.1-1/tests/gtest/tcp/tcp_send.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/tcp/tcp_send.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/tcp/tcp_sendto.cc 8.8.1.really.8.7.7-1/tests/gtest/tcp/tcp_sendto.cc
--- 8.8.1-1/tests/gtest/tcp/tcp_sendto.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/tcp/tcp_sendto.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/tcp/tcp_socket.cc 8.8.1.really.8.7.7-1/tests/gtest/tcp/tcp_socket.cc
--- 8.8.1-1/tests/gtest/tcp/tcp_socket.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/tcp/tcp_socket.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/udp/udp_base.cc 8.8.1.really.8.7.7-1/tests/gtest/udp/udp_base.cc
--- 8.8.1-1/tests/gtest/udp/udp_base.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/udp/udp_base.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/udp/udp_base.h 8.8.1.really.8.7.7-1/tests/gtest/udp/udp_base.h
--- 8.8.1-1/tests/gtest/udp/udp_base.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/udp/udp_base.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/udp/udp_bind.cc 8.8.1.really.8.7.7-1/tests/gtest/udp/udp_bind.cc
--- 8.8.1-1/tests/gtest/udp/udp_bind.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/udp/udp_bind.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/udp/udp_send.cc 8.8.1.really.8.7.7-1/tests/gtest/udp/udp_send.cc
--- 8.8.1-1/tests/gtest/udp/udp_send.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/udp/udp_send.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/udp/udp_sendto.cc 8.8.1.really.8.7.7-1/tests/gtest/udp/udp_sendto.cc
--- 8.8.1-1/tests/gtest/udp/udp_sendto.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/udp/udp_sendto.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/vma/vma_base.cc 8.8.1.really.8.7.7-1/tests/gtest/vma/vma_base.cc
--- 8.8.1-1/tests/gtest/vma/vma_base.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/vma/vma_base.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/vma/vma_base.h 8.8.1.really.8.7.7-1/tests/gtest/vma/vma_base.h
--- 8.8.1-1/tests/gtest/vma/vma_base.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/vma/vma_base.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/vma/vma_poll.cc 8.8.1.really.8.7.7-1/tests/gtest/vma/vma_poll.cc
--- 8.8.1-1/tests/gtest/vma/vma_poll.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/vma/vma_poll.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/vma/vma_ring.cc 8.8.1.really.8.7.7-1/tests/gtest/vma/vma_ring.cc
--- 8.8.1-1/tests/gtest/vma/vma_ring.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/vma/vma_ring.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/vmad/vmad_base.cc 8.8.1.really.8.7.7-1/tests/gtest/vmad/vmad_base.cc
--- 8.8.1-1/tests/gtest/vmad/vmad_base.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/vmad/vmad_base.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/vmad/vmad_base.h 8.8.1.really.8.7.7-1/tests/gtest/vmad/vmad_base.h
--- 8.8.1-1/tests/gtest/vmad/vmad_base.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/vmad/vmad_base.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/vmad/vmad_bitmap.cc 8.8.1.really.8.7.7-1/tests/gtest/vmad/vmad_bitmap.cc
--- 8.8.1-1/tests/gtest/vmad/vmad_bitmap.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/vmad/vmad_bitmap.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/vmad/vmad_flow.cc 8.8.1.really.8.7.7-1/tests/gtest/vmad/vmad_flow.cc
--- 8.8.1-1/tests/gtest/vmad/vmad_flow.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/vmad/vmad_flow.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/vmad/vmad_hash.cc 8.8.1.really.8.7.7-1/tests/gtest/vmad/vmad_hash.cc
--- 8.8.1-1/tests/gtest/vmad/vmad_hash.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/vmad/vmad_hash.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/vmad/vmad_init.cc 8.8.1.really.8.7.7-1/tests/gtest/vmad/vmad_init.cc
--- 8.8.1-1/tests/gtest/vmad/vmad_init.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/vmad/vmad_init.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/gtest/vmad/vmad_state.cc 8.8.1.really.8.7.7-1/tests/gtest/vmad/vmad_state.cc
--- 8.8.1-1/tests/gtest/vmad/vmad_state.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/gtest/vmad/vmad_state.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/latency_test/tcp_lat.cpp 8.8.1.really.8.7.7-1/tests/latency_test/tcp_lat.cpp
--- 8.8.1-1/tests/latency_test/tcp_lat.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/latency_test/tcp_lat.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/latency_test/udp_lat.c 8.8.1.really.8.7.7-1/tests/latency_test/udp_lat.c
--- 8.8.1-1/tests/latency_test/udp_lat.c	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/latency_test/udp_lat.c	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/low_pps_tcp_send_test/exchange.cpp 8.8.1.really.8.7.7-1/tests/low_pps_tcp_send_test/exchange.cpp
--- 8.8.1-1/tests/low_pps_tcp_send_test/exchange.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/low_pps_tcp_send_test/exchange.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/low_pps_tcp_send_test/trader.cpp 8.8.1.really.8.7.7-1/tests/low_pps_tcp_send_test/trader.cpp
--- 8.8.1-1/tests/low_pps_tcp_send_test/trader.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/low_pps_tcp_send_test/trader.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/mc_loop_test/mc_loop_test.c 8.8.1.really.8.7.7-1/tests/mc_loop_test/mc_loop_test.c
--- 8.8.1-1/tests/mc_loop_test/mc_loop_test.c	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/mc_loop_test/mc_loop_test.c	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/pps_test/pps_test.c 8.8.1.really.8.7.7-1/tests/pps_test/pps_test.c
--- 8.8.1-1/tests/pps_test/pps_test.c	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/pps_test/pps_test.c	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/resource_release_checker/server_socket_receive_and_recreate_loop.py 8.8.1.really.8.7.7-1/tests/resource_release_checker/server_socket_receive_and_recreate_loop.py
--- 8.8.1-1/tests/resource_release_checker/server_socket_receive_and_recreate_loop.py	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/resource_release_checker/server_socket_receive_and_recreate_loop.py	2019-01-30 12:11:38.000000000 +0000
@@ -2,7 +2,7 @@
 #
 #
 #@copyright:
-#        Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+#        Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
 #
 #        This software is available to you under a choice of one of two
 #        licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/resource_release_checker/server_socket_recreate_loop.py 8.8.1.really.8.7.7-1/tests/resource_release_checker/server_socket_recreate_loop.py
--- 8.8.1-1/tests/resource_release_checker/server_socket_recreate_loop.py	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/resource_release_checker/server_socket_recreate_loop.py	2019-01-30 12:11:38.000000000 +0000
@@ -2,7 +2,7 @@
 #
 #
 #@copyright:
-#        Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+#        Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
 #
 #        This software is available to you under a choice of one of two
 #        licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/server_test/client.cc 8.8.1.really.8.7.7-1/tests/server_test/client.cc
--- 8.8.1-1/tests/server_test/client.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/server_test/client.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/server_test/client.h 8.8.1.really.8.7.7-1/tests/server_test/client.h
--- 8.8.1-1/tests/server_test/client.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/server_test/client.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/server_test/main.cc 8.8.1.really.8.7.7-1/tests/server_test/main.cc
--- 8.8.1-1/tests/server_test/main.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/server_test/main.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/server_test/options.cc 8.8.1.really.8.7.7-1/tests/server_test/options.cc
--- 8.8.1-1/tests/server_test/options.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/server_test/options.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/server_test/options.h 8.8.1.really.8.7.7-1/tests/server_test/options.h
--- 8.8.1-1/tests/server_test/options.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/server_test/options.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/server_test/server.cc 8.8.1.really.8.7.7-1/tests/server_test/server.cc
--- 8.8.1-1/tests/server_test/server.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/server_test/server.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/server_test/server.h 8.8.1.really.8.7.7-1/tests/server_test/server.h
--- 8.8.1-1/tests/server_test/server.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/server_test/server.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/server_test/vtime.cc 8.8.1.really.8.7.7-1/tests/server_test/vtime.cc
--- 8.8.1-1/tests/server_test/vtime.cc	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/server_test/vtime.cc	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/server_test/vtime.h 8.8.1.really.8.7.7-1/tests/server_test/vtime.h
--- 8.8.1-1/tests/server_test/vtime.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/server_test/vtime.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/tcp_window_size_exerciser/tcp_wnd_test_client.c 8.8.1.really.8.7.7-1/tests/tcp_window_size_exerciser/tcp_wnd_test_client.c
--- 8.8.1-1/tests/tcp_window_size_exerciser/tcp_wnd_test_client.c	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/tcp_window_size_exerciser/tcp_wnd_test_client.c	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/tcp_window_size_exerciser/tcp_wnd_test.h 8.8.1.really.8.7.7-1/tests/tcp_window_size_exerciser/tcp_wnd_test.h
--- 8.8.1-1/tests/tcp_window_size_exerciser/tcp_wnd_test.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/tcp_window_size_exerciser/tcp_wnd_test.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/tcp_window_size_exerciser/tcp_wnd_test_server.c 8.8.1.really.8.7.7-1/tests/tcp_window_size_exerciser/tcp_wnd_test_server.c
--- 8.8.1-1/tests/tcp_window_size_exerciser/tcp_wnd_test_server.c	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/tcp_window_size_exerciser/tcp_wnd_test_server.c	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/throughput_test/bandwidth_test.c 8.8.1.really.8.7.7-1/tests/throughput_test/bandwidth_test.c
--- 8.8.1-1/tests/throughput_test/bandwidth_test.c	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/throughput_test/bandwidth_test.c	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/vma_perf_envelope/vma_multiplexers_test.sh 8.8.1.really.8.7.7-1/tests/vma_perf_envelope/vma_multiplexers_test.sh
--- 8.8.1-1/tests/vma_perf_envelope/vma_multiplexers_test.sh	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/vma_perf_envelope/vma_multiplexers_test.sh	2019-01-30 12:11:38.000000000 +0000
@@ -1,6 +1,6 @@
 #!/bin/bash
 
-# Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+# Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
 #
 # This software is available to you under a choice of one of two
 # licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tests/vma_perf_envelope/vma_perf_envelope.sh 8.8.1.really.8.7.7-1/tests/vma_perf_envelope/vma_perf_envelope.sh
--- 8.8.1-1/tests/vma_perf_envelope/vma_perf_envelope.sh	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tests/vma_perf_envelope/vma_perf_envelope.sh	2019-01-30 12:11:38.000000000 +0000
@@ -1,6 +1,6 @@
 #!/bin/bash
 
-# Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+# Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
 #
 # This software is available to you under a choice of one of two
 # licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tools/daemon/bitmap.h 8.8.1.really.8.7.7-1/tools/daemon/bitmap.h
--- 8.8.1-1/tools/daemon/bitmap.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tools/daemon/bitmap.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tools/daemon/daemon.c 8.8.1.really.8.7.7-1/tools/daemon/daemon.c
--- 8.8.1-1/tools/daemon/daemon.c	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tools/daemon/daemon.c	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tools/daemon/daemon.h 8.8.1.really.8.7.7-1/tools/daemon/daemon.h
--- 8.8.1-1/tools/daemon/daemon.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tools/daemon/daemon.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tools/daemon/flow.c 8.8.1.really.8.7.7-1/tools/daemon/flow.c
--- 8.8.1-1/tools/daemon/flow.c	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tools/daemon/flow.c	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tools/daemon/hash.c 8.8.1.really.8.7.7-1/tools/daemon/hash.c
--- 8.8.1-1/tools/daemon/hash.c	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tools/daemon/hash.c	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tools/daemon/hash.h 8.8.1.really.8.7.7-1/tools/daemon/hash.h
--- 8.8.1-1/tools/daemon/hash.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tools/daemon/hash.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tools/daemon/loop.c 8.8.1.really.8.7.7-1/tools/daemon/loop.c
--- 8.8.1-1/tools/daemon/loop.c	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tools/daemon/loop.c	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tools/daemon/message.c 8.8.1.really.8.7.7-1/tools/daemon/message.c
--- 8.8.1-1/tools/daemon/message.c	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tools/daemon/message.c	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tools/daemon/notify.c 8.8.1.really.8.7.7-1/tools/daemon/notify.c
--- 8.8.1-1/tools/daemon/notify.c	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tools/daemon/notify.c	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tools/daemon/store.c 8.8.1.really.8.7.7-1/tools/daemon/store.c
--- 8.8.1-1/tools/daemon/store.c	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tools/daemon/store.c	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tools/media/netmap-vma/netmap_vma.cpp 8.8.1.really.8.7.7-1/tools/media/netmap-vma/netmap_vma.cpp
--- 8.8.1-1/tools/media/netmap-vma/netmap_vma.cpp	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tools/media/netmap-vma/netmap_vma.cpp	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
diff -pruN 8.8.1-1/tools/media/netmap-vma/netmap_vma.h 8.8.1.really.8.7.7-1/tools/media/netmap-vma/netmap_vma.h
--- 8.8.1-1/tools/media/netmap-vma/netmap_vma.h	2018-12-26 13:49:18.000000000 +0000
+++ 8.8.1.really.8.7.7-1/tools/media/netmap-vma/netmap_vma.h	2019-01-30 12:11:38.000000000 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001-2018 Mellanox Technologies, Ltd. All rights reserved.
+ * Copyright (c) 2001-2019 Mellanox Technologies, Ltd. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
