Re: [PATCH v4 net-next 5/5] geneve: Introduce IFLA_GENEVE_LOCAL and IFLA_GENEVE_LOCAL6.
From: Jakub Kicinski <kuba@kernel.org>
Date: 2026-06-02 16:21:16
On Mon, 1 Jun 2026 20:25:24 -0700 Kuniyuki Iwashima wrote:
quoted
Does this emit IFLA_GENEVE_LOCAL or IFLA_GENEVE_LOCAL6 on every non-collect_md device, including legacy devices created without any local address? cfg->dualstack is only set true for collect_md devices, so for any device where the user never specified a local address, info->key.u.ipv4.src is 0 (or info->key.u.ipv6.src is ::) but the attribute is still emitted. This would change the visible output of ip -d link show and netlink dumps for existing GENEVE devices, adding a synthetic local 0.0.0.0 or local :: that was not present before. Would gating this on a non-zero source address (or tracking whether the user explicitly set LOCAL) avoid the dump-output change for unaffected devices?Honestly I don't have strong preference on this. New iproute2 will show 0.0.0.0 or :: even for devices created without the attribute indeed, but I guess it's almost always the case that the dump command shows every attribute when we add a new one...?
IDK if there's any strong reason one way or the other, but my understanding was that we try to only dump back the optional attributes which were actually set by the user. Whether we follow that here or not is less important, but I think the bot makes a legitimate point. If we default to dumping zeros even if user never set the addr - we should allow user echoing back already set values in changelink. IOW the ask is not to rebind but to compare the addr to current one in changelink.