diff options
Diffstat (limited to 'drivers/infiniband/hw/ipath/ipath_ud.c')
-rw-r--r-- | drivers/infiniband/hw/ipath/ipath_ud.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/ipath/ipath_ud.c b/drivers/infiniband/hw/ipath/ipath_ud.c index 38ba771b3efe..f9a3338a5fb7 100644 --- a/drivers/infiniband/hw/ipath/ipath_ud.c +++ b/drivers/infiniband/hw/ipath/ipath_ud.c | |||
@@ -176,6 +176,8 @@ static void ipath_ud_loopback(struct ipath_qp *sqp, | |||
176 | dev->n_pkt_drops++; | 176 | dev->n_pkt_drops++; |
177 | goto bail_sge; | 177 | goto bail_sge; |
178 | } | 178 | } |
179 | /* Make sure entry is read after head index is read. */ | ||
180 | smp_rmb(); | ||
179 | wqe = get_rwqe_ptr(rq, tail); | 181 | wqe = get_rwqe_ptr(rq, tail); |
180 | if (++tail >= rq->size) | 182 | if (++tail >= rq->size) |
181 | tail = 0; | 183 | tail = 0; |