int parse_event(struct evlist *evlist, constchar *str);
int parse_filter(conststruct option *opt, constchar *str, int unset); int parse_uid_filter(struct evlist *evlist, uid_t uid); int exclude_perf(conststruct option *opt, constchar *arg, int unset);
struct parse_events_term { /** @list: The term list the term is a part of. */ struct list_head list; /** *@config:Theleft-handsideofatermassignment,sotheterm *"event=8"wouldhavetheconfigbe"event"
*/ constchar *config; /** *@val:Theright-handsideofatermassignmentthatcaneitherbea *stringoranumberdependingontype_val.
*/ union { char *str;
u64 num;
} val; /** @type_val: The union variable in val to be used for the term. */ enum parse_events__term_val_type type_val; /** *@type_term:ApredefinedtermtypeorPARSE_EVENTS__TERM_TYPE_USER *whennotinbuilt.
*/ enum parse_events__term_type type_term; /** *@err_term:Thecolumnindexofthetermfromparsing,usedduring *erroroutput.
*/ int err_term; /** *@err_val:Thecolumnindexofthevalfromparsing,usedduringerror *output.
*/ int err_val; /** @used: Was the term used during parameterized-eval. */ bool used; /** *@weak:Atermfromthesysfsorjsonencodingofaneventthat *shouldn'toverridetermscomingfromthecommandline.
*/ bool weak; /** *@no_value:Istherenovalue.Ifanumerictermhasnovaluethenthe *valueisassumedtobe1.Aneventnamealsohasnovalue.
*/ bool no_value; /** *@alternate_hw_config:configistheeventnamebutnumisan *alternatePERF_TYPE_HARDWAREconfigvaluewhichisoftenniceforthe *sakeofquickmatching.
*/ bool alternate_hw_config;
};
struct parse_events_error { /** @list: The head of a list of errors. */ struct list_head list;
};
/* A wrapper around a list of terms for the sake of better type safety. */ struct parse_events_terms { struct list_head terms;
};
struct parse_events_state { /* The list parsed events are placed on. */ struct list_head list; /* The updated index used by entries as they are added. */ int idx; /* Error information. */ struct parse_events_error *error; /* Holds returned terms for term parsing. */ struct parse_events_terms *terms; /* Start token. */ int stoken; /* Use the fake PMU marker for testing. */ bool fake_pmu; /* Skip actual tracepoint processing for testing. */ bool fake_tp; /* If non-null, when wildcard matching only match the given PMU. */ constchar *pmu_filter; /* Should PE_LEGACY_NAME tokens be generated for config terms? */ bool match_legacy_cache_terms; /* Were multiple PMUs scanned to find events? */ bool wild_card_pmus;
};
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.