diff options
Diffstat (limited to 'drivers/infiniband/hw')
-rw-r--r-- | drivers/infiniband/hw/ipath/ipath_intr.c | 8 | ||||
-rw-r--r-- | drivers/infiniband/hw/ipath/ipath_srq.c | 3 |
2 files changed, 7 insertions, 4 deletions
diff --git a/drivers/infiniband/hw/ipath/ipath_intr.c b/drivers/infiniband/hw/ipath/ipath_intr.c index 92e58c921522..3b8995206657 100644 --- a/drivers/infiniband/hw/ipath/ipath_intr.c +++ b/drivers/infiniband/hw/ipath/ipath_intr.c | |||
@@ -59,9 +59,11 @@ static void ipath_clrpiobuf(struct ipath_devdata *dd, u32 pnum) | |||
59 | dev_info(&dd->pcidev->dev, | 59 | dev_info(&dd->pcidev->dev, |
60 | "Rewrite PIO buffer %u, to recover from parity error\n", | 60 | "Rewrite PIO buffer %u, to recover from parity error\n", |
61 | pnum); | 61 | pnum); |
62 | *pbuf = dwcnt+1; /* no flush required, since already in freeze */ | 62 | |
63 | while(--dwcnt) | 63 | /* no flush required, since already in freeze */ |
64 | *pbuf++ = 0; | 64 | writel(dwcnt + 1, pbuf); |
65 | while (--dwcnt) | ||
66 | writel(0, pbuf++); | ||
65 | } | 67 | } |
66 | 68 | ||
67 | /* | 69 | /* |
diff --git a/drivers/infiniband/hw/ipath/ipath_srq.c b/drivers/infiniband/hw/ipath/ipath_srq.c index f772102e4713..3366d66ce155 100644 --- a/drivers/infiniband/hw/ipath/ipath_srq.c +++ b/drivers/infiniband/hw/ipath/ipath_srq.c | |||
@@ -245,7 +245,8 @@ int ipath_modify_srq(struct ib_srq *ibsrq, struct ib_srq_attr *attr, | |||
245 | sizeof(offset_addr)); | 245 | sizeof(offset_addr)); |
246 | if (ret) | 246 | if (ret) |
247 | goto bail_free; | 247 | goto bail_free; |
248 | udata->outbuf = (void __user *) offset_addr; | 248 | udata->outbuf = |
249 | (void __user *) (unsigned long) offset_addr; | ||
249 | ret = ib_copy_to_udata(udata, &offset, | 250 | ret = ib_copy_to_udata(udata, &offset, |
250 | sizeof(offset)); | 251 | sizeof(offset)); |
251 | if (ret) | 252 | if (ret) |