Skip to contentSkip to conversation

android: binder: debug message improvements

PATCH In review Sherry Yang 2 participants 4 messages Jul 27, 2018 – Aug 2, 2018 Android drivers

lore
Share & tools
lore
#0 lore raw

cover android: binder: debug message improvements

This patch set includes extra_buffers_size in trace so that the total transaction size can be inferred. It also ratelimits debug messages to avoid excessive log spams reported by sysbot.

android: binder: Show extra_buffers_size in trace
android: binder: Rate-limit debug and userspace triggered err msgs

 drivers/android/binder.c       |  5 +++--
 drivers/android/binder_alloc.c | 41 ++++++++++++++++++--------
 drivers/android/binder_trace.h |  7 +++++--
 3 files changed, 34 insertions(+), 19 deletions(-)
#1 lore raw

PATCH 1/2 android: binder: Show extra_buffers_size in trace

Add extra_buffers_size to the binder_transaction_alloc_buf tracepoint.

---
 drivers/android/binder_trace.h | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)
drivers/android/binder_trace.h +5 -2
index 76e3b9c8a8a2..588eb3ec3507 100644
@@ -248,14 +248,17 @@ DECLARE_EVENT_CLASS(binder_buffer_class,
 		__field(int, debug_id)
 		__field(size_t, data_size)
 		__field(size_t, offsets_size)
+		__field(size_t, extra_buffers_size)
 	),
 	TP_fast_assign(
 		__entry->debug_id = buf->debug_id;
 		__entry->data_size = buf->data_size;
 		__entry->offsets_size = buf->offsets_size;
+		__entry->extra_buffers_size = buf->extra_buffers_size;
 	),
-	TP_printk("transaction=%d data_size=%zd offsets_size=%zd",
-		  __entry->debug_id, __entry->data_size, __entry->offsets_size)
+	TP_printk("transaction=%d data_size=%zd offsets_size=%zd extra_buffers_size=%zd",
+		  __entry->debug_id, __entry->data_size, __entry->offsets_size,
+		  __entry->extra_buffers_size)
 );
 
 DEFINE_EVENT(binder_buffer_class, binder_transaction_alloc_buf,
Signature · 1 line
2.18.0.345.g5c9ce644c3-goog
#2 lore raw

PATCH 2/2 android: binder: Rate-limit debug and userspace triggered err msgs

In reply to Sherry Yang

Use rate-limited debug messages where userspace can trigger excessive log spams.

---
 drivers/android/binder.c       |  5 +++--
 drivers/android/binder_alloc.c | 41 +++++++++++++++++++++-------------
 2 files changed, 29 insertions(+), 17 deletions(-)
drivers/android/binder.c +3 -2
index 95283f3bb51c..78cc1190282c 100644
@@ -71,6 +71,7 @@
 #include <linux/pid_namespace.h>
 #include <linux/security.h>
 #include <linux/spinlock.h>
+#include <linux/ratelimit.h>
 
 #include <uapi/linux/android/binder.h>
 #include "binder_alloc.h"
@@ -161,13 +162,13 @@ module_param_call(stop_on_user_error, binder_set_stop_on_user_error,
 #define binder_debug(mask, x...) \
 	do { \
 		if (binder_debug_mask & mask) \
-			pr_info(x); \
+			pr_info_ratelimited(x); \
 	} while (0)
 
 #define binder_user_error(x...) \
 	do { \
 		if (binder_debug_mask & BINDER_DEBUG_USER_ERROR) \
-			pr_info(x); \
+			pr_info_ratelimited(x); \
 		if (binder_stop_on_user_error) \
 			binder_stop_on_user_error = 2; \
 	} while (0)
drivers/android/binder_alloc.c +26 -15

93 lines not on this page · raw message

Signature · 1 line
2.18.0.345.g5c9ce644c3-goog
#3 lore raw

Re: [PATCH 2/2] android: binder: Rate-limit debug and userspace triggered err msgs

Quoted 9 lines · Sherry Yang

Use rate-limited debug messages where userspace can trigger excessive log spams.

---
 drivers/android/binder.c       |  5 +++--
 drivers/android/binder_alloc.c | 41 +++++++++++++++++++++-------------
 2 files changed, 29 insertions(+), 17 deletions(-)

This patch does not apply to my tree at all. Can you please rebase it and resend?

thanks,

greg k-h