diff options
author | Eli Cohen <eli@dev.mellanox.co.il> | 2014-01-14 17:45:16 +0200 |
---|---|---|
committer | Roland Dreier <roland@purestorage.com> | 2014-01-22 23:23:49 -0800 |
commit | ada388f7afad1e2e87acbfe30600fdaff9bd6327 (patch) | |
tree | 6592209193d6c069cbbad291a9b7251360d7d031 /drivers/infiniband | |
parent | 042b9adae899e1b497282d92205d3fef42d5ca8d (diff) |
IB/mlx5: Make sure doorbell record is visible before doorbell
Put a wmb() to make sure the doorbell record is visible to the HCA before we
hit doorbell.
Signed-off-by: Eli Cohen <eli@mellanox.com>
Signed-off-by: Roland Dreier <roland@purestorage.com>
Diffstat (limited to 'drivers/infiniband')
-rw-r--r-- | drivers/infiniband/hw/mlx5/qp.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/mlx5/qp.c b/drivers/infiniband/hw/mlx5/qp.c index a056c243ddc..87b7fb176f2 100644 --- a/drivers/infiniband/hw/mlx5/qp.c +++ b/drivers/infiniband/hw/mlx5/qp.c @@ -2251,6 +2251,10 @@ out: qp->db.db[MLX5_SND_DBR] = cpu_to_be32(qp->sq.cur_post); + /* Make sure doorbell record is visible to the HCA before + * we hit doorbell */ + wmb(); + if (bf->need_lock) spin_lock(&bf->lock); |