From f781d15a7716449cc3fa1e78ea7ee87af1f67437 Mon Sep 17 00:00:00 2001 From: Stephen Hemminger Date: Thu, 30 Aug 2007 22:16:22 -0700 Subject: [PATCH] --- yaml --- r: 64607 b: refs/heads/master c: b4a488d1824a2cc3514f9ee1298d805bd5edc893 h: refs/heads/master i: 64605: 8667d2f78e9b94a5d669463668dcbfd9bd7b6700 64603: 10aca6a8801068ed18f59689f1c34d6476307931 64599: ccee278f398a7b815cf632070dd98b7f8d1122dc 64591: 54fb139e3ada5f1e1385d3ddfbaca1af785378dc 64575: e74a23dbea1e43175f63e901f7c66e5a5c2860d8 v: v3 --- [refs] | 2 +- trunk/net/bridge/br_if.c | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/[refs] b/[refs] index edd22ede59e2..0ad210ede4b1 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: df1c0b8468b34628ed12b103804a4576cd9af8bb +refs/heads/master: b4a488d1824a2cc3514f9ee1298d805bd5edc893 diff --git a/trunk/net/bridge/br_if.c b/trunk/net/bridge/br_if.c index 749f0e8f541d..9272f12f664c 100644 --- a/trunk/net/bridge/br_if.c +++ b/trunk/net/bridge/br_if.c @@ -33,17 +33,17 @@ */ static int port_cost(struct net_device *dev) { - if (dev->ethtool_ops->get_settings) { - struct ethtool_cmd ecmd = { ETHTOOL_GSET }; - int err = dev->ethtool_ops->get_settings(dev, &ecmd); - if (!err) { + if (dev->ethtool_ops && dev->ethtool_ops->get_settings) { + struct ethtool_cmd ecmd = { .cmd = ETHTOOL_GSET, }; + + if (!dev->ethtool_ops->get_settings(dev, &ecmd)) { switch(ecmd.speed) { - case SPEED_100: - return 19; - case SPEED_1000: - return 4; case SPEED_10000: return 2; + case SPEED_1000: + return 4; + case SPEED_100: + return 19; case SPEED_10: return 100; }