ethtool: don't propagate EOPNOTSUPP from dumps

[ 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: 728480f124 ("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>
This commit is contained in:
Jakub Kicinski 2023-11-26 14:58:06 -08:00 committed by Greg Kroah-Hartman
parent e570b15087
commit 5ff1682fec

View File

@ -509,7 +509,7 @@ static int ethnl_default_dumpit(struct sk_buff *skb,
cont:
idx++;
}
ret = 0;
}
rtnl_unlock();