1 2syntax = "proto2"; 3 4import "perf_data.proto"; 5 6option java_package = "com.google.android.perfprofd"; 7 8package quipper; 9 10// Symbol info for a shared library without build id. 11message SymbolInfo { 12 // A symbol, stretching the given range of the library. 13 message Symbol { 14 optional string name = 1; 15 optional uint64 name_md5_prefix = 2; 16 17 optional uint64 addr = 3; 18 optional uint64 size = 4; 19 }; 20 21 optional string filename = 1; 22 optional uint64 filename_md5_prefix = 2; 23 24 optional uint64 min_vaddr = 3; 25 26 repeated Symbol symbols = 4; 27}; 28 29extend PerfDataProto { 30 optional int64 id = 32; 31 32 // Extra symbol info. 33 repeated SymbolInfo symbol_info = 33; 34 35 // Stats inherited from old perf_profile.proto. 36 37 // is device screen on at point when profile is collected? 38 optional bool display_on = 34; 39 40 // system load at point when profile is collected; corresponds 41 // to first value from /proc/loadavg multiplied by 100 then 42 // converted to int32 43 optional int32 sys_load_average = 35; 44 45 // At the point when the profile was collected, was a camera active? 46 optional bool camera_active = 36; 47 48 // At the point when the profile was collected, was the device still booting? 49 optional bool booting = 37; 50 51 // At the point when the profile was collected, was the device plugged into 52 // a charger? 53 optional bool on_charger = 38; 54 55 // CPU utilization measured prior to profile collection (expressed as 56 // 100 minus the idle percentage). 57 optional int32 cpu_utilization = 39; 58}; 59