BGPaaS: Agent crash @ BgpAsAServiceFlowMgmtTree::GetCNIndex

Bug #1607868 reported by amit surana
20
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Juniper Openstack
Status tracked in Trunk
R3.0
Fix Committed
High
Manish Singh
R3.0.3.x
Fix Committed
High
Manish Singh
R3.1
Fix Committed
High
Manish Singh
Trunk
Fix Committed
High
Manish Singh

Bug Description

3.1b6

core at: 10.87.5.39:/cs-shared/bugs/<bug-id>/

[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `/usr/bin/contrail-vrouter-agent'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x0000000000ccdf67 in BgpAsAServiceFlowMgmtTree::GetCNIndex(FlowEntry const*) ()
#0 0x0000000000ccdf67 in BgpAsAServiceFlowMgmtTree::GetCNIndex(FlowEntry const*) ()
#1 0x0000000000cceb50 in FlowMgmtManager::MakeFlowMgmtKeyTree(FlowEntry*, std::map<FlowMgmtKey*, FlowMgmtKeyNode*, FlowMgmtKeyCmp, std::allocator<std::pair<FlowMgmtKey* const, FlowMgmtKeyNode*> > >*) ()
#2 0x0000000000cd2c5f in FlowMgmtManager::AddFlow(boost::intrusive_ptr<FlowEntry>&) ()
#3 0x0000000000cd30e1 in FlowMgmtManager::RequestHandler(boost::shared_ptr<FlowMgmtRequest>) ()
#4 0x0000000000cd539c in boost::detail::function::function_obj_invoker1<boost::_bi::bind_t<bool, boost::_mfi::mf1<bool, FlowMgmtManager, boost::shared_ptr<FlowMgmtRequest> >, boost::_bi::list2<boost::_bi::value<FlowMgmtManager*>, boost::arg<1> > >, bool, boost::shared_ptr<FlowMgmtRequest> >::invoke(boost::detail::function::function_buffer&, boost::shared_ptr<FlowMgmtRequest>) ()
#5 0x0000000000cdac04 in QueueTaskRunner<boost::shared_ptr<FlowMgmtRequest>, WorkQueue<boost::shared_ptr<FlowMgmtRequest> > >::RunQueue() ()
#6 0x00000000012a3d1f in TaskImpl::execute() ()
#7 0x00007fb7af420b3a in ?? () from /usr/lib/libtbb.so.2
#8 0x00007fb7af41c816 in ?? () from /usr/lib/libtbb.so.2
#9 0x00007fb7af41bf4b in ?? () from /usr/lib/libtbb.so.2
#10 0x00007fb7af4180ff in ?? () from /usr/lib/libtbb.so.2
#11 0x00007fb7af4182f9 in ?? () from /usr/lib/libtbb.so.2
#12 0x00007fb7af63c184 in start_thread (arg=0x7fb7a76d6700) at pthread_create.c:312
#13 0x00007fb7ae91537d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

amit surana (asurana-t)
tags: added: blocker
Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] R3.1

Review in progress for https://review.opencontrail.org/22704
Submitter: Manish Singh (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/22704
Committed: http://github.org/Juniper/contrail-controller/commit/ddee34c0a136dfb8dc9dfad8cd7afb8a0afd292c
Submitter: Zuul
Branch: R3.1

commit ddee34c0a136dfb8dc9dfad8cd7afb8a0afd292c
Author: Manish <email address hidden>
Date: Mon Aug 1 12:22:52 2016 +0530

Agent crash @ BgpAsAServiceFlowMgmtTree::GetCNIndex

Problem:
Flow is marked as short-flow and rflow is NULL. Update of this flow is called,
which results in extraction of keys is triggered. For Bgpaas control-node index
is extracted by referring to dest-ip in rflow. Here rflow is NULL and agent
crashes.

Solution:
If no rflow is present then dont extract any keys for Bgpaas. There is no info
to conclude on control-node and tree to be selected.
This is done only for add operation.
During deletion cn_index is stored and need not be re-computed from fabric side
flow.

Change-Id: I0df10ee49d3c0913587401c084ed092c34724fe7
Closes-bug: #1607868

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] master

Review in progress for https://review.opencontrail.org/23359
Submitter: Manish Singh (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/23359
Committed: http://github.org/Juniper/contrail-controller/commit/fbc88ab4cffa569b7af88d3f5b58f69661612786
Submitter: Zuul
Branch: master

commit fbc88ab4cffa569b7af88d3f5b58f69661612786
Author: Manish <email address hidden>
Date: Mon Aug 1 12:22:52 2016 +0530

Agent crash @ BgpAsAServiceFlowMgmtTree::GetCNIndex

Problem:
Flow is marked as short-flow and rflow is NULL. Update of this flow is called,
which results in extraction of keys is triggered. For Bgpaas control-node index
is extracted by referring to dest-ip in rflow. Here rflow is NULL and agent
crashes.

Solution:
If no rflow is present then dont extract any keys for Bgpaas. There is no info
to conclude on control-node and tree to be selected.
This is done only for add operation.
During deletion cn_index is stored and need not be re-computed from fabric side
flow.

Change-Id: I0df10ee49d3c0913587401c084ed092c34724fe7
Closes-bug: #1607868
(cherry picked from commit ddee34c0a136dfb8dc9dfad8cd7afb8a0afd292c)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] R3.0

Review in progress for https://review.opencontrail.org/25200
Submitter: Manish Singh (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] R3.0.3.x

Review in progress for https://review.opencontrail.org/25202
Submitter: Manish Singh (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/25202
Committed: http://github.org/Juniper/contrail-controller/commit/fb3aae0b601da3d4673695e84d0fbb3a39782235
Submitter: Zuul
Branch: R3.0.3.x

commit fb3aae0b601da3d4673695e84d0fbb3a39782235
Author: Manish <email address hidden>
Date: Mon Aug 1 12:22:52 2016 +0530

Agent crash @ BgpAsAServiceFlowMgmtTree::GetCNIndex

Problem:
Flow is marked as short-flow and rflow is NULL. Update of this flow is called,
which results in extraction of keys is triggered. For Bgpaas control-node index
is extracted by referring to dest-ip in rflow. Here rflow is NULL and agent
crashes.

Solution:
If no rflow is present then dont extract any keys for Bgpaas. There is no info
to conclude on control-node and tree to be selected.
This is done only for add operation.
During deletion cn_index is stored and need not be re-computed from fabric side
flow.

Closes-bug: #1607868
(cherry picked from commit ddee34c0a136dfb8dc9dfad8cd7afb8a0afd292c)
(cherry picked from commit fbc88ab4cffa569b7af88d3f5b58f69661612786)

Conflicts:
 src/vnsw/agent/pkt/flow_mgmt.cc
Change-Id: I0df10ee49d3c0913587401c084ed092c34724fe7

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote :

Reviewed: https://review.opencontrail.org/25200
Committed: http://github.org/Juniper/contrail-controller/commit/2ef44800bcade061a3c1fadd7e67d1d14274c42e
Submitter: Zuul
Branch: R3.0

commit 2ef44800bcade061a3c1fadd7e67d1d14274c42e
Author: Manish <email address hidden>
Date: Mon Aug 1 12:22:52 2016 +0530

Agent crash @ BgpAsAServiceFlowMgmtTree::GetCNIndex

Problem:
Flow is marked as short-flow and rflow is NULL. Update of this flow is called,
which results in extraction of keys is triggered. For Bgpaas control-node index
is extracted by referring to dest-ip in rflow. Here rflow is NULL and agent
crashes.

Solution:
If no rflow is present then dont extract any keys for Bgpaas. There is no info
to conclude on control-node and tree to be selected.
This is done only for add operation.
During deletion cn_index is stored and need not be re-computed from fabric side
flow.

Closes-bug: #1607868
(cherry picked from commit ddee34c0a136dfb8dc9dfad8cd7afb8a0afd292c)
(cherry picked from commit fbc88ab4cffa569b7af88d3f5b58f69661612786)

Conflicts:
 src/vnsw/agent/pkt/flow_mgmt.cc
Change-Id: I0df10ee49d3c0913587401c084ed092c34724fe7

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.