From 7a8980997d0e0dcf3f3a5d8ccf3c1d8c2840ea27 Mon Sep 17 00:00:00 2001 From: Tobias Sargeant Date: Wed, 30 Nov 2016 16:47:04 +0000 Subject: Do not generate a microdump if there are no webview pointers on the stack. The stack interest range is passed in MicrodumpExtraInfo from the client. If the extracted stack does not contain a pointer in this range, then we assume that this is not a WebView crash, and do not generate a microdump. If the stack extraction fails, we still generate a microdump (without a stack). BUG=664460 Change-Id: Ic762497f76f074a3621c7ec88a8c20ed768b9211 Reviewed-on: https://chromium-review.googlesource.com/412781 Reviewed-by: Primiano Tucci --- src/client/linux/handler/microdump_extra_info.h | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'src/client/linux/handler') diff --git a/src/client/linux/handler/microdump_extra_info.h b/src/client/linux/handler/microdump_extra_info.h index bf01f0c7..40cba1c4 100644 --- a/src/client/linux/handler/microdump_extra_info.h +++ b/src/client/linux/handler/microdump_extra_info.h @@ -40,11 +40,23 @@ struct MicrodumpExtraInfo { const char* gpu_fingerprint; const char* process_type; + // |interest_range_start| and |interest_range_end| specify a range + // in the target process address space. Microdumps are only + // generated if the PC or a word on the captured stack point into + // this range, or |suppress_microdump_based_on_interest_range| is + // false. + bool suppress_microdump_based_on_interest_range; + uintptr_t interest_range_start; + uintptr_t interest_range_end; + MicrodumpExtraInfo() : build_fingerprint(NULL), product_info(NULL), gpu_fingerprint(NULL), - process_type(NULL) {} + process_type(NULL), + suppress_microdump_based_on_interest_range(false), + interest_range_start(0), + interest_range_end(0) {} }; } -- cgit v1.2.1