Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/c/generic/stats.c

    r311bc25 r8eec3c8  
    3636#include <stats.h>
    3737#include <sysinfo.h>
     38#include <assert.h>
    3839#include <errno.h>
    3940#include <stdio.h>
    4041#include <inttypes.h>
    41 #include <malloc.h>
    4242
    4343#define SYSINFO_STATS_MAX_PATH  64
     
    7171            (stats_cpu_t *) sysinfo_get_data("system.cpus", &size);
    7272       
    73         if ((size % sizeof(stats_cpu_t)) != 0) {
    74                 if (stats_cpus != NULL)
    75                         free(stats_cpus);
    76                 *count = 0;
    77                 return NULL;
    78         }
     73        assert((size % sizeof(stats_cpu_t)) == 0);
    7974       
    8075        *count = size / sizeof(stats_cpu_t);
     
    9691            (stats_physmem_t *) sysinfo_get_data("system.physmem", &size);
    9792       
    98         if (size != sizeof(stats_physmem_t)) {
    99                 if (stats_physmem != NULL)
    100                         free(stats_physmem);
    101                 return NULL;
    102         }
     93        assert((size == sizeof(stats_physmem_t)) || (size == 0));
    10394       
    10495        return stats_physmem;
     
    120111            (stats_task_t *) sysinfo_get_data("system.tasks", &size);
    121112       
    122         if ((size % sizeof(stats_task_t)) != 0) {
    123                 if (stats_tasks != NULL)
    124                         free(stats_tasks);
    125                 *count = 0;
    126                 return NULL;
    127         }
     113        assert((size % sizeof(stats_task_t)) == 0);
    128114       
    129115        *count = size / sizeof(stats_task_t);
     
    149135            (stats_task_t *) sysinfo_get_data(name, &size);
    150136       
    151         if (size != sizeof(stats_task_t)) {
    152                 if (stats_task != NULL)
    153                         free(stats_task);
    154                 return NULL;
    155         }
     137        assert((size == sizeof(stats_task_t)) || (size == 0));
    156138       
    157139        return stats_task;
     
    173155            (stats_thread_t *) sysinfo_get_data("system.threads", &size);
    174156       
    175         if ((size % sizeof(stats_thread_t)) != 0) {
    176                 if (stats_threads != NULL)
    177                         free(stats_threads);
    178                 *count = 0;
    179                 return NULL;
    180         }
     157        assert((size % sizeof(stats_thread_t)) == 0);
    181158       
    182159        *count = size / sizeof(stats_thread_t);
     
    202179            (stats_thread_t *) sysinfo_get_data(name, &size);
    203180       
    204         if (size != sizeof(stats_thread_t)) {
    205                 if (stats_thread != NULL)
    206                         free(stats_thread);
    207                 return NULL;
    208         }
     181        assert((size == sizeof(stats_thread_t)) || (size == 0));
    209182       
    210183        return stats_thread;
     
    226199            (stats_exc_t *) sysinfo_get_data("system.exceptions", &size);
    227200       
    228         if ((size % sizeof(stats_exc_t)) != 0) {
    229                 if (stats_exceptions != NULL)
    230                         free(stats_exceptions);
    231                 *count = 0;
    232                 return NULL;
    233         }
     201        assert((size % sizeof(stats_exc_t)) == 0);
    234202       
    235203        *count = size / sizeof(stats_exc_t);
     
    249217{
    250218        char name[SYSINFO_STATS_MAX_PATH];
    251         snprintf(name, SYSINFO_STATS_MAX_PATH, "system.exceptions.%u", excn);
     219        snprintf(name, SYSINFO_STATS_MAX_PATH, "system.exceptionss.%u", excn);
    252220       
    253221        size_t size = 0;
     
    255223            (stats_exc_t *) sysinfo_get_data(name, &size);
    256224       
    257         if (size != sizeof(stats_exc_t)) {
    258                 if (stats_exception != NULL)
    259                         free(stats_exception);
    260                 return NULL;
    261         }
     225        assert((size == sizeof(stats_exc_t)) || (size == 0));
    262226       
    263227        return stats_exception;
     
    279243            (load_t *) sysinfo_get_data("system.load", &size);
    280244       
    281         if ((size % sizeof(load_t)) != 0) {
    282                 if (load != NULL)
    283                         free(load);
    284                 *count = 0;
    285                 return NULL;
    286         }
     245        assert((size % sizeof(load_t)) == 0);
    287246       
    288247        *count = size / sizeof(load_t);
Note: See TracChangeset for help on using the changeset viewer.