[Xorp-hackers] OSPF assert because multicast interface not properly removed from interface on interface delete.

Ben Greear greearb at candelatech.com
Thu Oct 11 19:44:34 PDT 2007


Continuing on with my testing:  After waiting proper amount of time
for OSPF instances to go to state Full, I changed interfaces & neighbours.
This worked fine.

I then waited for the state to go back to Full and changed interfaces again.
This time, I get an ospfv2 core file due to an assert.

It looks like the root cause might be that the previous owner didn't remove
the multicast address properly because it couldn't find the interface.  Maybe
this is another race with deleted interfaces?

As a potential work-around, is there any way to get rtrmgr to restart
the xorp process, or exit cleanly so that the entire rtrmgr can be restarted?


   Here is the previous owner's log:

[ 2007/10/11 19:30:27 TRACE xorp_ospfv2 OSPF ] Event(HelloReceived) Interface(rddVR1/rddVR1) Neighbour(10.0.0.1) State(Full)
[ 2007/10/11 19:30:27 TRACE xorp_ospfv2 OSPF ] Event(2-WayReceived) Interface(rddVR1/rddVR1) Neighbour(10.0.0.1) State(Full)
[ 2007/10/11 19:30:33 TRACE xorp_ospfv2 OSPF ] Event(InterfaceDown) Interface(rddVR44/rddVR44) State(Backup)
[ 2007/10/11 19:30:33 TRACE xorp_ospfv2 OSPF ] Event(KillNbr) Interface(rddVR44/rddVR44) Neighbour(10.4.0.2) State(Full)
[ 2007/10/11 19:30:33  INFO xorp_rtrmgr:22031 RTRMGR task.cc:2228 run_task ] No more tasks to run
[ 2007/10/11 19:30:33 WARNING xorp_fea XrlFeaTarget ] Handling method for raw_packet4/0.1/leave_multicast_group failed: XrlCmdError 102 Command failed Leaving multicast group 224.0.0.6 failed: interface rddVR44 vif rddVR44 not found
[ 2007/10/11 19:30:33 WARNING xorp_fea XrlFeaTarget ] Handling method for raw_packet4/0.1/send failed: XrlCmdError 102 Command failed No interface rddVR44
[ 2007/10/11 19:30:33 WARNING xorp_fea XrlFeaTarget ] Handling method for raw_packet4/0.1/leave_multicast_group failed: XrlCmdError 102 Command failed Leaving multicast group 224.0.0.5 failed: interface rddVR44 vif rddVR44 not found
[ 2007/10/11 19:30:33  ERROR xorp_ospfv2:22481 OSPF xrl_io.cc:721 leave_multicast_group_cb ] Cannot leave a multicast group on interface rddVR44 vif rddVR44: 102 Command failed Leaving multicast group 224.0.0.6 failed: interface rddVR44 vif rddVR44 not found
[ 2007/10/11 19:30:33  ERROR xorp_ospfv2:22481 OSPF xrl_io.cc:188 send_cb ] Cannot send a packet on interface rddVR44 vif rddVR44: 102 Command failed No interface rddVR44
[ 2007/10/11 19:30:33  ERROR xorp_ospfv2:22481 OSPF xrl_io.cc:721 leave_multicast_group_cb ] Cannot leave a multicast group on interface rddVR44 vif rddVR44: 102 Command failed Leaving multicast group 224.0.0.5 failed: interface rddVR44 vif rddVR44 not found
[ 2007/10/11 19:30:33 TRACE xorp_ospfv2 OSPF ] Event(LinkStateAcknowledgementReceived-pseudo-event) Interface(rddVR1/rddVR1) Neighbour(10.0.0.1) State(Full)
[ 2007/10/11 19:30:34 TRACE xorp_ospfv2 OSPF ] Node: OSPFv2 Network 10.1.0.255(0xa0100ff) 0.0.0.0(0) not reachable
[ 2007/10/11 19:30:34 TRACE xorp_ospfv2 OSPF ] Node: OSPFv2 Network 10.4.0.2(0xa040002) 0.0.0.0(0) not reachable
[ 2007/10/11 19:30:34 TRACE xorp_ospfv2 OSPF ] Node: OSPFv2 Router 127.1.0.8(0x7f010008) 0.0.0.0(0) not reachable
[ 2007/10/11 19:30:34 TRACE xorp_ospfv2 OSPF ] Checking for virtual links Router-LSA:
LS age   19 Options  0x2 DC: 0 EA: 0 N/P: 0 MC: 0 E: 1 LS type 0x1 Link State ID 127.1.0.2 Advertising Router 127.1.0.2 LS sequence number 0x80000005 LS checksum 0x33c5 length 60
         bit Nt false
         bit V false
         bit E false
         bit B false
         Type 2 Transit network IP address of Designated router 10.0.0.1 Routers interface address 10.0.0.1 Metric 1
         Type 3 Stub network Subnet number 10.2.0.0 Mask 255.255.255.0 Metric 1
         Type 3 Stub network Subnet number 10.3.0.0 Mask 255.255.255.0 Metric 1
[ 2007/10/11 19:30:34 TRACE xorp_ospfv2 OSPF ] Delete route Net 10.1.0.0/24




Here is the log for the router that gained the interface and then asserted.

