newblock callback function takes size os pointer now (INOUT)
authorGengbin Zheng <gzheng@illinois.edu>
Fri, 7 Oct 2011 21:05:09 +0000 (14:05 -0700)
committerGengbin Zheng <gzheng@illinois.edu>
Fri, 7 Oct 2011 21:05:09 +0000 (14:05 -0700)
src/arch/gemini_gni/machine.c
src/arch/util/mempool.c
src/arch/util/mempool.h

index 3842aa30e8928e705c3fa1760418e42008db58c3..e39ef3de839f370f65eeff370bc23e36eae8a679 100644 (file)
@@ -1653,10 +1653,10 @@ static void _init_DMA_buffer()
     allgather(&DMA_buffer_base_mdh_addr, DMA_buffer_base_mdh_addr_vec, sizeof(mdh_addr_t) );
 }
 
-void *alloc_mempool_block(int size, gni_mem_handle_t *mem_hndl)
+void *alloc_mempool_block(int *size, gni_mem_handle_t *mem_hndl)
 {
-    void *pool = memalign(ALIGNBUF, size);
-    gni_return_t status = MEMORY_REGISTER(onesided_hnd, nic_hndl, pool, size,  mem_hndl, &omdh);
+    void *pool = memalign(ALIGNBUF, *size);
+    gni_return_t status = MEMORY_REGISTER(onesided_hnd, nic_hndl, pool, *size,  mem_hndl, &omdh);
     GNI_RC_CHECK("Mempool register", status);
     return pool;
 }
index 051c3fb68ede4f3114179e8e4c26548e9a9edafc..722671f9fd303102173b0d1db7dce312ba300aaf 100644 (file)
@@ -125,7 +125,7 @@ void*  mempool_malloc(mempool_type *mptr, int size, int expand)
         if (!expand) return NULL;
 
         expand_size = expand_mem>size ? expand_mem:2*size; 
-        pool = mptr->newblockfn(expand_size, &mem_hndl);
+        pool = mptr->newblockfn(&expand_size, &mem_hndl);
         expand_pool = (mempool_block*)pool;
         expand_pool->mempool_ptr = pool;
         expand_pool->mem_hndl = mem_hndl;
index 13471acf3163156803ff872a5a52338acd0703c9..7f42f373cda7f9e90e39aee9dcc4067acf4ee98a 100644 (file)
@@ -30,7 +30,7 @@ typedef struct mempool_header
   size_t            next_free;
 } mempool_header;
 
-typedef void * (* mempool_newblockfn)(int size, gni_mem_handle_t *mem_hndl);
+typedef void * (* mempool_newblockfn)(int *size, gni_mem_handle_t *mem_hndl);
 typedef void (* mempool_freeblock)(void *ptr, gni_mem_handle_t mem_hndl);
 
 // only at beginning of first block of mempool