projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
c058ecf
)
IB/ipoib: Restore MM behavior in case of tx_ring allocation failure
author
Yuval Shaia
<yuval.shaia@oracle.com>
Wed, 13 Dec 2017 10:25:19 +0000
(12:25 +0200)
committer
Jason Gunthorpe
<jgg@mellanox.com>
Wed, 13 Dec 2017 17:31:57 +0000
(10:31 -0700)
memalloc_noio_save modifies the behavior of MM, we must restore it after
we are done.
Fixes: d83187dda9b9 ("IB/IPoIB: Convert IPoIB to memalloc_noio_* calls")
Signed-off-by: Yuval Shaia <yuval.shaia@oracle.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
drivers/infiniband/ulp/ipoib/ipoib_cm.c
patch
|
blob
|
history
diff --git
a/drivers/infiniband/ulp/ipoib/ipoib_cm.c
b/drivers/infiniband/ulp/ipoib/ipoib_cm.c
index 87f4bd99cdf7102e1e6e43c23a03615103d13b2c..2c13123bfd69499e3ac7661871d176c57979664b 100644
(file)
--- a/
drivers/infiniband/ulp/ipoib/ipoib_cm.c
+++ b/
drivers/infiniband/ulp/ipoib/ipoib_cm.c
@@
-1145,6
+1145,7
@@
static int ipoib_cm_tx_init(struct ipoib_cm_tx *p, u32 qpn,
noio_flag = memalloc_noio_save();
p->tx_ring = vzalloc(ipoib_sendq_size * sizeof(*p->tx_ring));
if (!p->tx_ring) {
+ memalloc_noio_restore(noio_flag);
ret = -ENOMEM;
goto err_tx;
}