diff --git a/drivers/staging/android/binder.c b/drivers/staging/android/binder.c index 80793e84ae0e9317794d5bea9c797c43ff48db5f..951d9e8c7d39d69a15f674170888edefc8434e10 100644 --- a/drivers/staging/android/binder.c +++ b/drivers/staging/android/binder.c @@ -3579,13 +3579,25 @@ static int binder_transactions_show(struct seq_file *m, void *unused) static int binder_proc_show(struct seq_file *m, void *unused) { + struct binder_proc *itr; struct binder_proc *proc = m->private; + struct hlist_node *pos; int do_lock = !binder_debug_no_lock; + bool valid_proc = false; if (do_lock) binder_lock(__func__); - seq_puts(m, "binder proc state:\n"); - print_binder_proc(m, proc, 1); + + hlist_for_each_entry(itr, pos, &binder_procs, proc_node) { + if (itr == proc) { + valid_proc = true; + break; + } + } + if (valid_proc) { + seq_puts(m, "binder proc state:\n"); + print_binder_proc(m, proc, 1); + } if (do_lock) binder_unlock(__func__); return 0;