greybus: connection: fix non-atomic allocations under spin lock

Use GFP_ATOMIC for IDA memory allocations under spin lock, which must
not sleep.

Signed-off-by: Johan Hovold <johan@hovoldconsulting.com>
Reviewed-by: Alex Elder <elder@linaro.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
This commit is contained in:
Johan Hovold 2015-02-12 11:22:47 +08:00 committed by Greg Kroah-Hartman
parent 5f345a5d39
commit 067f3b6bfa

View file

@ -63,7 +63,7 @@ static bool gb_connection_hd_cport_id_alloc(struct gb_connection *connection)
int id;
spin_lock_irq(&gb_connections_lock);
id = ida_simple_get(ida, 0, HOST_DEV_CPORT_ID_MAX, GFP_KERNEL);
id = ida_simple_get(ida, 0, HOST_DEV_CPORT_ID_MAX, GFP_ATOMIC);
spin_unlock_irq(&gb_connections_lock);
if (id < 0)
return false;