summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/changelog7
-rw-r--r--etc/modprobe.d/no-copybreak.conf3
-rwxr-xr-xscripts/vyatta-interfaces.pl15
3 files changed, 16 insertions, 9 deletions
diff --git a/debian/changelog b/debian/changelog
index 91ea2a55..ec0b2080 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+vyatta-cfg-system (0.19.51) unstable; urgency=low
+
+ * Update copybreak module param list
+ * Fix use of uninitialized ospeed
+
+ -- Stephen Hemminger <stephen.hemminger@vyatta.com> Fri, 25 Mar 2011 15:40:06 -0700
+
vyatta-cfg-system (0.19.50) unstable; urgency=low
[ Stephen Hemminger ]
diff --git a/etc/modprobe.d/no-copybreak.conf b/etc/modprobe.d/no-copybreak.conf
index 967be532..822fcf30 100644
--- a/etc/modprobe.d/no-copybreak.conf
+++ b/etc/modprobe.d/no-copybreak.conf
@@ -40,6 +40,7 @@
options 3c515 rx_copybreak=0
options 3c59x rx_copybreak=0
+options bcm63xx copybreak=0
options cxgb copybreak=0
options e1000 copybreak=0
options e1000e copybreak=0
@@ -48,8 +49,8 @@ options fealnx rx_copybreak=0
options hamachi rx_copybreak=0
options ixgb copybreak=0
options natsemi rx_copybreak=0
+options pch_gbe copybreak=0
options pcnet32 rx_copybreak=0
-options r8169 rx_copybreak=0
options sis190 rx_copybreak=0
options sky2 copybreak=0
options starfire rx_copybreak=0
diff --git a/scripts/vyatta-interfaces.pl b/scripts/vyatta-interfaces.pl
index c2ec9a44..30b35c05 100755
--- a/scripts/vyatta-interfaces.pl
+++ b/scripts/vyatta-interfaces.pl
@@ -452,14 +452,13 @@ sub set_speed_duplex {
# read old values to avoid meaningless speed changes
my ($autoneg, $ospeed, $oduplex) = get_ethtool($intf);
- if (defined($autoneg)) {
- if ($autoneg == 1) {
- # Device is already in autonegotiation mode
- return if ($nspeed eq 'auto');
- } else {
- # Device has explicit speed/duplex but they already match
- return if (($nspeed eq $ospeed) && ($nduplex eq $oduplex));
- }
+
+ if (defined($autoneg) && $autoneg == 1) {
+ # Device is already in autonegotiation mode
+ return if ($nspeed eq 'auto');
+ } elsif (defined($ospeed) && defined($oduplex)) {
+ # Device has explicit speed/duplex but they already match
+ return if (($nspeed eq $ospeed) && ($nduplex eq $oduplex));
}
my $cmd = "$ETHTOOL -s $intf";