vppinfra: remove the historical mheap memory allocator
[vpp.git] / src / svm / svm.c
index 681ac4a..c702625 100644 (file)
@@ -61,6 +61,10 @@ svm_get_root_rp (void)
 u64
 svm_get_global_region_base_va ()
 {
+#ifdef CLIB_SANITIZE_ADDR
+  return 0x200000000000;
+#endif
+
 #if __aarch64__
   /* On AArch64 VA space can have different size, from 36 to 48 bits.
      Here we are trying to detect VA bits by parsing /proc/self/maps
@@ -236,16 +240,6 @@ format_svm_region (u8 * s, va_list * args)
                }
            }
        }
-#if USE_DLMALLOC == 0
-      s = format (s, "  rgn heap stats: %U", format_mheap,
-                 rp->region_heap, 0);
-      if ((rp->flags & SVM_FLAGS_MHEAP) && rp->data_heap)
-       {
-         s = format (s, "\n  data heap stats: %U", format_mheap,
-                     rp->data_heap, 1);
-       }
-      s = format (s, "\n");
-#endif
     }
 
   return (s);
@@ -341,18 +335,9 @@ svm_data_region_create (svm_map_region_args_t * a, svm_region_t * rp)
 
   if (a->flags & SVM_FLAGS_MHEAP)
     {
-#if USE_DLMALLOC == 0
-      mheap_t *heap_header;
-      rp->data_heap =
-       mheap_alloc_with_flags ((void *) (rp->data_base), map_size,
-                               MHEAP_FLAG_DISABLE_VM);
-      heap_header = mheap_header (rp->data_heap);
-      heap_header->flags |= MHEAP_FLAG_THREAD_SAFE;
-#else
       rp->data_heap = create_mspace_with_base (rp->data_base,
                                               map_size, 1 /* locked */ );
       mspace_disable_expand (rp->data_heap);
-#endif
 
       rp->flags |= SVM_FLAGS_MHEAP;
     }
@@ -436,10 +421,7 @@ svm_data_region_map (svm_map_region_args_t * a, svm_region_t * rp)
 u8 *
 shm_name_from_svm_map_region_args (svm_map_region_args_t * a)
 {
-  u8 *path;
   u8 *shm_name;
-  u8 *split_point;
-  u8 *mkdir_arg = 0;
   int root_path_offset = 0;
   int name_offset = 0;
 
@@ -449,29 +431,6 @@ shm_name_from_svm_map_region_args (svm_map_region_args_t * a)
       if (a->root_path[0] == '/')
        root_path_offset++;
 
-      /* create the root_path under /dev/shm
-         iterate through path creating directories */
-
-      path = format (0, "/dev/shm/%s%c", &a->root_path[root_path_offset], 0);
-      split_point = path + 1;
-      vec_add1 (mkdir_arg, '-');
-
-      while (*split_point)
-       {
-         while (*split_point && *split_point != '/')
-           {
-             vec_add1 (mkdir_arg, *split_point);
-             split_point++;
-           }
-         vec_add1 (mkdir_arg, 0);
-
-         /* ready to descend another level */
-         mkdir_arg[vec_len (mkdir_arg) - 1] = '-';
-         split_point++;
-       }
-      vec_free (mkdir_arg);
-      vec_free (path);
-
       if (a->name[0] == '/')
        name_offset = 1;
 
@@ -495,7 +454,7 @@ svm_region_init_mapped_region (svm_map_region_args_t * a, svm_region_t * rp)
   ASSERT (rp);
   int rv;
 
-  memset (rp, 0, sizeof (*rp));
+  clib_memset (rp, 0, sizeof (*rp));
 
   if (pthread_mutexattr_init (&attr))
     clib_unix_warning ("mutexattr_init");
@@ -526,21 +485,12 @@ svm_region_init_mapped_region (svm_map_region_args_t * a, svm_region_t * rp)
   rp->virtual_base = a->baseva;
   rp->virtual_size = a->size;
 
-#if USE_DLMALLOC == 0
-  rp->region_heap =
-    mheap_alloc_with_flags (uword_to_pointer
-                           (a->baseva + MMAP_PAGESIZE, void *),
-                           (a->pvt_heap_size !=
-                            0) ? a->pvt_heap_size : SVM_PVT_MHEAP_SIZE,
-                           MHEAP_FLAG_DISABLE_VM);
-#else
   rp->region_heap = create_mspace_with_base
     (uword_to_pointer (a->baseva + MMAP_PAGESIZE, void *),
      (a->pvt_heap_size !=
       0) ? a->pvt_heap_size : SVM_PVT_MHEAP_SIZE, 1 /* locked */ );
 
   mspace_disable_expand (rp->region_heap);
-#endif
 
   oldheap = svm_push_pvt_heap (rp);
 
@@ -866,7 +816,7 @@ svm_region_init (void)
 {
   svm_map_region_args_t _a, *a = &_a;
 
-  memset (a, 0, sizeof (*a));
+  clib_memset (a, 0, sizeof (*a));
   a->root_path = 0;
   a->name = SVM_GLOBAL_REGION_NAME;
   a->baseva = svm_get_global_region_base_va ();
@@ -883,7 +833,7 @@ svm_region_init_chroot (const char *root_path)
 {
   svm_map_region_args_t _a, *a = &_a;
 
-  memset (a, 0, sizeof (*a));
+  clib_memset (a, 0, sizeof (*a));
   a->root_path = root_path;
   a->name = SVM_GLOBAL_REGION_NAME;
   a->baseva = svm_get_global_region_base_va ();
@@ -900,7 +850,7 @@ svm_region_init_chroot_uid_gid (const char *root_path, int uid, int gid)
 {
   svm_map_region_args_t _a, *a = &_a;
 
-  memset (a, 0, sizeof (*a));
+  clib_memset (a, 0, sizeof (*a));
   a->root_path = root_path;
   a->name = SVM_GLOBAL_REGION_NAME;
   a->baseva = svm_get_global_region_base_va ();