summaryrefslogtreecommitdiffstats
path: root/drivers/net
Commit message (Collapse)AuthorAgeFilesLines
* mlx4_core: Fix min() warningAndrew Morton2009-01-151-3/+3
| | | | | | | | | | | | | | | | | | | | | Fix drivers/net/mlx4/profile.c: In function `mlx4_make_profile': drivers/net/mlx4/profile.c:110: warning: comparison of distinct pointer types lacks a cast This happened because num_possible_cpus() was secretly changed by commit ae7a47e7 ("cpumask: make cpumask.h eat its own dogfood.") from returning "int" to (now) returning "unsigned int". I think that was a good change, so we should just swallow the fallout. Cc: "David S. Miller" <davem@davemloft.net> Cc: Roland Dreier <rolandd@cisco.com> Cc: Yevgeny Petrilin <yevgenyp@mellanox.co.il> Cc: Jack Morgenstein <jackm@dev.mellanox.co.il> Cc: Vladimir Sokolovsky <vlad@mellanox.co.il> Cc: Michael S. Tsirkin <mst@dev.mellanox.co.il> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Roland Dreier <rolandd@cisco.com>
* Merge branch 'for-linus' of ↵Linus Torvalds2009-01-131-2/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: IB/iser: Add dependency on INFINIBAND_ADDR_TRANS IPoIB: Do not join broadcast group if interface is brought down RDMA/nes: Fix for NIPQUAD removal IPoIB: Fix loss of connectivity after bonding failover on both sides IB/mlx4: Don't register IB device for adapters with no IB ports mlx4_core: Fix warning from min() IB/ehca: spin_lock_irqsave() takes an unsigned long
| * mlx4_core: Fix warning from min()Roland Dreier2009-01-091-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Recent cpumask changes changed num_possible_cpus() from returning an int to returning an unsigned int. This means that doing min(num_possible_cpus(), <int expression>) now produces a warning like drivers/net/mlx4/main.c: In function 'mlx4_enable_msi_x': drivers/net/mlx4/main.c:915: warning: comparison of distinct pointer types lacks a cast Fix this by using min_t(int, ...). Signed-off-by: Roland Dreier <rolandd@cisco.com>
* | ucc_geth: use correct UCCE macrosTimur Tabi2009-01-112-174/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The UCC Event Register (UCCE) already has unambigous macro definitions in qe.h, so we should not be defining our own in the UCC Ethernet driver. Removed unused local variable 'dev' from ucc_geth_poll(), which fixes a warning caused by commit 908a7a16b852ffd618a9127be8d62432182d81b4 ("net: Remove unused netdev arg from some NAPI interfaces."). Replaced in_be/out_be pairs with setbits32 or clrbits32, where applicable. Signed-off-by: Timur Tabi <timur@freescale.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | cxgb3: Keep LRO off if disabled when interface is downRoland Dreier2009-01-113-10/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I have a system with a Chelsio adapter (driven by cxgb3) whose ports are part of a Linux bridge. Recently I updated the kernel and discovered that things stopped working because cxgb3 was doing LRO on packets that were passed into the bridge code for forwarding. (Incidentally, this problem manifested itself in a strange way that made debugging a bit interesting -- for some reason, the skb_warn_if_lro() check in bridge didn't trigger and these LROed packets were forwarded out a forcedeth interface, and caused the forcedeth transmit path to get stuck) This is because cxgb3 has no way of keeping state for the LRO flag until the interface is brought up, so if the bridging code disables LRO while the interface is down, then cxgb3_up() will just reenable LRO, and on my Debian system at least, the init scripts add interfaces to a bridge before bringing the interfaces up. Fix this by keeping track of each interface's LRO state in cxgb3 so that when bridge disables LRO, it stays disabled in cxgb3_up() when the interface is brought up. I did this by changing the rx_csum_offload flag into a pair of bit flags; the effect of this on the rx_eth() fast path is miniscule enough that it should be fine (eg on x86, a cmpb instruction becomes a testb instruction). Signed-off-by: Roland Dreier <rolandd@cisco.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | sfc: SFT9001: Fix condition for LNPGA power-offBen Hutchings2009-01-111-2/+3
| | | | | | | | | | | | | | | | Only the SFX7101 requires software power control. This was incorrectly being applied to the SFT9001 rev A as well. Signed-off-by: Ben Hutchings <bhutchings@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | smsc911x: register irq with device name, not driver nameSteve Glendinning2009-01-111-1/+1
| | | | | | | | | | | | | | | | This change lets "cat /proc/interrupts" show the name of the ethernet device (e.g. eth0) rather than the driver name (smsc911x). Signed-off-by: Steve Glendinning <steve.glendinning@smsc.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | smsc911x: fix smsc911x_reg_read compiler warningSteve Glendinning2009-01-111-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | if this code path is ever hit, the platform_data struct isn't properly configured with a bus width flag so the device won't work (hence the BUG()). This patch adds a dummy return statement to eliminate this compiler warning: drivers/net/smsc911x.c: In function 'smsc911x_reg_read': drivers/net/smsc911x.c:148: warning: control reaches end of non-void function Signed-off-by: Steve Glendinning <steve.glendinning@smsc.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | forcedeth: napi schedule lock fixAyaz Abdulla2009-01-111-2/+2
| | | | | | | | | | | | | | | | | | | | This patch fixes a potential race condition between scheduling napi and completing napi poll. The call to netif_rx_schedule should be under protection of the lock (as is the completion), otherwise, interrupts could be masked off. Signed-off-by: Ayaz Abdulla <aabdulla@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | forcedeth: remove mgmt unit for mcp79 chipsetAyaz Abdulla2009-01-111-4/+4
| | | | | | | | | | | | | | | | This patch removes the feature flag for mgmt unit as it is not used for this chipset. Signed-off-by: Ayaz Abdulla <aabdulla@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | qlge: Remove dynamic alloc of rx ring control blocks.Ron Mercer2009-01-112-33/+10
| | | | | | | | | | Signed-off-by: Ron Mercer <ron.mercer@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | qlge: Fix schedule while atomic issue.Ron Mercer2009-01-111-3/+3
| | | | | | | | | | | | | | | | There is no need to sleep while waiting for the hardware semaphore to become available. Signed-off-by: Ron Mercer <ron.mercer@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | qlge: Remove support for device ID 8000.Ron Mercer2009-01-112-3/+1
| | | | | | | | | | | | | | Support for dev id 8000 is pushed out until 2.6.30. Signed-off-by: Ron Mercer <ron.mercer@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | qlge: Get rid of split addresses in hardware control blocks.Ron Mercer2009-01-113-66/+32
| | | | | | | | | | Signed-off-by: Ron Mercer <ron.mercer@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | qlge: Get rid of volatile usage for shadow register.Ron Mercer2009-01-113-14/+34
| | | | | | | | | | | | | | | | Putting back ql_read_sh_reg() function and using rmb() instead of volatile. Signed-off-by: Ron Mercer <ron.mercer@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | forcedeth: version bump and copyrightAyaz Abdulla2009-01-111-2/+2
| | | | | | | | | | | | | | This patch bumps up the version number and adds current year to copyright. Signed-off-by: Ayaz Abdulla <aabdulla@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | forcedeth: xmit lock fixAyaz Abdulla2009-01-111-2/+4
| | | | | | | | | | | | | | | | | | | | | | This patch fixes a potential race condition between xmit thread and xmit completion thread. The calculation of empty tx descriptors is not performed under the lock. This could cause it to set the stop flag while the completion thread finishes all tx's. This will result in the tx queue in stopped state and no one to wake it up. Signed-off-by: Ayaz Abdulla <aabdulla@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | netdev: missing validate_address hooksStephen Hemminger2009-01-113-0/+3
| | | | | | | | | | | | | | | | Some devices were converted incorrectly and are missing the validate address hooks. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | netdev: add missing set_mac_address hookStephen Hemminger2009-01-1127-1/+28
| | | | | | | | | | | | | | | | Many drivers lost the ability to set ethernet address accidently during the net_device_ops conversion. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | netdev: gianfar: add MII ioctl handlerClifford Wolf2009-01-111-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | This is the same kind of wrapper that can also be found in many other network device drivers. Tested with a freescale MPC8349E host CPU: Toggled the interface LEDs on a DP83865 PHY. Signed-off-by: Clifford Wolf <clifford@clifford.at> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* | drivers/net/wireless/libertas: move a dereference below a NULL testJulia Lawall2009-01-111-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In each case, if the NULL test is necessary, then the dereference should be moved below the NULL test. I have also taken advantage of the availability of the value of priv->dev in the subsequent calls to netif_stop_queue and netif_carrier_off. The semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // <smpl> @@ type T; expression E; identifier i,fld; statement S; @@ - T i = E->fld; + T i; ... when != E when != i if (E == NULL) S + i = E->fld; // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Acked-by: Dan Williams <dcbw@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* | drivers/net/hamradio/6pack.c: move a dereference below a NULL testJulia Lawall2009-01-111-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In each case, if the NULL test is necessary, then the dereference should be moved below the NULL test. The semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // <smpl> @@ type T; expression E; identifier i,fld; statement S; @@ - T i = E->fld; + T i; ... when != E when != i if (E == NULL) S + i = E->fld; // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* | 3c59x: Use device_set_wakeup_enableSteffen Klassert2009-01-111-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | Since dev->power.should_wakeup bit is used by the PCI core to decide whether the device should wake up the system from sleep states, set this bit by calling device_set_wakeup_enable(). This restores proper WOL for the 3c59x driver. Reported-and-tested-by: Graeme Wilford <gwilford@gmail.com> Reported-by: Gunnar Degnbol <degnbol@danbbs.dk> Signed-off-by: Steffen Klassert <klassert@mathematik.tu-chemnitz.de> Signed-off-by: David S. Miller <davem@davemloft.net>
* | qlge: Naming interrupt vectorsJesper Dangaard Brouer2009-01-111-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Name interrupt vectors according to the new naming standard, by Robert Olsson and DaveM. The qlge driver were very close to the new standard, thus the change is kind of trivial. Signed-off-by: Jesper Dangaard Brouer <hawk@comx.dk> Signed-off-by: Ron Mercer <ron.mercer@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | b44: fix misalignment and wasted space in rx handlingFelix Fietkau2009-01-111-7/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Broadcom 4400 puts a header of configurable size (apparently needs to be at least 28 bytes) in front of received packets. When handling this, the previous code accidentally added the offset 30 *twice* for the software and once for the hardware, thereby cancelling out the IP alignment effect of the 30 byte padding and wasting an additional 30 bytes of memory per packet. This patch fixes this problem and improves routing throughput by about 30% on MIPS, where unaligned access is expensive. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* | e1000e: Add process name to WARN message when detecting Mutex contentionDavid Graham2009-01-111-6/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds process name of the current mutex holder to the WARN message output when the e1000e driver attempts to acquire the nvm_mutex and finds that it is already being held. With this patch the WARN message indicates both the process name of the current mutex holder and the process name of the attempted acquisition, which together will help to identify the contending codepaths. Signed-off-by: David Graham <david.graham@intel.com> Acked-by: Bruce Allan <bruce.w.allan@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | r6040: bump release to 0.21Florian Fainelli2009-01-111-2/+2
| | | | | | | | | | | | | | Bump version to 0.21 and release date to 09Jan2009. Signed-off-by: Florian Fainelli <florian@openwrt.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* | r6040: no longer mark r6040 as being experimentalFlorian Fainelli2009-01-111-1/+1
| | | | | | | | | | | | | | | | We do not depend on EXPERIMENTAL and the driver is not experimental, so remove this warning. Signed-off-by: Florian Fainelli <florian@openwrt.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* | r6040: generate random ethernet MAC address when not initializedFlorian Fainelli2009-01-111-2/+4
| | | | | | | | | | | | | | | | This patch makes the ethernet driver assign a random ethernet MAC address when the bootloader does not set it. Signed-off-by: Florian Fainelli <florian@openwrt.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* | r6040: fix ifconfig down and freeing of tx/rx descriptorsFlorian Fainelli2009-01-111-11/+21
| | | | | | | | | | | | | | | | | | | | | | | | This patch fixes warnings and such traces that appear when doing an ifconfig down on the interface: WARNING: at arch/x86/kernel/pci-dma.c:376 dma_free_coherent+0x40/0x7d() Modules linked in: Signed-off-by: Joe Chou <joe.chou@rdc.com.tw> Signed-off-by: Florian Fainelli <florian@openwrt.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* | irda: fix incomplete conversation to internal statsAlexander Beregalov2009-01-112-5/+5
| | | | | | | | | | | | | | Fix for commit af0490810c (irda: convert to internal stats) Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6Linus Torvalds2009-01-0877-10490/+1000
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (84 commits) wimax: fix kernel-doc for debufs_dentry member of struct wimax_dev net: convert pegasus driver to net_device_ops bnx2x: Prevent eeprom set when driver is down net: switch kaweth driver to netdevops pcnet32: round off carrier watch timer i2400m/usb: wrap USB power saving in #ifdef CONFIG_PM wimax: testing for rfkill support should also test for CONFIG_RFKILL_MODULE wimax: fix kconfig interactions with rfkill and input layers wimax: fix '#ifndef CONFIG_BUG' layout to avoid warning r6040: bump release number to 0.20 r6040: warn about MAC address being unset r6040: check PHY status when bringing interface up r6040: make printks consistent with DRV_NAME gianfar: Fixup use of BUS_ID_SIZE mlx4_en: Returning real Max in get_ringparam mlx4_en: Consider inline packets on completion netdev: bfin_mac: enable bfin_mac net dev driver for BF51x qeth: convert to net_device_ops vlan: add neigh_setup dm9601: warn on invalid mac address ...
| * | net: convert pegasus driver to net_device_opsOliver Neukum2009-01-081-7/+14
| | | | | | | | | | | | | | | | | | | | | This converts the pegasus driver to use of the new net_device_ops structure Signed-off-by: Oliver Neukum <oneukum@suse.de> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | bnx2x: Prevent eeprom set when driver is downEilon Greenstein2009-01-081-0/+3
| | | | | | | | | | | | | | | Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | net: switch kaweth driver to netdevopsOliver Neukum2009-01-081-11/+12
| | | | | | | | | | | | | | | | | | | | | This converts the kaweth ethernet USB driver to netdevops. Signed-off-by: Oliver Neukum <oneukum@suse.de> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | pcnet32: round off carrier watch timerStephen Hemminger2009-01-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The link check watchdog timer on this driver fires every two seconds, but since not aligned it causes extra wakeups. It is more important on this driver than most because it is the hardware that is emulated by default when using network interfaces on VMware. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | i2400m/usb: wrap USB power saving in #ifdef CONFIG_PMInaky Perez-Gonzalez2009-01-081-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Current code was assuming PM was always enabled, which is not correct. Code which accesses members in the struct usb_device that are dependant on CONFIG_PM must be protected the same. Reported by Randy Dunlap from a build error in the linux-next tree on 07/01/2009. Signed-off-by: Inaky Perez-Gonzalez <inaky@linux.intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | Merge branch 'master' of ↵David S. Miller2009-01-0843-29/+9969
| |\ \ | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6
| * | | r6040: bump release number to 0.20Florian Fainelli2009-01-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch bumps release number to 0.20 and 07Jan2009. Signed-off-by: Florian Fainelli <florian@openwrt.org> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | r6040: warn about MAC address being unsetFlorian Fainelli2009-01-081-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some bootloader/BIOSes do not set the MAC address, warn about that. Signed-off-by: Florian Fainelli <florian@openwrt.org> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | r6040: check PHY status when bringing interface upFlorian Fainelli2009-01-081-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch makes the driver properly initialize the PHY status if not correctly set by the bootloader/BIOS. It prevents some boards to bring up the link on boot. Signed-off-by: Florian Fainelli <florian@openwrt.org> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | r6040: make printks consistent with DRV_NAMEFlorian Fainelli2009-01-081-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes some printks which were not prefixed with DRV_NAME, useful when having multiple cards/drivers on the system. Signed-off-by: Florian Fainelli <florian@openwrt.org> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | gianfar: Fixup use of BUS_ID_SIZEKumar Gala2009-01-081-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit b31a1d8b41513b96e9c7ec2f68c5734cef0b26a4 ("gianfar: Convert gianfar to an of_platform_driver") went back to using BUS_ID_SIZE instead of sizeof() as per the larger patch series that will remove "char bus_id[20]" from struct device. Signed-off-by: Kumar Gala <galak@kernel.crashing.org> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | mlx4_en: Returning real Max in get_ringparamYevgeny Petrilin2009-01-082-2/+8
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Yevgeny Petrilin <yevgenyp@mellanox.co.il> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | mlx4_en: Consider inline packets on completionYevgeny Petrilin2009-01-082-26/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Was trying to unmap work queue entries that had inline packets, so naturally weren't mapped. Signed-off-by: Yevgeny Petrilin <yevgenyp@mellanox.co.il> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | netdev: bfin_mac: enable bfin_mac net dev driver for BF51xSonic Zhang2009-01-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | dm9601: warn on invalid mac addressWu Fengguang2009-01-081-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add warnings on invalid mac address to help disclose/debug problems. Signed-off-by: Wu Fengguang <fengguang.wu@intel.com> Acked-by: Peter Korsgaard <jacmet@sunsite.dk> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | dm9601: tell HW about random generated mac addressWu Fengguang2009-01-081-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Otherwise unicast RX will only work in promisc mode. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk> Signed-off-by: Wu Fengguang <fengguang.wu@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | hp100: update to net_device_opsStephen Hemminger2009-01-071-8/+24
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | b44: convert to net_device_opsStephen Hemminger2009-01-071-12/+17
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>