diff options
author | Mohsin Kazmi <sykazmi@cisco.com> | 2018-04-05 14:43:43 +0200 |
---|---|---|
committer | Damjan Marion <dmarion.lists@gmail.com> | 2018-04-12 11:08:07 +0000 |
commit | 58c711a196d9b178bfe6190964a7df92145cf949 (patch) | |
tree | 8b74a2905be3ee2e452cf4eb3e591616f808c673 /src/vpp-api/vom/interface.cpp | |
parent | 7fe930b73f28bb62c26a4bfbe3871d684c045706 (diff) |
vom: Fix the itf stats replay
Change-Id: Iedc6bbaa1c0a1c3c6e1b8ed6d67db28046a551f4
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Diffstat (limited to 'src/vpp-api/vom/interface.cpp')
-rw-r--r-- | src/vpp-api/vom/interface.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/vpp-api/vom/interface.cpp b/src/vpp-api/vom/interface.cpp index 435002a1067..262d9eaf7b6 100644 --- a/src/vpp-api/vom/interface.cpp +++ b/src/vpp-api/vom/interface.cpp @@ -169,6 +169,10 @@ interface::sweep() } if (m_stats) { + if (stats_type_t::DETAILED == m_stats_type) { + HW::enqueue(new interface_cmds::collect_detail_stats_change_cmd( + m_stats_type, handle_i(), false)); + } HW::enqueue(new interface_cmds::stats_disable_cmd(m_hdl.data())); m_stats.reset(); } @@ -198,6 +202,18 @@ interface::replay() HW::enqueue(new interface_cmds::state_change_cmd(m_state, m_hdl)); } + if (m_stats) { + if (stats_type_t::DETAILED == m_stats_type) { + m_stats_type.set(rc_t::NOOP); + HW::enqueue(new interface_cmds::collect_detail_stats_change_cmd( + m_stats_type, handle_i(), true)); + } + stat_listener& listener = m_stats->listener(); + listener.status().set(rc_t::NOOP); + m_stats.reset(new interface_cmds::stats_enable_cmd(listener, handle_i())); + HW::enqueue(m_stats); + } + if (m_table_id && (m_table_id.data() != route::DEFAULT_TABLE)) { HW::enqueue( new interface_cmds::set_table_cmd(m_table_id, l3_proto_t::IPV4, m_hdl)); |