Message ID | 20231126225806.2143528-1-kuba@kernel.org (mailing list archive) |
---|---|
State | Accepted |
Commit | cbeb989e41f4094f54bec2cecce993f26f547bea |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net] ethtool: don't propagate EOPNOTSUPP from dumps | expand |
On Sun, Nov 26, 2023 at 02:58:06PM -0800, Jakub Kicinski wrote: > The default dump handler needs to clear ret before returning. > Otherwise if the last interface returns an inconsequential > error this error will propagate to user space. > > This may confuse user space (ethtool CLI seems to ignore it, > but YNL doesn't). It will also terminate the dump early > for mutli-skb dump, because netlink core treats EOPNOTSUPP > as a real error. > > Fixes: 728480f12442 ("ethtool: default handlers for GET requests") > Signed-off-by: Jakub Kicinski <kuba@kernel.org> Reviewed-by: Simon Horman <horms@kernel.org>
Hello: This patch was applied to netdev/net.git (main) by Jakub Kicinski <kuba@kernel.org>: On Sun, 26 Nov 2023 14:58:06 -0800 you wrote: > The default dump handler needs to clear ret before returning. > Otherwise if the last interface returns an inconsequential > error this error will propagate to user space. > > This may confuse user space (ethtool CLI seems to ignore it, > but YNL doesn't). It will also terminate the dump early > for mutli-skb dump, because netlink core treats EOPNOTSUPP > as a real error. > > [...] Here is the summary with links: - [net] ethtool: don't propagate EOPNOTSUPP from dumps https://git.kernel.org/netdev/net/c/cbeb989e41f4 You are awesome, thank you!
diff --git a/net/ethtool/netlink.c b/net/ethtool/netlink.c index 3bbd5afb7b31..fe3553f60bf3 100644 --- a/net/ethtool/netlink.c +++ b/net/ethtool/netlink.c @@ -505,6 +505,7 @@ static int ethnl_default_dumpit(struct sk_buff *skb, ret = skb->len; break; } + ret = 0; } rtnl_unlock();
The default dump handler needs to clear ret before returning. Otherwise if the last interface returns an inconsequential error this error will propagate to user space. This may confuse user space (ethtool CLI seems to ignore it, but YNL doesn't). It will also terminate the dump early for mutli-skb dump, because netlink core treats EOPNOTSUPP as a real error. Fixes: 728480f12442 ("ethtool: default handlers for GET requests") Signed-off-by: Jakub Kicinski <kuba@kernel.org> --- CC: f.fainelli@gmail.com CC: mkubecek@suse.cz --- net/ethtool/netlink.c | 1 + 1 file changed, 1 insertion(+)