1. 13 3月, 2012 1 次提交
  2. 08 3月, 2012 3 次提交
  3. 07 3月, 2012 4 次提交
  4. 06 3月, 2012 2 次提交
  5. 03 3月, 2012 2 次提交
  6. 02 3月, 2012 2 次提交
  7. 01 3月, 2012 1 次提交
    • M
      tg3: Fix tg3_get_stats64 for 5700 / 5701 devs · 65ec698d
      Matt Carlson 提交于
      tg3_get_stats64() takes tp->lock when dealing with non-serdes bcm5700
      and bcm5701 devices.  However, functions that call tg3_halt() have
      already acquired tp->lock.  When tg3_get_stats64() is called in
      tg3_halt(), deadlock will occur.
      
      This patch fixes the problem by separating the stat gathering code into
      a new tg3_get_nstats() function.  tg3_get_stats64() is recoded to call
      this function and take tp->lock.  The code that takes tp->lock in
      tg3_calc_crc_errors() has been removed.  Function signatures have been
      cleaned up too.
      Signed-off-by: NMatt Carlson <mcarlson@broadcom.com>
      Signed-off-by: NMichael Chan <mchan@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      65ec698d
  8. 25 2月, 2012 2 次提交
  9. 24 2月, 2012 2 次提交
  10. 23 2月, 2012 3 次提交
  11. 22 2月, 2012 2 次提交
    • Y
      mlx4: Setting new port types after all interfaces unregistered · 3d8f9308
      Yevgeny Petrilin 提交于
      In port type change flow, need to set the new port types only after
      all interfaces have finished the unregister process.
      Otherwise, during unregister, one of the interfaces might issue a SET_PORT
      command with wrong port types, it can cause bad FW behavior.
      Signed-off-by: NYevgeny Petrilin <yevgenyp@mellanox.co.il>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      3d8f9308
    • Y
      mlx4: Replacing pool_lock with mutex · 730c41d5
      Yevgeny Petrilin 提交于
      Under the spinlock we call request_irq(), which allocates memory with GFP_KERNEL,
      This causes the following trace when DEBUG_SPINLOCK is enabled, it can cause
      the following trace:
      
       BUG: spinlock wrong CPU on CPU#2, ethtool/2595
       lock: ffff8801f9cbc2b0, .magic: dead4ead, .owner: ethtool/2595, .owner_cpu: 0
       Pid: 2595, comm: ethtool Not tainted 3.0.18 #2
       Call Trace:
       spin_bug+0xa2/0xf0
       do_raw_spin_unlock+0x71/0xa0
       _raw_spin_unlock+0xe/0x10
       mlx4_assign_eq+0x12b/0x190 [mlx4_core]
       mlx4_en_activate_cq+0x252/0x2d0 [mlx4_en]
       ? mlx4_en_activate_rx_rings+0x227/0x370 [mlx4_en]
       mlx4_en_start_port+0x189/0xb90 [mlx4_en]
       mlx4_en_set_ringparam+0x29a/0x340 [mlx4_en]
       dev_ethtool+0x816/0xb10
       ? dev_get_by_name_rcu+0xa4/0xe0
       dev_ioctl+0x2b5/0x470
       handle_mm_fault+0x1cd/0x2d0
       sock_do_ioctl+0x5d/0x70
       sock_ioctl+0x79/0x2f0
       do_vfs_ioctl+0x8c/0x340
       sys_ioctl+0xa1/0xb0
       system_call_fastpath+0x16/0x1b
      
      Replacing with mutex, which is enough in this case.
      Signed-off-by: NYevgeny Petrilin <yevgenyp@mellanox.co.il>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      730c41d5
  12. 21 2月, 2012 1 次提交
  13. 20 2月, 2012 3 次提交
  14. 16 2月, 2012 8 次提交
  15. 15 2月, 2012 2 次提交
  16. 14 2月, 2012 2 次提交