On Fri, Aug 14, 2020 at 04:17:44PM +0300, Maxim Mikityanskiy wrote: > This comment in the code: > > /* result is not exactly as requested, show differences */ > > implies that the "Actual changes" output should be displayed only if the > result is not as requested, which matches the legacy ethtool behavior. > However, in fact, ethtool-netlink displays "actual changes" even when > the changes are expected (e.g., one bit was requested, and it was > changed as requested). > > This commit fixes the condition above to make the behavior match the > description in the comment and the behavior of the legacy ethtool. The > new condition excludes the req_mask bits from active_mask to avoid > reacting on bit changes that we asked for. The new condition now > matches the ifs in the loop above that print "[requested on/off]" and > "[not requested]". > > Signed-off-by: Maxim Mikityanskiy <maxi...@mellanox.com>
Applied, thank you. Michal > --- > netlink/features.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/netlink/features.c b/netlink/features.c > index 8b5b858..133529d 100644 > --- a/netlink/features.c > +++ b/netlink/features.c > @@ -413,7 +413,7 @@ static void show_feature_changes(struct nl_context *nlctx, > > diff = false; > for (i = 0; i < words; i++) > - if (wanted_mask[i] || active_mask[i]) > + if (wanted_mask[i] || (active_mask[i] & ~sfctx->req_mask[i])) > diff = true; > if (!diff) > return; > -- > 2.21.0 >
signature.asc
Description: PGP signature