X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=src%2Fplugins%2Fctf%2Fcommon%2Fmetadata%2Fctf-meta-warn-meaningless-header-fields.c;h=9a9d765a7f51c6d8f0bc52828afb78f7064a184f;hb=fa9a95aa2f95fc34f5a07c3a44129494e30405a0;hp=73b6fe92c249c9b0705199a178b90c5556e3cc05;hpb=57952005b6a6a0aeb1e4ecb0d7ac0c6786d23dba;p=babeltrace.git diff --git a/src/plugins/ctf/common/metadata/ctf-meta-warn-meaningless-header-fields.c b/src/plugins/ctf/common/metadata/ctf-meta-warn-meaningless-header-fields.c index 73b6fe92..9a9d765a 100644 --- a/src/plugins/ctf/common/metadata/ctf-meta-warn-meaningless-header-fields.c +++ b/src/plugins/ctf/common/metadata/ctf-meta-warn-meaningless-header-fields.c @@ -12,11 +12,13 @@ * all copies or substantial portions of the Software. */ -#define BT_LOG_TAG "PLUGIN-CTF-METADATA-META-WARN-MEANINGLESS-HEADER-FIELDS" -#include "logging.h" +#define BT_COMP_LOG_SELF_COMP (log_cfg->self_comp) +#define BT_LOG_OUTPUT_LEVEL (log_cfg->log_level) +#define BT_LOG_TAG "PLUGIN/CTF/META/WARN-MEANINGLESS-HEADER-FIELDS" +#include "logging/comp-logging.h" #include -#include "common/babeltrace.h" +#include "common/macros.h" #include "common/assert.h" #include #include @@ -24,17 +26,20 @@ #include #include "ctf-meta-visitors.h" +#include "logging.h" static inline -void warn_meaningless_field(const char *name, const char *scope_name) +void warn_meaningless_field(const char *name, const char *scope_name, + struct meta_log_config *log_cfg) { - BT_LOGW("User field found in %s: ignoring: name=\"%s\"", + BT_ASSERT(name); + BT_COMP_LOGW("User field found in %s: ignoring: name=\"%s\"", scope_name, name); } static inline void warn_meaningless_fields(struct ctf_field_class *fc, const char *name, - const char *scope_name) + const char *scope_name, struct meta_log_config *log_cfg) { uint64_t i; @@ -42,10 +47,15 @@ void warn_meaningless_fields(struct ctf_field_class *fc, const char *name, goto end; } + /* + * 'name' is guaranteed to be non-NULL whenever the field class is not a + * structure. In the case of a structure field class, its members' names + * are used. + */ switch (fc->type) { case CTF_FIELD_CLASS_TYPE_FLOAT: case CTF_FIELD_CLASS_TYPE_STRING: - warn_meaningless_field(name, scope_name); + warn_meaningless_field(name, scope_name, log_cfg); break; case CTF_FIELD_CLASS_TYPE_INT: case CTF_FIELD_CLASS_TYPE_ENUM: @@ -54,7 +64,7 @@ void warn_meaningless_fields(struct ctf_field_class *fc, const char *name, if (int_fc->meaning == CTF_FIELD_CLASS_MEANING_NONE && !int_fc->mapped_clock_class) { - warn_meaningless_field(name, scope_name); + warn_meaningless_field(name, scope_name, log_cfg); } break; @@ -69,7 +79,7 @@ void warn_meaningless_fields(struct ctf_field_class *fc, const char *name, struct_fc, i); warn_meaningless_fields(named_fc->fc, - named_fc->name->str, scope_name); + named_fc->name->str, scope_name, log_cfg); } break; @@ -84,7 +94,7 @@ void warn_meaningless_fields(struct ctf_field_class *fc, const char *name, var_fc, i); warn_meaningless_fields(named_fc->fc, - named_fc->name->str, scope_name); + named_fc->name->str, scope_name, log_cfg); } break; @@ -103,7 +113,8 @@ void warn_meaningless_fields(struct ctf_field_class *fc, const char *name, { struct ctf_field_class_array_base *array_fc = (void *) fc; - warn_meaningless_fields(array_fc->elem_fc, name, scope_name); + warn_meaningless_fields(array_fc->elem_fc, name, scope_name, + log_cfg); break; } default: @@ -116,13 +127,15 @@ end: BT_HIDDEN void ctf_trace_class_warn_meaningless_header_fields( - struct ctf_trace_class *ctf_tc) + struct ctf_trace_class *ctf_tc, + struct meta_log_config *log_cfg) { uint64_t i; if (!ctf_tc->is_translated) { warn_meaningless_fields( - ctf_tc->packet_header_fc, NULL, "packet header"); + ctf_tc->packet_header_fc, NULL, "packet header", + log_cfg); } for (i = 0; i < ctf_tc->stream_classes->len; i++) { @@ -130,7 +143,7 @@ void ctf_trace_class_warn_meaningless_header_fields( if (!sc->is_translated) { warn_meaningless_fields(sc->event_header_fc, NULL, - "event header"); + "event header", log_cfg); } } }