]> git.baikalelectronics.ru Git - kernel.git/commit
IB/mlx4: Don't call dma_free_coherent() with irqs disabled
authorVladimir Sokolovsky <vlad@dev.mellanox.co.il>
Tue, 11 Jan 2011 01:42:06 +0000 (17:42 -0800)
committerRoland Dreier <rolandd@cisco.com>
Tue, 11 Jan 2011 01:42:06 +0000 (17:42 -0800)
commit28423036d1696b42a10bda7eb700edbeb6365962
tree2bd80f9204eaa867bbd7d4aee3ca51c11f3c5f75
parent6e2810149ac4be0388e755d34fb411cdd5e9cb90
IB/mlx4: Don't call dma_free_coherent() with irqs disabled

mlx4_ib_free_cq_buf() should not be called under spin_lock_irq() since
it calls dma_free_coherent(), which needs irqs enabled.  Fix this by
deferring the free to outside the locked region.

This was found due to the

WARN_ON(irqs_disabled());

in swiotlb_free_coherent().

Signed-off-by: Vladimir Sokolovsky <vlad@mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
drivers/infiniband/hw/mlx4/cq.c