Re: [PATCH net] neighbour: allow NUD_NOARP entries to be forced GCed
From: Roopa Prabhu <hidden>
Date: 2021-06-07 22:16:30
On 6/7/21 3:04 PM, David Ahern wrote:
On 6/7/21 12:53 PM, Roopa Prabhu wrote:quoted
On 6/7/21 10:35 AM, David Ahern wrote:quoted
IFF_POINTOPOINT interfaces use NUD_NOARP entries for IPv6. It's possible to fill up the neighbour table with enough entries that it will overflow for valid connections after that. This behaviour is more prevalent after commit 58956317c8de ("neighbor: Improve garbage collection") is applied, as it prevents removal from entries that are not NUD_FAILED, unless they are more than 5s old. Fixes: 58956317c8de (neighbor: Improve garbage collection) Reported-by: Kasper Dupont <redacted> Signed-off-by: Thadeu Lima de Souza Cascardo <redacted> Signed-off-by: David Ahern <dsahern@kernel.org> --- rebased to net treeThere are other use-cases that use NUD_NOARP as static neighbour entries which should be exempt from forced gc. for example when qualified by NTF_EXT_LEARNED for the E-VPN use-case. The check in your patch below should exclude NTF_EXT_LEARNED entries. (unrelated to the neighbour code , but bridge driver also uses NUD_NOARP for static entries)Maybe I misunderstand your comment: forced_gc does not apply to static entries; those were moved to a separate list to avoid walking them.
I think you are right. so just to confirm, NUD_NOARP + NTF_EXT_LEARNED will never be included in the list for forced_gc and hence not affected by your patch ? if yes, I am good.