assertion in contrail-control when service chaining network with IPv6 subnet

Bug #1412251 reported by Marcel Wiget
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Juniper Openstack
Status tracked in Trunk
R2.0
Fix Released
High
Nischal Sheth
R2.1
Fix Released
High
Nischal Sheth
Trunk
Fix Committed
High
Nischal Sheth
OpenContrail
Fix Released
High
Nischal Sheth

Bug Description

Running contrail 2.0 on Ubuntu 14.04 (contrail-install-packages_2.0-22~ubuntu-14-04icehouse_all.deb).
Added a service in a policy that chains two virtual networks which happen to have an IPv6 subnet assigned in addition to IPv4 subnet.

While its understood that service chaining for IPv6 isn't supported in 2.0, it should simply ignore IPv6 or report an error instead of hitting an assert that stops contrail-control.

root@rs:~# gdb /usr/bin/contrail-control /var/crashes/core.contrail-contro.14371.rs.1421608183
GNU gdb (Ubuntu 7.7.1-0ubuntu5~14.04.2) 7.7.1
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/bin/contrail-control...(no debugging symbols found)...done.

warning: core file may not match specified executable file.
[New LWP 14380]
[New LWP 14378]
[New LWP 14371]
[New LWP 14379]
[New LWP 14377]
[New LWP 14375]
[New LWP 14386]
[New LWP 14385]
[New LWP 14381]
[New LWP 14374]
[New LWP 14382]
[New LWP 14383]
[New LWP 14384]
[New LWP 14376]
[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-control'.
Program terminated with signal SIGABRT, Aborted.
#0 0x00007f976b1b7bb9 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
56 ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) where
#0 0x00007f976b1b7bb9 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#1 0x00007f976b1bafc8 in __GI_abort () at abort.c:89
#2 0x00007f976b1b0a76 in __assert_fail_base (fmt=0x7f976b3022b0 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0xa9a93e "ec == 0",
    file=file@entry=0xa99828 "controller/src/bgp/routing-instance/service_chaining.cc", line=line@entry=46,
    function=function@entry=0xa99d80 "ServiceChain::ServiceChain(RoutingInstance*, RoutingInstance*, RoutingInstance*, const std::vector<std::basic_string<char> >&, IpAddress)") at assert.c:92
#3 0x00007f976b1b0b22 in __GI___assert_fail (assertion=0xa9a93e "ec == 0", file=0xa99828 "controller/src/bgp/routing-instance/service_chaining.cc", line=46,
    function=0xa99d80 "ServiceChain::ServiceChain(RoutingInstance*, RoutingInstance*, RoutingInstance*, const std::vector<std::basic_string<char> >&, IpAddress)")
    at assert.c:101
#4 0x000000000079f62e in ?? ()
#5 0x000000000079f970 in ?? ()
#6 0x00000000007a0058 in ?? ()
#7 0x0000000000a25f5f in ?? ()
#8 0x0000000000a210d0 in ?? ()
#9 0x00007f976bf8fb3a in ?? () from /usr/lib/libtbb.so.2
#10 0x00007f976bf8b816 in ?? () from /usr/lib/libtbb.so.2
#11 0x00007f976bf8af4b in ?? () from /usr/lib/libtbb.so.2
#12 0x00007f976bf870ff in ?? () from /usr/lib/libtbb.so.2
#13 0x00007f976bf872f9 in ?? () from /usr/lib/libtbb.so.2
#14 0x00007f976c1ab182 in start_thread (arg=0x7f976362d700) at pthread_create.c:312
#15 0x00007f976b27befd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111
(gdb)

Changed in opencontrail:
importance: Undecided → High
Changed in juniperopenstack:
importance: Undecided → High
assignee: nobody → Nischal Sheth (nsheth)
Changed in opencontrail:
assignee: nobody → Nischal Sheth (nsheth)
Revision history for this message
Nischal Sheth (nsheth) wrote :

The list of prefixes in the service chain config contains both v4 and
v6 subnets. The service chain code in the control node asserts when
it sees the v6 subnet.

Changed in opencontrail:
status: New → Triaged
Nischal Sheth (nsheth)
Changed in opencontrail:
status: Triaged → In Progress
Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/6670
Committed: http://github.org/Juniper/contrail-controller/commit/fa8101bd51ff1a3d98422895086e96c4c928e177
Submitter: Zuul
Branch: R2.0

commit fa8101bd51ff1a3d98422895086e96c4c928e177
Author: Nischal Sheth <email address hidden>
Date: Tue Jan 27 15:30:07 2015 -0800

Ignore IPv6 subnets in ServiceChainConfig

Change-Id: I7ec99b371e470c9d2bcfb5ee9896ef923c30816b
Closes-Bug: 1412251

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

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

commit 4d8096650a2c69f32c3cea38ed2f7c3c666f44ea
Author: Nischal Sheth <email address hidden>
Date: Tue Jan 27 15:30:07 2015 -0800

Ignore IPv6 subnets in ServiceChainConfig

Change-Id: I7ec99b371e470c9d2bcfb5ee9896ef923c30816b
Closes-Bug: 1412251

Nischal Sheth (nsheth)
Changed in opencontrail:
status: In Progress → Fix Committed
Revision history for this message
OpenContrail Admin (ci-admin-f) wrote :

Reviewed: https://review.opencontrail.org/6669
Committed: http://github.org/Juniper/contrail-controller/commit/f97c07655dd8834c926dcefe272311d22edfd0af
Submitter: Zuul
Branch: R2.1

commit f97c07655dd8834c926dcefe272311d22edfd0af
Author: Nischal Sheth <email address hidden>
Date: Tue Jan 27 15:30:07 2015 -0800

Ignore IPv6 subnets in ServiceChainConfig

Change-Id: I7ec99b371e470c9d2bcfb5ee9896ef923c30816b
Closes-Bug: 1412251

Pedro Marques (5-roque)
Changed in opencontrail:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

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