mirror of
https://github.com/torvalds/linux.git
synced 2024-12-20 18:11:47 +00:00
RDMA/vmw_pvrdma: Use atomic memory allocation in create AH
Create address handle callback should not sleep, use GFP_ATOMIC instead of
GFP_KERNEL for memory allocation.
Fixes: 29c8d9eba5
("IB: Add vmw_pvrdma driver")
Cc: Adit Ranadive <aditr@vmware.com>
Signed-off-by: Gal Pressman <galpress@amazon.com>
Reviewed-by: Yuval Shaia <yuval.shaia@oracle.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
This commit is contained in:
parent
59590b8ad2
commit
a276a4d93b
@ -555,7 +555,7 @@ struct ib_ah *pvrdma_create_ah(struct ib_pd *pd, struct rdma_ah_attr *ah_attr,
|
|||||||
if (!atomic_add_unless(&dev->num_ahs, 1, dev->dsr->caps.max_ah))
|
if (!atomic_add_unless(&dev->num_ahs, 1, dev->dsr->caps.max_ah))
|
||||||
return ERR_PTR(-ENOMEM);
|
return ERR_PTR(-ENOMEM);
|
||||||
|
|
||||||
ah = kzalloc(sizeof(*ah), GFP_KERNEL);
|
ah = kzalloc(sizeof(*ah), GFP_ATOMIC);
|
||||||
if (!ah) {
|
if (!ah) {
|
||||||
atomic_dec(&dev->num_ahs);
|
atomic_dec(&dev->num_ahs);
|
||||||
return ERR_PTR(-ENOMEM);
|
return ERR_PTR(-ENOMEM);
|
||||||
|
Loading…
Reference in New Issue
Block a user