Jelajahi Sumber

IB/mlx4: Fix uninitialized spinlock for 32-bit archs

uar_lock spinlock was used in mlx4_ib_cq_arm without being initialized
(this only affects 32-bit archs, because uar_lock is not used on
64-bit archs and MLX4_INIT_DOORBELL_LOCK() is a NOP).

Signed-off-by: Jack Morgenstein <jackm@dev.mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
Jack Morgenstein 18 tahun lalu
induk
melakukan
26c6bc7b81
1 mengubah file dengan 1 tambahan dan 0 penghapusan
  1. 1 0
      drivers/infiniband/hw/mlx4/main.c

+ 1 - 0
drivers/infiniband/hw/mlx4/main.c

@@ -489,6 +489,7 @@ static void *mlx4_ib_add(struct mlx4_dev *dev)
 	ibdev->uar_map = ioremap(ibdev->priv_uar.pfn << PAGE_SHIFT, PAGE_SIZE);
 	if (!ibdev->uar_map)
 		goto err_uar;
+	MLX4_INIT_DOORBELL_LOCK(&ibdev->uar_lock);
 
 	INIT_LIST_HEAD(&ibdev->pgdir_list);
 	mutex_init(&ibdev->pgdir_mutex);