Commit c7aae4e6 authored by Bryan O'Donoghue's avatar Bryan O'Donoghue Committed by Greg Kroah-Hartman

greybus: loopback: Retrun -ENOMEM if operation allocation fails

If operation allocation fails we should return -ENOMEM in the asynchronous
operation send routine. If we don't return here then the
gb_loopback_async_operation_put() later can dereference a NULL pointer if
the previous gb_operation_create() failed.
Reported-by: default avatarJohan Hovold <johan@hovoldconsulting.com>
Signed-off-by: default avatarBryan O'Donoghue <bryan.odonoghue@linaro.org>
Reviewed-by: default avatarJohan Hovold <johan@hovoldconsulting.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
parent 578a0ab8
...@@ -580,8 +580,8 @@ static int gb_loopback_async_operation(struct gb_loopback *gb, int type, ...@@ -580,8 +580,8 @@ static int gb_loopback_async_operation(struct gb_loopback *gb, int type,
operation = gb_operation_create(gb->connection, type, request_size, operation = gb_operation_create(gb->connection, type, request_size,
response_size, GFP_KERNEL); response_size, GFP_KERNEL);
if (!operation) { if (!operation) {
ret = -ENOMEM; kfree(op_async);
goto error; return -ENOMEM;
} }
if (request_size) if (request_size)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment