No subject



Tue Aug 31 01:25:55 2004
Return-Path: xorp-cvs-admin@icir.org
Delivery-Date: Mon, 30 Aug 2004 18:26:01 -0700
Received: from wyvern.icir.org (wyvern.icir.org [192.150.187.14])
	by tigger.icir.org (8.12.11/8.12.8) with ESMTP id i7V1Q1II019092
	for <atanu@tigger.icir.org>; Mon, 30 Aug 2004 18:26:01 -0700 (PDT)
	(envelope-from xorp-cvs-admin@icir.org)
Received: from fruitcake.ICSI.Berkeley.EDU (fruitcake.ICSI.Berkeley.EDU [192.150.186.11])
	by wyvern.icir.org (8.12.9p1/8.12.8) with ESMTP id i7V1Q1Ru025432
	for <atanu@icir.org>; Mon, 30 Aug 2004 18:26:01 -0700 (PDT)
	(envelope-from xorp-cvs-admin@icir.org)
Received: from fruitcake.ICSI.Berkeley.EDU (localhost [127.0.0.1])
	by fruitcake.ICSI.Berkeley.EDU (8.12.10/8.12.9) with ESMTP id i7V1Q0kf000194;
	Mon, 30 Aug 2004 18:26:01 -0700 (PDT)
Received: from wyvern.icir.org (wyvern.icir.org [192.150.187.14])
	by fruitcake.ICSI.Berkeley.EDU (8.12.10/8.12.9) with ESMTP id i7V1Pukf000183
	for <xorp-cvs@icsi.berkeley.edu>; Mon, 30 Aug 2004 18:25:56 -0700 (PDT)
Received: from xorpc.icir.org (xorpc.icir.org [192.150.187.68])
	by wyvern.icir.org (8.12.9p1/8.12.8) with ESMTP id i7V1PuRu025430
	for <xorp-cvs@icir.org>; Mon, 30 Aug 2004 18:25:56 -0700 (PDT)
	(envelope-from atanu@icir.org)
Received: from xorpc.icir.org (localhost [127.0.0.1])
	by xorpc.icir.org (8.12.9p1/8.12.8) with ESMTP id i7V1Pu8M068434
	for <xorp-cvs@icir.org>; Mon, 30 Aug 2004 18:25:56 -0700 (PDT)
	(envelope-from atanu@xorpc.icir.org)
Received: (from atanu@localhost)
	by xorpc.icir.org (8.12.9p1/8.12.3/Submit) id i7V1PtUa068433
	for xorp-cvs@icir.org; Tue, 31 Aug 2004 01:25:55 GMT
	(envelope-from atanu)
Date: Tue, 31 Aug 2004 01:25:55 GMT
From: Atanu Ghosh <atanu@icir.org>
Message-Id: <200408310125.i7V1PtUa068433@xorpc.icir.org>
To: xorp-cvs@icir.org
X-XORP-CVS-Branch: HEAD
Subject: [Xorp-cvs] XORP cvs commit: xorp/bgp
Sender: xorp-cvs-admin@icir.org
Errors-To: xorp-cvs-admin@icir.org
X-BeenThere: xorp-cvs@icir.org
X-Mailman-Version: 2.0
Precedence: bulk
List-Help: <mailto:xorp-cvs-request@icir.org?subject=help>
List-Post: <mailto:xorp-cvs@icir.org>
List-Subscribe: <http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-cvs>,
	<mailto:xorp-cvs-request@icir.org?subject=subscribe>
List-Id: Mailing list for XORP CVS commit messages <xorp-cvs.icir.org>
List-Unsubscribe: <http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-cvs>,
	<mailto:xorp-cvs-request@icir.org?subject=unsubscribe>

CVSROOT:	/usr/local/www/data/cvs
Module name:	xorp
Changes by:	atanu@xorpc.icir.org	2004-08-31 01:25:55 UTC

XORP CVS repository


Modified files:
	bgp           next_hop_resolver.cc 

Log message:
	bgp/harness/test_rib1.sh -t test9
	Was occasionally failing on multiprocessor Linux box (koala).
	This is a simple test, a route is originated by BGP for which the
	nexthop does resolve. A route is added then immediately deleted from
	the RIB. This sequence of events will cause the nexthop to resolve
	and a BGP add route should be generated followed by a BGP withdraw
	route. The test does not check for the generation of the packet only
	that BGP is still running at the end of the test. Unfortunately BGP
	was failing.
	
	        BGP                                             RIB
	
	                                                        <- route_info_invalid4
	        deregister_interest4 ->
	
	A route add followed by an immediate route delete is sent to the
	RIB. The RIB sends a message to BGP telling it that the route which
	has been deleted from the RIB is invalid. At the same time BGP is
	de-registering interest in this route. By the time the de-register
	reaches the RIB it no longer has a registration, it returns an error
	to BGP which considers any error fatal.
	
	The BGP process is unexpectedly de-registering interest in this next
	hop because in RibInTable<A>::push_next_changed_nexthop(), a replace
	route has been replaced with a delete route followed by an
	add_route. The delete route causes this de-registration.
	
	This condition race has always existed.
	
	The nexthop code was already storing any premature invalidates that it
	received. When a de-register fails check the premature invalidate
	state.

Revision  Changes    Path
1.32      +16 -3     xorp/bgp/next_hop_resolver.cc
_______________________________________________
Xorp-cvs mailing list
Xorp-cvs@icir.org
http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-cvs