1. 30 9月, 2012 2 次提交
  2. 30 7月, 2012 2 次提交
  3. 17 7月, 2012 2 次提交
  4. 19 5月, 2012 1 次提交
  5. 01 5月, 2012 1 次提交
    • E
      tg3: provide frags as skb head · 8d4057a9
      Eric Dumazet 提交于
      This patch converts tg3 driver, one of our reference drivers, to use new
      build_skb() api in frag mode.
      
      Instead of using kmalloc() to allocate the memory block that will be
      used by build_skb() as skb->head, we use a page fragment.
      
      This is a followup of patch "net: allow skb->head to be a page fragment"
      
      This allows GRO, TCP coalescing, and splice() to be more efficient.
      
      Incidentally, this also removes SLUB slow path contention in kfree()
      Signed-off-by: NEric Dumazet <edumazet@google.com>
      Cc: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>
      Cc: Herbert Xu <herbert@gondor.apana.org.au>
      Cc: Maciej Żenczykowski <maze@google.com>
      Cc: Neal Cardwell <ncardwell@google.com>
      Cc: Tom Herbert <therbert@google.com>
      Cc: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
      Cc: Ben Hutchings <bhutchings@solarflare.com>
      Cc: Matt Carlson <mcarlson@broadcom.com>
      Cc: Michael Chan <mchan@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      8d4057a9
  6. 22 3月, 2012 1 次提交
    • M
      tg3: Fix RSS ring refill race condition · 7ae52890
      Michael Chan 提交于
      The RSS feature in tg3 hardware has only one rx producer ring for all
      RSS rings.  NAPI vector 1 is special and handles the refilling of the
      rx producer ring on behalf of all RSS rings.  There is a race condition
      between these RSS NAPIs and the NAPI[1].  If NAPI[1] finishes checking
      for refill and then another RSS ring empties the rx producer ring
      before NAPI[1] exits NAPI, the chip will be completely out of SKBs in
      the rx producer ring.
      
      We fix this by adding a flag tp->rx_refill and rely on napi_schedule()/
      napi_complete() to help synchronize it to close the race condition.
      
      Update driver version to 3.123.
      Signed-off-by: NMichael Chan <mchan@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      7ae52890
  7. 23 2月, 2012 1 次提交
    • M
      tg3: Fix link check in tg3_adjust_link · 34655ad6
      Matt Carlson 提交于
      The tg3 driver tried to detect link changes by comparing the tg3 local
      active_speed member with SPEED_UNKNOWN (or formerly SPEED_INVALID).
      This check is not correct, since phylib will never set its speed member
      to either of these two values.  The code only appeared to work because
      tg3 initializes active_speed to SPEED_INVALID during tg3_init_one.  This
      patch introduces a new "old_link" tg3 member and then compares the
      phy_device's link member against it to detect link state changes.
      Signed-off-by: NMatt Carlson <mcarlson@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      34655ad6
  8. 14 2月, 2012 3 次提交
  9. 16 12月, 2011 3 次提交
  10. 09 12月, 2011 2 次提交
  11. 23 11月, 2011 1 次提交
  12. 22 11月, 2011 1 次提交
    • E
      tg3: switch to build_skb() infrastructure · 9205fd9c
      Eric Dumazet 提交于
      This is very similar to bnx2x conversion, but simpler since no special
      alignement is required, so goal was not to reduce skb truesize.
      
      Using build_skb() reduces cache line misses in the driver, since we
      use cache hot skb instead of cold ones. Number of in-flight sk_buff
      structures is lower, they are more likely recycled in SLUB caches
      while still hot.
      Signed-off-by: NEric Dumazet <eric.dumazet@gmail.com>
      CC: Matt Carlson <mcarlson@broadcom.com>
      CC: Michael Chan <mchan@broadcom.com>
      CC: Eilon Greenstein <eilong@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      9205fd9c
  13. 05 11月, 2011 4 次提交
  14. 25 10月, 2011 1 次提交
  15. 21 8月, 2011 1 次提交
  16. 11 8月, 2011 1 次提交
    • J
      broadcom: Move the Broadcom drivers · adfc5217
      Jeff Kirsher 提交于
      Moves the drivers for Broadcom devices into
      drivers/net/ethernet/broadcom/ and the necessary Kconfig and Makefile
      changes.
      
      CC: Eilon Greenstein <eilong@broadcom.com>
      CC: Michael Chan <mchan@broadcom.com>
      CC: Matt Carlson <mcarlson@broadcom.com>
      CC: Gary Zambrano <zambrano@broadcom.com>
      CC: "Maciej W. Rozycki" <macro@linux-mips.org>
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      adfc5217
  17. 28 7月, 2011 3 次提交
  18. 22 7月, 2011 1 次提交
  19. 14 7月, 2011 3 次提交
  20. 28 6月, 2011 1 次提交
    • J
      tg3: remove unnecessary read of PCI_CAP_ID_EXP · 708ebb3a
      Jon Mason 提交于
      The PCIE capability offset is saved during PCI bus walking.  Use the
      value from pci_dev instead of checking in the driver and saving it off
      the the driver specific structure.  It will remove an unnecessary search
      in the PCI configuration space if this value is referenced instead of
      reacquiring it.
      
      v2 of the patch re-adds the PCI_EXPRESS flag and adds comments
      describing why it is necessary.
      
      [ pdev->pcie_cap --> pci_pcie_cap(pdev) -DaveM ]
      Signed-off-by: NJon Mason <jdmason@kudzu.us>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      708ebb3a
  21. 15 6月, 2011 5 次提交