From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C8338134B0 for ; Fri, 28 Jul 2023 15:42:11 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 39BF2C433C8; Fri, 28 Jul 2023 15:42:11 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1690558931; bh=b49As86yg/5JYBX4M7DfYM4ZaQYfk/KakQKThOaO6kI=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=uWyWn/xYkBvwkCrZ7LFj7lIF824IQZoowK8kJ1HCZUuDNcS5ujpYEFABzx5g8AzkF 1e96mljF/MQS4Opxxxt2SIAVz/GajtGvCO9BYH2wMQRWcWmiYdIPYcpFEobeVLc6II tMWu6WXk0UloKXLDzqS7VXr5yqsX0nb7JF5QGEaelXKfMCF45zfFjKp4ZyovJPAYZU ZLWI3eq0KOfZ4Y1rT2OufaNdC3K9OIuH4ooQ7R5xSWIBQdL389M19HFtGsQwFRUypw OYOq5qAQGy00dx4qFv4EeMOAlLhUkoNxA4lVXU2VmlhOKAyGPiwDJiur+N4BXcAlTz M8qieowzhNrww== Message-ID: <7e08dd3b-726d-3b1b-9db7-eddb21773817@kernel.org> Date: Fri, 28 Jul 2023 09:42:10 -0600 Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 Subject: Re: [PATCH net-next] ipv4/fib: send RTM_DELROUTE notify when flush fib Content-Language: en-US To: nicolas.dichtel@6wind.com, Stephen Hemminger , Hangbin Liu Cc: Ido Schimmel , netdev@vger.kernel.org, "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Thomas Haller References: <20230718085814.4301b9dd@hermes.local> <20230724084820.4aa133cc@hermes.local> <20230725093617.44887eb1@hermes.local> <6b53e392-ca84-c50b-9d77-4f89e801d4f3@6wind.com> From: David Ahern In-Reply-To: <6b53e392-ca84-c50b-9d77-4f89e801d4f3@6wind.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit On 7/28/23 7:01 AM, Nicolas Dichtel wrote: > Frankly, it's quite complex, there are corner cases. yes there are. > > When an interface is set down, the routes associated to this interface should be > removed. This is the simple part. > But for ecmp routes, there are several cases: > - if all nh use this interface: the routes are deleted by the kernel; > - if only some nh uses this interface : > + if all other nh already point to a down interface: the route are deleted by > the kernel; > + if at least one nh points to an up interface: the nh are temporarily disabled. > > Managing a cache with this is not so obvious 😉 FRR works well with Linux at this point, and libnl's caching was updated ad fixed by folks from Cumulus Networks so it should be a good too.