Diff for /libelwix/src/mem.c between versions 1.10 and 1.10.8.2

version 1.10, 2024/08/14 16:05:42 version 1.10.8.2, 2024/10/27 10:08:02
Line 91  mpool_init(u_long maxmem) Line 91  mpool_init(u_long maxmem)
 void  void
 mpool_destroy(mpool_t ** __restrict mp)  mpool_destroy(mpool_t ** __restrict mp)
 {  {
        struct tagAlloc *m;        struct tagAlloc *m, *n;
         register int i;          register int i;
   
         if (!mp || !*mp)          if (!mp || !*mp)
Line 100  mpool_destroy(mpool_t ** __restrict mp) Line 100  mpool_destroy(mpool_t ** __restrict mp)
         mpool_lock(*mp);          mpool_lock(*mp);
   
         for (i = 0; i < MEM_BUCKETS; i++) {          for (i = 0; i < MEM_BUCKETS; i++) {
                while ((m = TAILQ_FIRST(&(*mp)->pool_active[i]))) {                for (m = TAILQ_FIRST(&(*mp)->pool_active[i]); m; m = n) {
                        TAILQ_REMOVE(&(*mp)->pool_active[i], m, alloc_node);                        n = TAILQ_NEXT(m, alloc_node);
                         if (m->alloc_mem)                          if (m->alloc_mem)
                                 free(m->alloc_mem);                                  free(m->alloc_mem);
                         free(m);                          free(m);
                 }                  }
                while ((m = TAILQ_FIRST(&(*mp)->pool_inactive[i]))) {                for (m = TAILQ_FIRST(&(*mp)->pool_inactive[i]); m; m = n) {
                        TAILQ_REMOVE(&(*mp)->pool_inactive[i], m, alloc_node);                        n = TAILQ_NEXT(m, alloc_node);
                         if (m->alloc_mem)                          if (m->alloc_mem)
                                 free(m->alloc_mem);                                  free(m->alloc_mem);
                         free(m);                          free(m);
Line 318  mpool_realloc(mpool_t * __restrict mp, void * __restri Line 318  mpool_realloc(mpool_t * __restrict mp, void * __restri
   
                 memcpy(p, data, MIN(osize, newsize));                  memcpy(p, data, MIN(osize, newsize));
                 mpool_free(mp, data, 0);                  mpool_free(mp, data, 0);
                 data = p;  
         } else {          } else {
                 p = data;                  p = data;
   

Removed from v.1.10  
changed lines
  Added in v.1.10.8.2


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>