android_kernel_google_msm/drivers/net
Yevgeny Petrilin 730c41d5ba mlx4: Replacing pool_lock with mutex
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: Yevgeny Petrilin <yevgenyp@mellanox.co.il>
Signed-off-by: David S. Miller <davem@davemloft.net>
2012-02-21 15:27:23 -05:00
..
appletalk
arcnet
bonding bonding: fix enslaving in alb mode when link down 2012-01-18 20:59:53 -05:00
caif
can can: sja1000: fix isr hang when hw is unplugged under load 2012-02-20 11:36:56 +01:00
cris
dsa drivers/net: dsa/mv88e6xxx.c files need linux/module.h 2012-01-24 15:44:50 -05:00
ethernet mlx4: Replacing pool_lock with mutex 2012-02-21 15:27:23 -05:00
fddi
hamradio
hippi
hyperv net/hyperv: Fix the page buffer when an RNDIS message goes beyond page boundary 2012-02-02 14:35:12 -05:00
irda Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2012-01-14 13:05:21 -08:00
phy kernel-doc: fix new warning in net/phy/mdio_bus.c 2012-01-22 15:08:45 -05:00
plip
ppp pptp: Accept packet with seq zero 2012-01-12 20:05:28 -08:00
slip
team team: send only changed options/ports via netlink 2012-01-24 15:51:00 -05:00
tokenring CONFIG_TR/CONFIG_LLC: work around the problem with select 2012-02-07 13:06:14 -05:00
usb zaurus: Add ID for C-750/C-760/C-860/SL-C3000 PDA in MDLM mode 2012-02-21 15:27:23 -05:00
vmxnet3 vmxnet3: cap copy length at size of skb to prevent dropped frames on tx 2012-02-19 18:57:51 -05:00
wan
wimax Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2012-01-08 13:21:22 -08:00
wireless ath9k: stop on rates with idx -1 in ath9k rate control's .tx_status 2012-02-15 13:56:15 -05:00
xen-netback Merge branch 'stable/for-linus-3.3' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen 2012-01-10 10:09:59 -08:00
dummy.c
eql.c
ifb.c
Kconfig Merge branch 'staging-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging 2012-01-09 12:18:17 -08:00
LICENSE.SRC
loopback.c
macvlan.c macvlan: fix a possible use after free 2012-01-23 13:56:18 -05:00
macvtap.c
Makefile Merge branch 'staging-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging 2012-01-09 12:18:17 -08:00
mdio.c
mii.c
netconsole.c
rionet.c
sb1000.c
Space.c
sungem_phy.c
tun.c
veth.c veth: Enforce minimum size of VETH_INFO_PEER 2012-02-15 14:59:20 -05:00
virtio_net.c virtio: net: Add freeze, restore handlers to support S4 2012-01-12 15:44:46 +10:30
xen-netfront.c xen-netfront: correct MAX_TX_TARGET calculation. 2012-01-26 13:48:35 -05:00