1. 27 7月, 2009 1 次提交
  2. 27 5月, 2009 2 次提交
    • J
      igb: Record host memory receive overflow in net_stats · 3ea73afa
      Jesper Dangaard Brouer 提交于
      Based on previous patch from Jesper Dangaard Brouer.
      
      The RNBC (Receive No Buffers Count) register for the 82576, indicate
      that frames were received when there were no available buffers in host
      memory to store those frames (receive descriptor head and tail
      pointers were equal).  The packet is still received by the NIC if
      there is space in the FIFO on the NIC.
      
      As the RNBC value is not a packet drop, the driver stores this value
      in net_stats.rx_fifo_errors to indicate that there were no system
      buffers available for the incoming packet.  Actual dropped packets
      are counted in the MPC value.
      
      Saving the stats in dev->net_stats makes it visible via
      /proc/net/dev as "fifo", and thus viewable to ifconfig
      as "overruns" and 'netstat -i' as "RX-OVR".
      
      The Receive No Buffers Count (RNBC) can already be queried by
      ethtool -S as "rx_no_buffer_count".
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      CC: Jesper Dangaard Brouer <hawk@comx.dk>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      3ea73afa
    • J
      igb: Implement reading of reg RQDPC (Receive Queue Drop Packet Count) · 8c0ab70a
      Jesper Dangaard Brouer 提交于
      Based on the previous patches from Jesper Dangaard Brouer <hawk@comx.dk>
      
      Implement reading the per queue drop stats register
      RQDPC (Receive Queue Drop Packet Count).  It counts the number of
      packets dropped by a queue due to lack of descriptors available.
      
      Notice RQDPC (Receive Queue Drop Packet Count) stats only gets
      incremented, if the DROP_EN bit it set (in the SRRCTL register
      for that queue).  If DROP_EN bit is NOT set, then the some what
      equivalent count is stored in RNBC (not per queue basis).
      
      The RQDPC register is only 12 bit, thus the precision might
      suffer due to overrun in-netween the watchdog polling interval.
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      CC: Jesper Dangaard Brouer <hawk@comx.dk>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      8c0ab70a
  3. 07 5月, 2009 1 次提交
  4. 28 4月, 2009 1 次提交
  5. 02 4月, 2009 1 次提交
  6. 15 3月, 2009 1 次提交
  7. 20 2月, 2009 1 次提交
  8. 16 2月, 2009 2 次提交
  9. 07 2月, 2009 6 次提交
  10. 22 1月, 2009 1 次提交
    • H
      igb: Replace LRO with GRO · 5c0999b7
      Herbert Xu 提交于
      This patch makes igb invoke the GRO hooks instead of LRO.  As
      GRO has a compatible external interface to LRO this is a very
      straightforward replacement.
      
      Three things of note:
      
      1) I've kept the LRO Kconfig option until we decide to enable
      GRO across the board at which point it can also be killed.
      
      2) The poll_controller stuff is broken in igb as it tries to do
      the same work as the normal poll routine.  Since poll_controller
      can be called in the middle of a poll, this can't be good.
      
      I noticed this because poll_controller can invoke the GRO hooks
      without flushing held GRO packets.
      
      However, this should be harmless (assuming the poll_controller
      bug above doesn't kill you first :) since the next ->poll will
      clear the backlog.  The only time when we'll have a problem is
      if we're already executing the GRO code on the same ring, but
      that's no worse than what happens now.
      
      3) I kept the ip_summed check before calling GRO so that we're
      on par with previous behaviour.
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      5c0999b7
  11. 10 12月, 2008 1 次提交
  12. 25 11月, 2008 1 次提交
  13. 22 11月, 2008 1 次提交
  14. 20 11月, 2008 1 次提交
  15. 16 11月, 2008 1 次提交
  16. 13 11月, 2008 1 次提交
    • W
      netdevice: safe convert to netdev_priv() #part-2 · 4cf1653a
      Wang Chen 提交于
      We have some reasons to kill netdev->priv:
      1. netdev->priv is equal to netdev_priv().
      2. netdev_priv() wraps the calculation of netdev->priv's offset, obviously
         netdev_priv() is more flexible than netdev->priv.
      But we cann't kill netdev->priv, because so many drivers reference to it
      directly.
      
      This patch is a safe convert for netdev->priv to netdev_priv(netdev).
      Since all of the netdev->priv is only for read.
      But it is too big to be sent in one mail.
      I split it to 4 parts and make every part smaller than 100,000 bytes,
      which is max size allowed by vger.
      Signed-off-by: NWang Chen <wangchen@cn.fujitsu.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      4cf1653a
  17. 27 8月, 2008 2 次提交
  18. 11 7月, 2008 5 次提交
  19. 12 2月, 2008 1 次提交
  20. 29 1月, 2008 1 次提交
    • A
      igb: PCI-Express 82575 Gigabit Ethernet driver · 9d5c8243
      Auke Kok 提交于
      We are pleased to announce a new Gigabit Ethernet product and its
      driver to the linux community. This product is the Intel(R) 82575
      Gigabit Ethernet adapter family. Physical adapters will be available
      to the public soon. These adapters come in 2- and 4-port versions
      (copper PHY) currently. Other variants will be available later.
      
      The 82575 chipset supports significantly different features that
      warrant a new driver. The descriptor format is (just like the
      ixgbe driver) different. The device can use multiple MSI-X vectors
      and multiple queues for both send and receive. This allows us to
      optimize some of the driver code specifically as well compared to
      the e1000-supported devices.
      
      This version of the igb driver no lnger uses fake netdevices and
      incorporates napi_struct members for each ring to do the multi-
      queue polling. multi-queue is enabled by default and the driver
      supports NAPI mode only.
      
      All the namespace collisions should be gone in this version too. The
      register macro's have been condensed to improve readability.
      Signed-off-by: NAuke Kok <auke-jan.h.kok@intel.com>
      Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      9d5c8243