xref: /aosp_15_r20/external/perfetto/protos/perfetto/trace/ftrace/generic.proto (revision 6dbdd20afdafa5e3ca9b8809fa73465d530080dc)
1*6dbdd20aSAndroid Build Coastguard Worker/*
2*6dbdd20aSAndroid Build Coastguard Worker * Copyright (C) 2018 The Android Open Source Project
3*6dbdd20aSAndroid Build Coastguard Worker *
4*6dbdd20aSAndroid Build Coastguard Worker * Licensed under the Apache License, Version 2.0 (the "License");
5*6dbdd20aSAndroid Build Coastguard Worker * you may not use this file except in compliance with the License.
6*6dbdd20aSAndroid Build Coastguard Worker * You may obtain a copy of the License at
7*6dbdd20aSAndroid Build Coastguard Worker *
8*6dbdd20aSAndroid Build Coastguard Worker *      http://www.apache.org/licenses/LICENSE-2.0
9*6dbdd20aSAndroid Build Coastguard Worker *
10*6dbdd20aSAndroid Build Coastguard Worker * Unless required by applicable law or agreed to in writing, software
11*6dbdd20aSAndroid Build Coastguard Worker * distributed under the License is distributed on an "AS IS" BASIS,
12*6dbdd20aSAndroid Build Coastguard Worker * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13*6dbdd20aSAndroid Build Coastguard Worker * See the License for the specific language governing permissions and
14*6dbdd20aSAndroid Build Coastguard Worker * limitations under the License.
15*6dbdd20aSAndroid Build Coastguard Worker */
16*6dbdd20aSAndroid Build Coastguard Worker
17*6dbdd20aSAndroid Build Coastguard Workersyntax = "proto2";
18*6dbdd20aSAndroid Build Coastguard Worker
19*6dbdd20aSAndroid Build Coastguard Workerpackage perfetto.protos;
20*6dbdd20aSAndroid Build Coastguard Worker
21*6dbdd20aSAndroid Build Coastguard Worker// This generic proto is used to output events in the trace
22*6dbdd20aSAndroid Build Coastguard Worker// when a specific proto for that event does not exist.
23*6dbdd20aSAndroid Build Coastguard Workermessage GenericFtraceEvent {
24*6dbdd20aSAndroid Build Coastguard Worker  message Field {
25*6dbdd20aSAndroid Build Coastguard Worker    optional string name = 1;
26*6dbdd20aSAndroid Build Coastguard Worker    oneof value {
27*6dbdd20aSAndroid Build Coastguard Worker      string str_value = 3;
28*6dbdd20aSAndroid Build Coastguard Worker      int64 int_value = 4;
29*6dbdd20aSAndroid Build Coastguard Worker      uint64 uint_value = 5;
30*6dbdd20aSAndroid Build Coastguard Worker    }
31*6dbdd20aSAndroid Build Coastguard Worker  }
32*6dbdd20aSAndroid Build Coastguard Worker
33*6dbdd20aSAndroid Build Coastguard Worker  optional string event_name = 1;
34*6dbdd20aSAndroid Build Coastguard Worker  repeated Field field = 2;
35*6dbdd20aSAndroid Build Coastguard Worker}
36*6dbdd20aSAndroid Build Coastguard Worker
37*6dbdd20aSAndroid Build Coastguard Workermessage KprobeEvent {
38*6dbdd20aSAndroid Build Coastguard Worker  enum KprobeType {
39*6dbdd20aSAndroid Build Coastguard Worker    KPROBE_TYPE_UNKNOWN = 0;
40*6dbdd20aSAndroid Build Coastguard Worker    KPROBE_TYPE_BEGIN = 1;
41*6dbdd20aSAndroid Build Coastguard Worker    KPROBE_TYPE_END = 2;
42*6dbdd20aSAndroid Build Coastguard Worker    KPROBE_TYPE_INSTANT = 3;
43*6dbdd20aSAndroid Build Coastguard Worker  }
44*6dbdd20aSAndroid Build Coastguard Worker  optional string name = 1;
45*6dbdd20aSAndroid Build Coastguard Worker  optional KprobeType type = 2;
46*6dbdd20aSAndroid Build Coastguard Worker}
47