1. 17 11月, 2011 2 次提交
  2. 16 11月, 2011 1 次提交
  3. 15 11月, 2011 4 次提交
  4. 14 11月, 2011 18 次提交
  5. 13 11月, 2011 4 次提交
  6. 09 11月, 2011 6 次提交
  7. 08 11月, 2011 5 次提交
    • D
      forcedeth: fix a few sparse warnings (variable shadowing) · e45a6187
      david decotigny 提交于
      This fixes the following sparse warnings:
      drivers/net/ethernet/nvidia/forcedeth.c:2113:7: warning: symbol 'size' shadows an earlier one
      drivers/net/ethernet/nvidia/forcedeth.c:2102:6: originally declared here
      drivers/net/ethernet/nvidia/forcedeth.c:2155:7: warning: symbol 'size' shadows an earlier one
      drivers/net/ethernet/nvidia/forcedeth.c:2102:6: originally declared here
      drivers/net/ethernet/nvidia/forcedeth.c:2227:7: warning: symbol 'size' shadows an earlier one
      drivers/net/ethernet/nvidia/forcedeth.c:2215:6: originally declared here
      drivers/net/ethernet/nvidia/forcedeth.c:2271:7: warning: symbol 'size' shadows an earlier one
      drivers/net/ethernet/nvidia/forcedeth.c:2215:6: originally declared here
      drivers/net/ethernet/nvidia/forcedeth.c:2986:20: warning: symbol 'addr' shadows an earlier one
      drivers/net/ethernet/nvidia/forcedeth.c:2963:6: originally declared here
      Signed-off-by: NDavid Decotigny <david.decotigny@google.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      e45a6187
    • M
      forcedeth: Improve stats counters · 0bdfea8b
      Mandeep Baines 提交于
      Rx byte count was off; instead use the hardware's count.  Tx packet
      count was counting pre-TSO packets; instead count on-the-wire packets.
      Report hardware dropped frame count as rx_fifo_errors.
      
      - The count of transmitted packets reported by the forcedeth driver
        reports pre-TSO (TCP Segmentation Offload) packet counts and not the
        count of the number of packets sent on the wire. This change fixes
        the forcedeth driver to report the correct count. Fixed the code by
        copying the count stored in the NIC H/W to the value reported by the
        driver.
      
      - Count rx_drop_frame errors as rx_fifo_errors:
        We see a lot of rx_drop_frame errors if we disable the rx bottom-halves
        for too long.  Normally, rx_fifo_errors would be counted in this case.
        The rx_drop_frame error count is private to forcedeth and is not
        reported by ifconfig or sysfs.  The rx_fifo_errors count is currently
        unused in the forcedeth driver.  It is reported by ifconfig as overruns.
        This change reports rx_drop_frame errors as rx_fifo_errors.
      Signed-off-by: NDavid Decotigny <david.decotigny@google.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      0bdfea8b
    • D
      forcedeth: remove unneeded stats updates · 4687f3f3
      david decotigny 提交于
      Function ndo_get_stats() updates most of the stats from hardware
      registers, making the manual updates un-needed. This change removes
      these manual updates. Main exception is rx_missed_errors which needs
      manual update.
      
      Another exception is rx_packets, still updated manually in this commit
      to make sure this patch doesn't change behavior of driver. This will
      be addressed by a future patch.
      Signed-off-by: NDavid Decotigny <david.decotigny@google.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      4687f3f3
    • M
      forcedeth: Acknowledge only interrupts that are being processed · 2a4e7a08
      Mike Ditto 提交于
      This is to avoid a race, accidentally acknowledging an interrupt that
      we didn't notice and won't immediately process.  This is based solely
      on code inspection; it is not known if there was an actual bug here.
      Signed-off-by: NDavid Decotigny <david.decotigny@google.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      2a4e7a08
    • D
      forcedeth: fix race when unloading module · f9c4082d
      david decotigny 提交于
      When forcedeth module is unloaded, there exists a path that can lead
      to mod_timer() after del_timer_sync(), causing an oops. This patch
      short-circuits this unneeded path, which originates in
      nv_get_ethtool_stats().
      
      Tested:
        x86_64 16-way + 3 ethtool -S infinite loops + 100Mbps incoming traffic
        + rmmod/modprobe/ifconfig in a loop
      
      Initial-Author: Salman Qazi <sqazi@google.com>
      Discussion: http://patchwork.ozlabs.org/patch/123548/Signed-off-by: NDavid Decotigny <david.decotigny@google.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f9c4082d