....
[ 2007/10/11 19:30:27 TRACE xorp_ospfv2 OSPF ] Event(HelloReceived) Interface(rddVR0/rddVR0) Neighbour(10.0.0.2) State(Full)
[ 2007/10/11 19:30:27 TRACE xorp_ospfv2 OSPF ] Event(2-WayReceived) Interface(rddVR0/rddVR0) Neighbour(10.0.0.2) State(Full)
[ 2007/10/11 19:30:33 TRACE xorp_ospfv2 OSPF ] Event(LinkStateUpdateReceived-pseudo-event) Interface(rddVR0/rddVR0) Neighbour(10.0.0.2) State(Full)
[ 2007/10/11 19:30:34 TRACE xorp_ospfv2 OSPF ] Node: OSPFv2 Network 10.1.0.255(0xa0100ff) 0.0.0.0(0) not reachable
[ 2007/10/11 19:30:34 TRACE xorp_ospfv2 OSPF ] Node: OSPFv2 Network 10.4.0.2(0xa040002) 0.0.0.0(0) not reachable
[ 2007/10/11 19:30:34 TRACE xorp_ospfv2 OSPF ] Node: OSPFv2 Router 127.1.0.8(0x7f010008) 0.0.0.0(0) not reachable
[ 2007/10/11 19:30:34 TRACE xorp_ospfv2 OSPF ] Checking for virtual links Router-LSA:
LS age    1 Options  0x2 DC: 0 EA: 0 N/P: 0 MC: 0 E: 1 LS type 0x1 Link State ID 127.1.0.1 Advertising Router 127.1.0.1 LS sequence number 0x80000005 LS checksum 0x87ad length 36
         bit Nt false
         bit V false
         bit E false
         bit B false
         Type 2 Transit network IP address of Designated router 10.0.0.1 Routers interface address 10.0.0.2 Metric 1
[ 2007/10/11 19:30:34 TRACE xorp_ospfv2 OSPF ] Delete route Net 10.1.0.0/24
[ 2007/10/11 19:30:34 TRACE xorp_ospfv2 OSPF ] Delete route Net 10.4.0.0/24
[ 2007/10/11 19:30:37  INFO xorp_rtrmgr:22040 RTRMGR task.cc:2228 run_task ] No more tasks to run
[ 2007/10/11 19:30:37 TRACE xorp_ospfv2 OSPF ] Event(LinkStateAcknowledgementReceived-pseudo-event) Interface(rddVR0/rddVR0) Neighbour(10.0.0.2) State(Full)
[ 2007/10/11 19:30:37  ERROR xorp_rib:22367 RIB rib.cc:695 add_vif_address ] Attempting to add address to non-existant Vif "rddVR44"
[ 2007/10/11 19:30:37  ERROR xorp_rib:22367 RIB vifmanager.cc:520 updates_made ] Cannot add address 10.4.0.7 to vif rddVR44 from the set of configured vifs: Failed to add VIF address 10.4.0.7 to Unicast IPv4 RIB
[ 2007/10/11 19:30:37 TRACE xorp_ospfv2 OSPF ] Event(InterfaceUp) Interface(rddVR44/rddVR44) State(Down)
[ 2007/10/11 19:30:37 WARNING xorp_fea XrlFeaTarget ] Handling method for raw_packet4/0.1/join_multicast_group failed: XrlCmdError 102 Command failed Cannot join group 224.0.0.5 on interface rddVR44 vif rddVR44: Address already in use
[ 2007/10/11 19:30:37  FATAL xorp_ospfv2:22478 OSPF xrl_io.cc:638 join_multicast_group_cb ] Cannot join a multicast group on interface rddVR44 vif rddVR44: 102 Command failed Cannot join group 224.0.0.5 on interface rddVR44 vif rddVR44: Address already in use
[ 2007/10/11 19:30:37  ERROR xorp_rtrmgr:22040 RTRMGR module_manager.cc:747 done_cb ] Command "/usr/local/xorp/ospf/xorp_ospfv2": terminated with signal 6; aborted with a core dump.
[ 2007/10/11 19:30:37  INFO xorp_rtrmgr:22040 RTRMGR module_manager.cc:291 module_exited ] Module coredumped: ospf4
[ 2007/10/11 19:30:37 INFO xorp_rib RIB ] Received death event for protocol ospfv2 shutting down -------
OriginTable: ospf
IGP
next table = Redist:ospf
[ 2007/10/11 19:30:37 INFO xorp_rib RIB ] Received death event for protocol ospfv2 shutting down -------
OriginTable: ospf
IGP
next table = Redist:ospf
[ 2007/10/11 19:30:37 INFO xorp_rib RIB ] Received death event for protocol ospfv2 shutting down -------
OriginTable: ospf
IGP
next table = Redist:ospf
[ 2007/10/11 19:30:37 INFO xorp_rib RIB ] Received death event for protocol ospfv2 shutting down -------
OriginTable: ospf
IGP
next table = Redist:ospf
[ 2007/10/11 19:30:39  INFO xorp_rtrmgr:22040 RTRMGR task.cc:2228 run_task ] No more tasks to run


Thanks,
Ben


-- 
Ben Greear <greearb at candelatech.com>
Candela Technologies Inc  http://www.candelatech.com



More information about the Xorp-hackers mailing list