Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:42.3:Staging:D
ethtool
ethtool-Fix-the-advertise-parameter-logic.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File ethtool-Fix-the-advertise-parameter-logic.patch of Package ethtool
From: Michael Chan <mchan@broadcom.com> Date: Tue, 22 Nov 2016 18:55:47 -0500 Subject: ethtool: Fix the "advertise" parameter logic. Patch-mainline: v4.10 Git-commit: 135232204051808cf9317fe3589459994ba2413b References: bsc#1037573 The current code ignores the value of the advertise parameter. For example, ethtool -s ethx advertise 0x1000 The full_advertising_wanted parameter of 0x1000 is not passed to the kernel. The reason is that advertising_wanted is NULL in this case, and ethtool will think that the user has given no advertisement input and so it will proceed to pass all supported advertisement speeds to the kernel. The older legacy ethtool with similar logic worked because advertising_wanted was an integer and could take on -1 and 0. It would pass the full_advertising_wanted value if advertising_wanted == -1. This fix is to pass all supported advertisement speeds only when both advertising_wanted == NULL && full_advertising_wanted == NULL. Signed-off-by: Michael Chan <michael.chan@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com> Acked-by: Michal Kubecek <mkubecek@suse.cz> --- ethtool.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ethtool.c b/ethtool.c index 9b2022fd3ce9..bd41483794b0 100644 --- a/ethtool.c +++ b/ethtool.c @@ -2922,7 +2922,8 @@ static int do_sset(struct cmd_context *ctx) fprintf(stderr, "\n"); } if (autoneg_wanted == AUTONEG_ENABLE && - advertising_wanted == NULL) { + advertising_wanted == NULL && + full_advertising_wanted == NULL) { unsigned int i; /* Auto negotiation enabled, but with -- 2.12.2
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor