vrouter: buffer overflow with >1k vnics on a vrf

Bug #1466607 reported by Senthilnathan Murugappan on 2015-06-18
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Juniper Openstack
Status tracked in Trunk
R2.20
In Progress
Medium
Anand H. Krishnan
Trunk
Fix Committed
Medium
Anand H. Krishnan

Bug Description

observing the below sandesh error in agent logs and the host routes are not added to the vrf.

ensureCanWrite: Insufficient space in external MemoryBuffer: Available 0 Needed 1

Praveen and Anand are aware of the issue and determined it to be due to buffer overflow.

tags: added: vrouter

Review in progress for https://review.opencontrail.org/12526
Submitter: Anand H. Krishnan (<email address hidden>)

Reviewed: https://review.opencontrail.org/12526
Committed: http://github.org/Juniper/contrail-vrouter/commit/b93b3d971e853ab1e8d0b47ff4e9ab2f7a41e381
Submitter: Zuul
Branch: master

commit b93b3d971e853ab1e8d0b47ff4e9ab2f7a41e381
Author: Anand H. Krishnan <email address hidden>
Date: Wed Jul 22 12:44:15 2015 +0530

Process sandesh decode errors

If an incoming sandesh message is not decoded by the sandesh library
(because of some internal bugs/failures), such a failure needs to be
communicated to agent.

We now check for return value from sandesh decode and if the return
value indicates a sandesh decode failure, we return from netlink
'doit' with that error, which gets passed up to the application.

Change-Id: I39b2621a4ce89750160b7fac105ac2ecd24e60e0
Partial-BUG: #1466607

Review in progress for https://review.opencontrail.org/12950
Submitter: Anand H. Krishnan (<email address hidden>)

Reviewed: https://review.opencontrail.org/12950
Committed: http://github.org/Juniper/contrail-vrouter/commit/cb6a1be08c8edf9d1cdebcd0bd6ed41b5b8277f8
Submitter: Zuul
Branch: R2.20

commit cb6a1be08c8edf9d1cdebcd0bd6ed41b5b8277f8
Author: Anand H. Krishnan <email address hidden>
Date: Wed Jul 22 12:44:15 2015 +0530

Process sandesh decode errors

If an incoming sandesh message is not decoded by the sandesh library
(because of some internal bugs/failures), such a failure needs to be
communicated to agent.

We now check for return value from sandesh decode and if the return
value indicates a sandesh decode failure, we return from netlink
'doit' with that error, which gets passed up to the application.

Change-Id: I39b2621a4ce89750160b7fac105ac2ecd24e60e0
Partial-BUG: #1466607

Review in progress for https://review.opencontrail.org/13786
Submitter: Anand H. Krishnan (<email address hidden>)

Reviewed: https://review.opencontrail.org/13786
Committed: http://github.org/Juniper/contrail-vrouter/commit/593f6a93f41f88c51f806985a5b95882d0b1f7a2
Submitter: Zuul
Branch: master

commit 593f6a93f41f88c51f806985a5b95882d0b1f7a2
Author: Anand H Krishnan <email address hidden>
Date: Sun Sep 13 23:54:28 2015 -0700

Limit the number of component nexthops that are dumped

If the number of component nexthops are huge, with the current logic
of allocating memory for the encoding buffer in vrouter, a dump
operation can fail because of insufficient memory. For such a huge list
it doesn't make sense to dump all the component nexthops in a DUMP
operation. We will limit the dump to a smaller number and ask users to
do a GET operation of the parent nexthop to get the complete list.

Closes BUG: 1466607

Change-Id: Ia774eba66364a8aa761d8544fee3911a37e39a79

Review in progress for https://review.opencontrail.org/14361
Submitter: Anand H. Krishnan (<email address hidden>)

Reviewed: https://review.opencontrail.org/14361
Committed: http://github.org/Juniper/contrail-vrouter/commit/356656462910330f79abd0dacd5af06fb43ed3f4
Submitter: Zuul
Branch: master

commit 356656462910330f79abd0dacd5af06fb43ed3f4
Author: Anand H. Krishnan <email address hidden>
Date: Mon Oct 12 12:44:50 2015 +0530

Remove extra arguments to printf

Extra ' ' character in printf arguments leads to wrong display
in the nh output.

Change-Id: I6ec7453f10985013e515f322dbde99c6e608e302
Closes-BUG: 1466607

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

Duplicates of this bug

Other bug subscribers