UPSTREAM: binder: fix incorrect cmd to binder_stat_br
authorTodd Kjos <tkjos@android.com>
Tue, 8 Aug 2017 22:48:36 +0000 (15:48 -0700)
committerDanny Wood <danwood76@gmail.com>
Tue, 16 Feb 2021 14:09:26 +0000 (14:09 +0000)
commit 26549d177410 ("binder: guarantee txn complete / errors delivered
in-order") passed the locally declared and undefined cmd
to binder_stat_br() which results in a bogus cmd field in a trace
event and BR stats are incremented incorrectly.

Change to use e->cmd which has been initialized.

Signed-off-by: Todd Kjos <tkjos@google.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Fixes: 26549d177410 ("binder: guarantee txn complete / errors delivered in-order")
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 4f9adc8f91ba996374cd9487ecd1180fa99b9438)
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Id8b0eefbee754408eb97ffb7050389aeeecb2214

drivers/android/binder.c

index 1cae7d2015275932e9c0ceb6c1c7d01a3d08b7b6..681869396ad0abad9630bff9a2a839468e7f7e72 100644 (file)
@@ -4165,7 +4165,7 @@ retry:
                        e->cmd = BR_OK;
                        ptr += sizeof(uint32_t);
 
-                       binder_stat_br(proc, thread, cmd);
+                       binder_stat_br(proc, thread, e->cmd);
                } break;
                case BINDER_WORK_TRANSACTION_COMPLETE: {
                        binder_inner_proc_unlock(proc);