add realloc seq
[protos/libecoli.git] / lib / main.c
index 6482991..2a08cdd 100644 (file)
@@ -1,28 +1,5 @@
-/*
- * Copyright (c) 2016, Olivier MATZ <zer0@droids-corp.org>
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- *
- *     * Redistributions of source code must retain the above copyright
- *       notice, this list of conditions and the following disclaimer.
- *     * Redistributions in binary form must reproduce the above copyright
- *       notice, this list of conditions and the following disclaimer in the
- *       documentation and/or other materials provided with the distribution.
- *     * Neither the name of the University of California, Berkeley nor the
- *       names of its contributors may be used to endorse or promote products
- *       derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright 2016, Olivier MATZ <zer0@droids-corp.org>
  */
 
 #include <stdlib.h>
@@ -38,6 +15,7 @@
 #include <ecoli_test.h>
 #include <ecoli_malloc.h>
 
+/* LCOV_EXCL_START */
 EC_LOG_TYPE_REGISTER(main);
 
 #define COUNT_OF(x) ((sizeof(x)/sizeof(0[x])) / \
@@ -175,6 +153,8 @@ struct debug_alloc_ftr {
        unsigned int cookie;
 } __attribute__((packed));
 
+static int malloc_seq;
+
 static void *debug_malloc(size_t size, const char *file, unsigned int line)
 {
        struct debug_alloc_hdr *hdr;
@@ -182,7 +162,6 @@ static void *debug_malloc(size_t size, const char *file, unsigned int line)
        size_t new_size = size + sizeof(*hdr) + sizeof(*ftr);
        void *ret;
        int r = random();
-       static int seq;
 
        if (alloc_fail_proba != 0 && (r % 100) < alloc_fail_proba)
                hdr = NULL;
@@ -205,9 +184,7 @@ static void *debug_malloc(size_t size, const char *file, unsigned int line)
        }
 
        EC_LOG(EC_LOG_DEBUG, "%s:%d: info: malloc(%zd) -> %p seq=%d\n",
-               file, line, size, ret, seq++);
-       if (seq == 100)
-               printf("here\n");
+               file, line, size, ret, malloc_seq++);
 
        if (ret)
                alloc_success++;
@@ -320,8 +297,8 @@ static void *debug_realloc(void *ptr, size_t size, const char *file,
                ftr->cookie = 0x87654321;
        }
 
-       EC_LOG(EC_LOG_DEBUG, "%s:%d: info: realloc(%p, %zd) -> %p\n",
-               file, line, ptr, size, ret);
+       EC_LOG(EC_LOG_DEBUG, "%s:%d: info: realloc(%p, %zd) -> %p seq=%d\n",
+               file, line, ptr, size, ret, malloc_seq++);
 
        if (ret)
                alloc_success++;
@@ -424,3 +401,4 @@ int main(int argc, char **argv)
 
        return 0;
 }
+/* LCOV_EXCL_STOP */