]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ethtool: don't propagate EOPNOTSUPP from dumps
authorJakub Kicinski <kuba@kernel.org>
Sun, 26 Nov 2023 22:58:06 +0000 (14:58 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 10 Jan 2024 16:10:32 +0000 (17:10 +0100)
[ Upstream commit cbeb989e41f4094f54bec2cecce993f26f547bea ]

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")
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://lore.kernel.org/r/20231126225806.2143528-1-kuba@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/ethtool/netlink.c

index 1a4c11356c96cdadfff40754d9c01ca72774ccde..fc4ccecf9495c4400aacb8398b73dfd443fd1d33 100644 (file)
@@ -509,7 +509,7 @@ lock_and_cont:
 cont:
                        idx++;
                }
-
+               ret = 0;
        }
        rtnl_unlock();