greybus: fix a bug in gb_operation_gbuf_complete()
authorAlex Elder <elder@linaro.org>
Wed, 5 Nov 2014 22:03:08 +0000 (16:03 -0600)
committerGreg Kroah-Hartman <greg@kroah.com>
Wed, 5 Nov 2014 22:12:25 +0000 (14:12 -0800)
The gbuf completion routine was using the request payload pointers
(which point at the area *past* the message header) rather than the
header.  This didn't matter much for now, it was only used in the
error path.

Signed-off-by: Alex Elder <elder@linaro.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
drivers/staging/greybus/operation.c

index cc278bc..9cb9c9d 100644 (file)
@@ -283,9 +283,9 @@ static void gb_operation_gbuf_complete(struct gbuf *gbuf)
                int type;
 
                if (gbuf == operation->request)
-                       header = operation->request_payload;
+                       header = operation->request->transfer_buffer;
                else if (gbuf == operation->response)
-                       header = operation->response_payload;
+                       header = operation->response->transfer_buffer;
                else
                        header = NULL;