1. 13 6月, 2009 8 次提交
  2. 12 6月, 2009 2 次提交
  3. 09 6月, 2009 3 次提交
  4. 05 6月, 2009 1 次提交
  5. 02 6月, 2009 2 次提交
    • N
      e1000: add missing length check to e1000 receive routine · ea30e119
      Neil Horman 提交于
      	Patch to fix bad length checking in e1000.  E1000 by default does two
      things:
      
      1) Spans rx descriptors for packets that don't fit into 1 skb on recieve
      2) Strips the crc from a frame by subtracting 4 bytes from the length prior to
      doing an skb_put
      
      Since the e1000 driver isn't written to support receiving packets that span
      multiple rx buffers, it checks the End of Packet bit of every frame, and
      discards it if its not set.  This places us in a situation where, if we have a
      spanning packet, the first part is discarded, but the second part is not (since
      it is the end of packet, and it passes the EOP bit test).  If the second part of
      the frame is small (4 bytes or less), we subtract 4 from it to remove its crc,
      underflow the length, and wind up in skb_over_panic, when we try to skb_put a
      huge number of bytes into the skb.  This amounts to a remote DOS attack through
      careful selection of frame size in relation to interface MTU.  The fix for this
      is already in the e1000e driver, as well as the e1000 sourceforge driver, but no
      one ever pushed it to e1000.  This is lifted straight from e1000e, and prevents
      small frames from causing the underflow described above
      Signed-off-by: NNeil Horman <nhorman@tuxdriver.com>
      Tested-by: NAndy Gospodarek <andy@greyhouse.net>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ea30e119
    • E
      forcedeth: add phy_power_down parameter, leave phy powered up by default (v2) · 5a9a8e32
      Ed Swierk 提交于
      Add a phy_power_down parameter to forcedeth: set to 1 to power down the
      phy and disable the link when an interface goes down; set to 0 to always
      leave the phy powered up.
      
      The phy power state persists across reboots; Windows, some BIOSes, and
      older versions of Linux don't bother to power up the phy again, forcing
      users to remove all power to get the interface working (see
      http://bugzilla.kernel.org/show_bug.cgi?id=13072).  Leaving the phy
      powered on is the safest default behavior.  Users accustomed to seeing
      the link state reflect the interface state and/or wanting to minimize
      power consumption can set phy_power_down=1 if compatibility with other
      OSes is not an issue.
      Signed-off-by: NEd Swierk <eswierk@aristanetworks.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      5a9a8e32
  6. 01 6月, 2009 1 次提交
  7. 30 5月, 2009 2 次提交
  8. 29 5月, 2009 5 次提交
  9. 27 5月, 2009 3 次提交
    • M
      bfin_mac: fix build error due to net_device_ops convert · b63dc8fe
      Mike Frysinger 提交于
      The previous commit "convert to net_device_ops" broke the Blackfin MAC
      driver as it declared the new structure before the function it used:
        CC      drivers/net/bfin_mac.o
      drivers/net/bfin_mac.c:984: error: ‘bfin_mac_close’ undeclared here (not in a function)
      make[1]: *** [drivers/net/bfin_mac.o] Error 1
      Signed-off-by: NMike Frysinger <vapier@gentoo.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      b63dc8fe
    • A
      atlx: move modinfo data from atlx.h to atl1.c · 5ad18900
      Alex Chiang 提交于
      Both atl1.c and atl2.c include atlx.h, which defines some modinfo
      stuff. But atl2.c seems like it doesn't want the modinfo data
      from atlx.h, as it defines its own.
      
      Running modinfo on atl2.ko, we get conflicting information:
      
      $ /sbin/modinfo drivers/net/atlx/atl2.ko | egrep "version|description|author"
      version:        2.2.3
      description:    Atheros Fast Ethernet Network Driver
      author:         Atheros Corporation <xiong.huang@atheros.com>, Chris Snook <csnook@redhat.com>
      version:        2.1.3
      author:         Xiong Huang <xiong.huang@atheros.com>, 	Chris Snook <csnook@redhat.com>, Jay Cliburn <jcliburn@gmail.com>
      
      Move the modinfo data out of atlx.h and into atl1.c to eliminate
      the confusion:
      
      $ /sbin/modinfo drivers/net/atlx/atl1.ko | egrep "version|description|author"
      version:        2.1.3
      author:         Xiong Huang <xiong.huang@atheros.com>, 	Chris Snook <csnook@redhat.com>, Jay Cliburn <jcliburn@gmail.com>
      description:    Atheros L1 Gigabit Ethernet Driver
      
      $ /sbin/modinfo drivers/net/atlx/atl2.ko | egrep "version|description|author"
      version:        2.2.3
      description:    Atheros Fast Ethernet Network Driver
      author:         Atheros Corporation <xiong.huang@atheros.com>, Chris Snook <csnook@redhat.com>
      Reported-by: NScott Scriven <scott.scriven@hp.com>
      Signed-off-by: NAlex Chiang <achiang@hp.com>
      Acked-by: NJay Cliburn <jcliburn@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      5ad18900
    • X
      gianfar: fix babbling rx error event bug · 18a36c1a
      Xiaotian Feng 提交于
      Gianfar interrupt handler uses IEVENT_ERR_MASK to check and handle errors.
      Babbling RX error (IEVENT_BABR) should be included in IEVENT_ERROR_MASK.
      Otherwise if BABR is raised, it never gets handled nor cleared, and an
      interrupt storm results. This has been observed to happen on sending a
      burst of ethernet frames to a gianfar based board.
      Signed-off-by: NXiaotian Feng <xiaotian.feng@windriver.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      18a36c1a
  10. 26 5月, 2009 2 次提交
    • D
      r8169: avoid losing MSI interrupts · f11a377b
      David Dillow 提交于
      The 8169 chip only generates MSI interrupts when all enabled event
      sources are quiescent and one or more sources transition to active. If
      not all of the active events are acknowledged, or a new event becomes
      active while the existing ones are cleared in the handler, we will not
      see a new interrupt.
      
      The current interrupt handler masks off the Rx and Tx events once the
      NAPI handler has been scheduled, which opens a race window in which we
      can get another Rx or Tx event and never ACK'ing it, stopping all
      activity until the link is reset (ifconfig down/up). Fix this by always
      ACK'ing all event sources, and loop in the handler until we have all
      sources quiescent.
      Signed-off-by: NDavid Dillow <dave@thedillows.org>
      Tested-by: NMichael Buesch <mb@bu3sch.de>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f11a377b
    • F
      mac8390: fix regression caused during net_device_ops conversion · 217cbfa8
      Finn Thain 提交于
      Changeset ca17584b ("mac8390: update
      to net_device_ops") broke mac8390 by adding 8390.o to the link. That
      meant that lib8390.c was included twice, once in mac8390.c and once in
      8390.c, subject to different macros. This patch reverts that by
      avoiding the wrappers in 8390.c. They seem to be of no value since
      COMPAT_NET_DEV_OPS is going away soon.
      
      Tested with a Kinetics EtherPort card.
      Signed-off-by: NFinn Thain <fthain@telegraphics.com.au>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      217cbfa8
  11. 25 5月, 2009 2 次提交
  12. 24 5月, 2009 2 次提交
  13. 22 5月, 2009 1 次提交
    • I
      wimax/i2400m: usb: fix device reset on autosuspend while not yet idle · e069c0cf
      Inaky Perez-Gonzalez 提交于
      When the i2400m is connected to a network, the host interface (USB)
      cannot be suspended. For that to happen, the device has to have
      negotiated with the basestation to put the link on IDLE state.
      
      If the host tries to put the device in standby while it is connected
      but not idle, the device resets, as the driver should not do that.
      
      To avoid triggering that, when the USB susbsytem requires the driver
      to autosuspend the device, the driver checks if the device is not yet
      idle. If it is not, the request is rejected (will be retried again
      later on after the autosuspend timeout). At some point the device will
      enter idle and the request will succeed (unless of course, there is
      network traffic, but at that point, there is no idle neither in the
      link or the host interface).
      Signed-off-by: NInaky Perez-Gonzalez <inaky@linux.intel.com>
      e069c0cf
  14. 21 5月, 2009 6 次提交