X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fintel_pmu.c;h=fd2bd6f3c12498b02e183cbd50938f334ae5f545;hb=936d749328d399463f2bbb5ec3d07cd3a271a7c7;hp=351f81b0bf14dacd8cb3da55fe6f37b92b111b19;hpb=96048f2f996979bbe186f603513730edcf594f34;p=collectd.git diff --git a/src/intel_pmu.c b/src/intel_pmu.c index 351f81b0..fd2bd6f3 100644 --- a/src/intel_pmu.c +++ b/src/intel_pmu.c @@ -289,18 +289,20 @@ meta_data_t *pmu_meta_data_create(const struct efd *efd) { meta_data_t *meta = NULL; /* create meta data only if value was scaled */ - if (efd->val[1] != efd->val[2] && efd->val[2]) { - meta = meta_data_create(); - if (meta == NULL) { - ERROR(PMU_PLUGIN ": meta_data_create failed."); - return NULL; - } + if (efd->val[1] == efd->val[2] || !efd->val[2]) { + return NULL; + } - meta_data_add_unsigned_int(meta, "intel_pmu:raw_count", efd->val[0]); - meta_data_add_unsigned_int(meta, "intel_pmu:time_enabled", efd->val[1]); - meta_data_add_unsigned_int(meta, "intel_pmu:time_running", efd->val[2]); + meta = meta_data_create(); + if (meta == NULL) { + ERROR(PMU_PLUGIN ": meta_data_create failed."); + return NULL; } + meta_data_add_unsigned_int(meta, "intel_pmu:raw_count", efd->val[0]); + meta_data_add_unsigned_int(meta, "intel_pmu:time_enabled", efd->val[1]); + meta_data_add_unsigned_int(meta, "intel_pmu:time_running", efd->val[2]); + return meta; } @@ -332,10 +334,7 @@ static void pmu_dispatch_data(void) { /* dispatch per CPU value */ pmu_submit_counter(i, e->event, value, meta); - if (meta) { - meta_data_destroy(meta); - meta = NULL; - } + meta_data_destroy(meta); } if (event_enabled > 0) {